dsh-plugin
DayuanJiang/next-ai-draw-iodsh 的 draw.io 绘图插件:通过 next-ai-drawio MCP 服务器作图,点回复里的链接在右侧栏打开实时预览,可以手动修改图,AI 的每次修改都是可以恢复的版本。需 Node.js 18+,首次使用由 npx 下载 MCP 服务器。
DeepSeek Harness 中的 AI 协作邮箱,让 AI 工具互发消息、交接任务并查看收发回执。一个包包含 MCP 集成与邮箱界面;0.2.2 需要 DSH 0.2.0-rc.2,需要独立安装 Agent Mail 1.0.0-alpha.7;不提供自动唤醒模型或持续在线状态。
Agent Mail · AI 协作邮箱. One DeepSeek Harness installation mounts an official MCP client and the mailbox UI so tools can send messages, hand off tasks and see delivery or processing receipts. The provider executable, database and credentials remain outside this package. You must connect a separately installed Agent Mail service. Automatic wake and live device presence are not provided here.
Version 0.2.2 is a local unified candidate adapting the mailbox UI to DSH
0.2.0-rc.2.
The exact MCP peer is @deepseek-ai/dsh-mcp-client@0.2.0-rc.2.
Persistent sent receipts and recipient details use the released provider
1.0.0-alpha.7, exposing
comm_sent and comm_agent_details; older providers retain their existing
mail operations but cannot supply those new views. The historical alpha.4
fixture below remains a backward-compatibility gate, not a claim that alpha.4
supports the new APIs.
The web profile shows the mailbox. A headless profile still exposes the MCP tools without loading the browser client. A separate UI installation is no longer required. The optional authenticated connection-management host remains an independently configured provider service.
See unified migration and acceptance.
The DSH service must define:
| Variable | Role |
|---|---|
DSH_AGENT_MAIL_COMMAND | Absolute path to reviewed agent-mail-mcp |
DSH_AGENT_MAIL_HOME | Absolute initialized Agent Mail home |
DSH_AGENT_MAIL_ID | Distinct non-human identity, never human@local |
DSH_AGENT_MAIL_HUB_URL | Optional remote Hub URL |
Initialize a disposable project with agent-mail init --path /absolute/path/to/project
and set DSH_AGENT_MAIL_HOME to the initialized home that command created.
Put every participating identity in that home's roster. Missing command, home,
or identity fails closed. Two live DSH participants need different
serverName values and different DSH_AGENT_MAIL_ID values; they may share a
home only as separate mailboxes, not as one shared agent.
Remote Hub tokens use the provider token_file (agent-mail connect set --hub-url URL --token-file PATH). Do not put a bearer token, certificate, or
provider data directory in this package, a committed patch, or a published
artifact.
A later profile/home patch that replaces this row must repeat the full
config object. The default namespace is agent-mail. Override serverName
when a second instance is installed beside the first.
Install an exact package version or reviewed tarball into a disposable DSH profile first. A source checkout is not release acceptance.
dsh plugin --profile <profile> add -w ./dff652-dsh-agent-mail-0.2.2.tgz
dsh --profile <profile> --dump-config
Remove the bundle without deleting the separately managed provider or its data:
dsh plugin --profile <profile> remove @dff652/dsh-agent-mail
dsh --profile <profile> --dump-config
Keep the prior reviewed tarball and digest before an upgrade so the same commands can restore it if acceptance fails.
From a repository checkout, the package-specific DSH negative activation check
requires a reviewed DSH runtime and fails clearly if dsh is unavailable. The
script is intentionally kept out of the published package. It uses a temporary
DSH home and never starts a provider or touches a live profile:
node tests/dsh-agent-mail-activation.acceptance.mjs
The check covers unset, blank and relative command and home values, and it
refuses human@local as the Harness identity. It is kept outside npm test
because CI environments without DSH must not silently skip real activation
acceptance.
human@local is a human-only identity. This bundle refuses it as the Harness
AGENT_MAIL_ID when the row is activated. A non-human Harness identity cannot
approve or reject a write effect.
Provider documentation says human approval tools are registered only for
human@local. The historical 1.0.0-alpha.4 fixture advertises
comm_approve and comm_reject to every identity; execution rejects
non-human callers with exit code 6. This bundle freezes that discovery
mismatch and tests the execution denial. It does not hide the two tools and
does not run Harness as human@local to make them succeed.
mcp__agent-mail__comm_send
mcp__agent-mail__comm_inbox
mcp__agent-mail__comm_sent
mcp__agent-mail__comm_agent_details
mcp__agent-mail__comm_claim
mcp__agent-mail__comm_ack
mcp__agent-mail__comm_list_agents
mcp__agent-mail__comm_approve
mcp__agent-mail__comm_reject
mcp__agent-mail__comm_approvals
mcp__agent-mail__comm_tail
mcp__agent-mail__comm_events
mcp__agent-mail__comm_diagnose
The first MCP milestone is asynchronous send/inbox/claim/done/ack. Automatic wake, session injection, wake polling bridges, and starting DSH, Codex, Claude, or Grok when mail arrives are a separate native-integration milestone and are not provided here.
The package declares dsh.bundle.patch in package.json and pins the official
MCP client as an exact peer dependency. Deployment-specific command paths,
provider homes, identities, endpoints and credentials stay outside this
package.
The package includes its MIT LICENSE and NOTICE so
those notices travel with every independently distributed tarball.