DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

NinjaSln-labs /

NinjaSln-labs/dsh-subagent-cursor

Verified

DeepSeek Harness 插件:Cursor-as-subagent 提供方——一次本地 @cursor/sdk one-shot 运行、摘要优先结果、可无人值守的 Profile Bundle

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@9ab441fa

dsh-subagent-cursor

English | 简体中文(中文为准,英文翻译可能滞后)

npm version License GitHub stars

DeepSeek Harness 的 Cursor-as-subagent 提供方插件:一次本地 one-shot Cursor 任务执行、摘要优先的结果展示、可无人值守的 Profile Bundle。

  • Subagent 提供方 — 向 ctx.subagents 注册一个提供方(默认名 cursor),每次运行是一次父会话 cwd 下的本地 one-shot Cursor 任务:子代理带完整 agent 工具(读/写文件、跑 shell、取 web 文档等,边界由权限集决定),独立完成一次性任务后返回。
  • 双驱动 — 默认 driver: cli:spawn 本机 cursor-agent -p,复用 CLI 登录态,无需 CURSOR_API_KEY;可选 driver: sdk:走 @cursor/sdk(需要 Key)。
  • 宿主平面 Profile Bundle — 与官方 Claude Code / Codex 提供方同族;对模型可见的工具由独立的 dsh-tool-subagent 行提供并指定本提供方。
  • 摘要优先结果 — 软解析 + summary / 证据呈现,父代理一眼看到结论。

安装

dsh plugin add dsh-subagent-cursor

本插件注册一个 ctx.subagents 提供方(默认名 cursor)。每次运行是一次父会话 cwd 下的本地 one-shot Cursor 任务执行——子代理独立完成一次性任务(读/写文件、shell、网络等,受 Cursor 权限集约束)后返回,不保留可续会话。属于 host 平面的 Profile Bundle,与官方 Claude Code / Codex 提供方同族;对模型可见的工具由独立的 dsh-tool-subagent 行提供并指定本提供方。

最小启用

本插件的 bundle 自带正确的工具行(tool-subagent-cursor:provider: cursor / toolName: subagent_cursor / maxDepth: provider-managed),在 Profile Bundle / 部署配置的 bundles 清单挂上本包即可,无需手写工具行:

# profile package.json → dsh.profile.bundles(或在 plugins 清单挂包)
- package: dsh-subagent-cursor

若要自定义工具名 / 覆盖配置,手写 dsh-tool-subagent 行时必须遵守两个硬契约(违反任一都会挂载即崩):

plugins:
  - package: dsh-subagent-cursor
    config:
      providerName: cursor
      # model: auto                   # 可选;默认 auto(CLI 侧自动选模型)
      # cliPath: cursor-agent        # 可选;默认从 PATH 解析 cursor-agent
      # driver: cli                  # 默认 cli(登录态,无 Key);sdk 需要 CURSOR_API_KEY
  - package: dsh-tool-subagent
    config:
      provider: cursor
      toolName: subagent_cursor
      maxDepth: provider-managed     # 必须!cursor 是 out-of-process provider(depthLimit=false)
                                     # 数字 maxDepth(默认 3)会挂载失败:provider cannot enforce maxDepth
      # 禁止设置 backgroundMode: continuable —— Cursor 运行是一次性 one-shot,不支持 continuable

默认 driver: cli 要求本机已安装并登录 cursor-agent CLI(cursor-agent login),不需要 API Key。driver: sdk 需要 CURSOR_API_KEY(Cursor Dashboard → API Keys)。单测用 fake 驱动,不触网、两者都不依赖。

就绪检测:每次委派前插件自动检查 CLI 是否已安装且已登录(调用 cursor-agent status 解析其输出,不读取你的凭据)。未安装或未登录时返回带修复指引的明确错误,而非黑盒失败:

  • 未安装:找不到 cursor-agent CLI … 安装:curl https://cursor.com/install -fsS | bash(或配置 cliPath)
  • 未登录:cursor-agent 未登录 … 登录:cursor-agent login

权限预生成(autoPermissions: true,默认开):插件挂载时自动确保全局 ~/.cursor/cli-config.json 含一份常用权限集(读文件、git、node/npm、web 文档、项目内写入),配置文件缺失则创建、已有则只追加缺失项(不动你的自定义 allow/deny,写入前自动备份)。敏感面默认 deny(.env、密钥、证书)。关闭:autoPermissions: false。

配置

字段 默认 含义
providerName cursor 注册到 ctx.subagents 上的提供方名
driver cli 执行后端:cli(本机登录态)或 sdk(@cursor/sdk + Key)
model auto 传给驱动的 Cursor 模型 id;auto = CLI 侧自动选模型
env {} 叠加在凭据清洗后的父 env 之上的显式环境;driver: sdk 时在此提供 CURSOR_API_KEY
cliPath cursor-agent CLI 可执行文件路径(driver: cli)
timeoutMs 600000 单次运行硬墙钟上限(ms,driver: cli)
disposeGraceMs 3000 关闭等待的正向宽限(ms)
autoPermissions true 挂载时预生成/补齐 Cursor CLI 权限集(创建或只追加合并,见上)
approvalLevel balanced 命令审批等级:balanced(白名单外弹授权窗,默认)/ trusted(spawn --yolo 自动放行不弹窗)/ strict(硬白名单,不弹不自动放)

为什么用本地 one-shot

每次委派都是父会话 cwd 下的独立 Cursor 任务执行,天然隔离、不污染父上下文——子代理带完整工具(读写文件 / shell / 网络,权限集界定边界),在一次性会话里完成任务后即清理。CLI / SDK 驱动门面均可注入(createRun / createAgent),单测用 fake 驱动,不触网、无需 CURSOR_API_KEY。

开发

npm ci --legacy-peer-deps
npm run build       # tsc → lib/
npm run typecheck   # 严格类型检查
npm test            # vitest:fake SDK 契约覆盖(completed / aborted / error / missing key)

详见 DEVELOPMENT.md 与 CONTRIBUTING.md。

设计

完整设计笔记(模块职责、SDK 契约、错误分类、结果格式)见 docs/DESIGN.md;后续路线图见 docs/ROADMAP.md。

⭐ 支持

如果这个插件对你有帮助,欢迎到 GitHub 仓库 点个 ⭐ Star——它是我持续维护的动力。也欢迎提 issue / PR 一起改进。

License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit 9ab441fa0779

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout