DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Plugin Devin — DeepSeek Harness 插件(DSH Plugin)
← Plugins

@quonaro/dsh-plugin-devin

Plugin Devin

DeepSeek Harness 中的 Devin CLI:一个 `devin` 委派工具、一个 /devin 命令,以及一个 `devin` LLM provider 路由——全部通过 ctx.subprocess 接口实现。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add @quonaro/dsh-plugin-devin@0.1.4
README兼容性版本

兼容性与来源证明

Plugin Devin 以 @quonaro/dsh-plugin-devin 发布,当前版本为 0.1.4。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/10/7

版本

0.1.4stable
2026/10/7
0.1.1stable
2026/10/6
0.1.0
stable
2026/10/6

相关插件

正在加载相关插件…

最新版
0.1.4
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
75.9 kB
文件数
9
Surface
any
许可证
MIT
发布源
npm
GitHub
★ 0
周下载
0
最近提交
2026/10/7
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

README

dsh-plugin-devin

Unofficial bridge between the Devin CLI and DeepSeek Harness: a devin delegation tool plus a /devin command running devin -p (headless print mode), and a devin LLM provider route with automatic model discovery — all over the ctx.subprocess seam. Not affiliated with Cognition.

What the agent gets

  • devin tool — spawns devin -p "<prompt>" as a managed child process. Per-call cwd, model, permissionMode, resume, cloud, and timeoutMs. Returns { ok, exitCode, stdout, stderr, timedOut, truncated }.
  • /devin <task> — slash command shortcut (when the profile composes the commands service).

Cancelling the tool call aborts the child via the subprocess seam's terminate escalation (SIGTERM → grace → SIGKILL on the process tree); output capture is bounded and keeps the tail on overflow.

Prerequisites

  • devin CLI on PATH (or set devinPath to an absolute path)
  • devin auth login completed, or WINDSURF_API_KEY exported (forwarded to the child via forwardEnv)

Install

# from npm
dsh plugin --profile <your-profile> add @quonaro/dsh-plugin-devin

# or straight from a git host
dsh plugin --profile <your-profile> add github:quonaro/dsh-plugin-devin

# or from a local checkout
dsh plugin --profile <your-profile> add /path/to/dsh-plugin-devin

The package declares dsh.bundle, so dsh plugin add applies cordis.patch.yml to the profile automatically. On pnpm ≥ 10 the first git install refuses the prepare build — copy the package key pnpm prints into the profile's pnpm-workspace.yaml allowBuilds: and re-run.

Configuration

Edit the dsh-plugin-devin row in the profile's cordis.patch.yml, or the derived settings namespace in the GUI. All fields are volatile — changes apply to the next call without a restart.

KeyDefaultNotes
devinPathdevinExecutable name or absolute path
permissionModeaccept-editsHeadless runs can't answer prompts; bypass/autonomous for fully unattended work
model''Devin model; empty = CLI/account default
cloudfalsetrue → devin --cloud (Devin Cloud sessions)
timeoutMs600000Cooperative per-call timeout
maxOutputBytes1048576In-memory cap per captured stream; tail kept on overflow
respectWorkspaceTrustfalsefalse → passes --respect-workspace-trust false (required for -p in untrusted dirs)
forwardEnvPATH/HOME/USER/XDG_*/WINDSURF_API_KEYEnv var names forwarded to the child on top of the scrubbed base
extraArgs[]Extra flags appended verbatim, e.g. ['--sandbox']

Develop

pnpm install
pnpm test        # typecheck + tsdown build + smoke test (uses a fake devin binary)

Notes

  • The plugin hard-injects tools and subprocess — profiles must compose a subprocess provider (all shipped base profiles do; sdk-minimal does not).
  • --print mode fails on the workspace-trust prompt in untrusted directories; that's why respectWorkspaceTrust: false is the default. Set it true if you prefer Devin's own trust flow.
  • The provider half keeps persistent ACP sessions (one devin acp process, one session per conversation); the devin tool stays stateless — resume still lets you chain -p calls by session ID.

Provider half (@quonaro/dsh-plugin-devin/provider)

