NanmiCoder/dsh-agent-teams
AgentTeams plugin for DeepSeek Harness
이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.
English · 简体中文
一句话,拉起一支真正协作的团队
dsh-agent-teams 让当前 DeepSeek Harness 会话成为队长:创建可续聊的子 Agent、把目标拆成有依赖的任务,并通过直达消息协调成员工作。
你只需用自然语言提出目标。插件会提供团队协议、10 个协作工具、持久化状态、自动共享任务调度和实时 Web UI,不需要额外的 Workflow 引擎。
为什么需要 AgentTeams?
| 能力 | 带来的变化 |
|---|---|
| 队长式委派 | 当前会话负责建队、分配角色并汇总最终结果。 |
| 可续聊成员 | 成员是可持续唤醒的 DSH 子 Agent,可以继续执行聚焦的后续轮次。 |
| 带依赖的任务 | 任务有明确状态;依赖未完成时不能领取。 |
| 自动续领与安全接管 | 成员空闲后自动领取下一项就绪任务;转派会撤销旧 attempt,冷恢复会重试遗留任务,迟到结果无法覆盖。 |
| 成员直达消息 | 成员通过持久化邮箱直接联系队友或队长,不需要队长中转。 |
| 实时活动面板 | Web UI 用分段进度、可折叠成员树和可交互 DAG 展示实时工作;团队结束后仍保留完整成员与任务历史。 |
安装
注意
使用前请确保已安装 DeepSeek Harness。
npm
dsh plugin --profile web add @nanmicoder/dsh-agent-teams
从源码构建
git clone https://github.com/NanmiCoder/dsh-agent-teams.git
cd dsh-agent-teams
pnpm install
pnpm build
dsh plugin --profile web add .
修改源码后请重新执行 pnpm build。本地安装会继续链接到当前源码目录。
检查组合配置、重启 DSH,然后刷新 Web UI:
dsh --profile web --dump-config
dsh web
接着直接用自然语言拉团队:
使用 AgentTeams 审查 v0.5.3 之后的提交,分别从性能、安全和产品角度分工,最后输出一份汇总报告。
工作方式
- 当前会话创建团队并成为队长。
- 队长按角色添加由可续聊子 Agent 驱动的成员。
- 目标被拆成有负责人和显式依赖的任务。
- 共享调度器依据真实
running / idle / ready状态,为每个空闲成员原子领取一项就绪任务并唤醒它;成员在中断或进程重启后仍持有开放任务时,会以新 attempt 自动恢复执行。 - 成员携带当前
attempt_id更新任务;转派或队长接管会先撤销旧 attempt、等待原成员安静,再启动新 attempt。 - 队长汇总结果,随后归档完整团队记录。
团队状态保存在 <workspace>/.agent-teams/;Web 面板读取这份磁盘真相,并与实时子 Agent 活动合并展示。
成员创建默认零交互:成员沿用队长当前 LLM 路由时会快照该 provider、model 与思考强度;用户要求改用其他路由时,则快照目标模型的默认强度,成员后续续跑仍使用最终解析出的快照。只有当用户明确提出异构分工(例如“后端用 provider A/model X,前端用 provider B/model Y”)时,队长才会把对应的 provider + model 传给该成员;不会逐个弹出模型或思考强度选择。
Slash 命令
无需再说“用 AgentTeams”。插件注册了封闭命名空间的 /agent-teams 宿主命令,Web GUI 的 slash 菜单会显示 agent-teams 占位项与输入提示:选中它(或直接输入命令)、描述目标、回车即可。
/agent-teams 调研三家竞品的定价页
这一行会被命令管线认领,不会以纯文本形式发给模型——处理器会以一条确定性激活消息排队一个普通跟进回合,队长协议立即启动。调用会持久化记录(command/run / command/done)。
没有命令裁决的表面(例如 headless CLI)也享有同等的确定性激活:任何以 /agent-teams 开头的真实用户消息,都会为其余文本激活该协议;句子中间出现的字样仍是普通文本。
配置
默认配置可以直接使用。受信任的 Profile 可以覆盖成员行为:
- id: agent-teams
config:
stateDir: .agent-teams
memberProvider: spawn
memberModel: deepseek-v4
memberMaxDepth: 1
maxMembers: 8
这里的 memberProvider 指子 Agent 的运行后端(spawn / fork),不是 LLM provider。跨 LLM provider 由 agent_teams_add_member 的可选 provider + model 参数表达;memberModel 只是所有成员的模型默认覆盖。成员沿用队长当前 provider/model 时会继承队长的思考强度;provider 或 model 任一改变时会自动使用目标模型的默认档。需要指定特定强度时,可传入可选的 reasoning_effort 参数(目标模型支持的档位 id,或 "default" 表示强制使用模型自身默认档)。
slashCommand: false 可关闭确定性的 /agent-teams 激活面(slash 命令与手势边界),仅保留自然语言触发。
使用边界
- 一个队长同一时间只能带一个活动团队。
- 成员空闲后由共享调度器自动续领就绪任务;中断/冷重启遗留的开放任务会生成新 attempt 并重新唤醒原成员;暂时无法实时投递的消息会持久保存在邮箱中并在后续状态边界重投。
- 状态使用文件持久化,并在单个 DSH 进程内串行操作;多个进程同时修改同一团队不保证一致。
- 活动面板如实展示持久化状态;模型偶尔可能完成工作却没有按协议更新任务状态。
完整工具列表、状态模型、Web UI 行为、配置与已知限制见 docs/usage.md。
插件开发 Skill
仓库同时提供开放 Agent Skills 包 dsh-plugin-development:
npx skills add NanmiCoder/dsh-agent-teams --skill dsh-plugin-development
文档
| 指南 | 内容 |
|---|---|
| 使用指南 | 架构、UI 行为、工具、配置、限制与验证 |
| 验证指南 | 离线、组合、真实 e2e 与 GUI 验证 |
| 插件开发 | 基于本插件整理的人类可读开发指南 |
| README 写作 | 仓库文档约定 |
开发
pnpm install
pnpm build
pnpm verify
许可证
보안 및 설치 증거
이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.
공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.
저장소가 MIT 라이선스를 선언했습니다.
최근 180일 내 코드 업데이트가 있습니다.
재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.
검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.