The package also ships an LLM-adapter entry point that registers devin as a provider route — it shows up in Settings → Models and /model, and the whole dsh agent loop can run on it.

Generation rides devin acp (Agent Client Protocol over stdio) through a pooled connection — one process serves many sessions, modelled on acp2api's session manager. A harness conversation (GenerateOptions.sessionId) maps to one persistent ACP session:

  • a fresh session receives the whole transcript (brief + <transcript> + every attached image as a native content block) — the agent holds no history of its own;
  • a reused session receives only the messages it has not seen yet and their images — never a replay, which would duplicate its history;
  • turns on one session are single-flight (a second call queues behind the first), while different conversations run in parallel on the same process;
  • if the process dies, the next call respawns it, recreates the session, and replays the transcript exactly once;
  • compaction and session-title calls get ephemeral sessions so they don't pollute the conversation's own;
  • the idle reaper (sessionIdleMs) forgets expired session indexes and terminates empty processes; ACP v1 cannot delete a session, so the process is the reclaimable unit. All pooled agents die when the plugin unloads.

Attached images go as native image content blocks — SWE and other vision-capable models actually see them. session/update notifications stream back as text and reasoning deltas, and the prompt result carries real token usage. transport: 'print' keeps the old stateless devin -p path (text only — images degrade to [image] placeholders). listModels probes devin acp (initialize + session/new) for the account's real model catalog and falls back to the static models table ({id, devinModel, name}) on failure; the session-title aux call is answered locally when localSessionTitles is on.

The agent advertises devin-browser auth, so authenticate is called during the initialize handshake with WINDSURF_API_KEY from the forwarded env, or the key stored by devin auth login (lazy-retry on an auth-required reply covers servers that demand auth without advertising). permissionMode maps to the ACP session mode via session/set_mode (bypass/autonomous → bypass; normal keeps the account default), the requested model is applied via session/set_config_option per session, and session/request_permission prompts are answered allow-once. cloud and respectWorkspaceTrust only apply to transport: 'print'.

Semantics: Devin is an agent, not a model. Every model call is a complete headless Devin session running its own tool loop — per-response latency is minutes, and harness-side tools are never invoked. The devin tool (main entry) is the right shape for delegation; the provider exists for routing whole conversations through Devin.

Extra configDefaultNotes
cwd''Working dir for spawned sessions; empty = harness cwd
timeoutMs1800000Provider calls get a longer budget than tool calls
transportacpacp = devin acp session/prompt (images, usage, reasoning); print = devin -p text-only
maxImages8Most recent image occurrences attached to one ACP prompt
maxImageBytes5242880Per-image byte cap; larger attachments degrade to [image] placeholders
modelsdefault, opusAdvertised model ids → --model value + display name
brief(English wrapper)Instruction prepended to each flattened transcript
localSessionTitlestrueDon't spend a Devin run on session-title generation
autoDiscoverModelstrueProbe devin acp (initialize + session/new) for the account's real model catalog — the same mechanism ACP clients like Zed use. Falls back to the static models table on failure
discoveryTimeoutMs60000Timeout for one discovery probe
discoveryCacheMs300000Cache a successful probe before re-probing
sessionIdleMs900000Idle lifetime of pooled ACP sessions/processes; an expired session replays on next turn, an empty expired process is terminated. 0 disables reaping

Both halves are independent rows in cordis.patch.yml — remove dsh-plugin-devin-provider to keep only the tool, or dsh-plugin-devin to keep only the provider.

相关插件

继续浏览 developer-tools 分类下经过校验的插件。

Cc Safety Netcc-safety-net编码代理 CLI 钩子——阻止破坏性命令和访问机密文件Remotedsh-remoteDeepSeek Harness 的远程工作助手:连接 SSH(密码/密钥/代理/键盘交互/代理跳转),选择远程工作区,使用 22 个 rw_* 工具操作该工作区(包括 rw_edit/rw_stat/rw_mkdir/rw_remove/rw_move/rw_forward),具备冲突感知的镜像 syFind Plugindsh-find-plugin在代理中查找 DeepSeek Harness 插件——实时搜索 GitHub 上的 dsh-plugin 主题,并按星标数排序。Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)