前言¶
DeepSeek Harness(DSH)里成员 id 通常不可改、不可删,名册信息又往往散落在对话与本地文件之间。若要在多 Agent 协作里做「谁接单、谁汇报、成本算在谁头上」,单靠对话记忆很难稳定复现。社区插件 dsh-member-manager(维护者 SMPcosy,分类:工作流)在 DSH 名册约束之上加一层可持久化的覆盖层,并在此基础上提供部门编号、员工工号、M/P 双通道等级、工单闭环与任务图(DAG)并行派发,以及审计与 token 成本归因;运行时零额外 npm 依赖。目录页见 SkillHub,源码与说明见 GitHub。
这是什么¶
一句话:给 DSH 加「可运行的公司化组织」——名册负责显示名、岗位、职责、技能与模型覆盖;公司化运行时负责部门、派工、验收与并行任务图。
- 数据落在
~/.dsh/storages/member-manager/(名册与公司化格式文档说明可跨版本升级)。 - 界面入口:DSH 设置 →「成员管理」面板。
- 对话侧:
member_*共 16 个工具管名册;company_*共 14 个工具管组织与工单。
与已停止维护的旧包 dsh-plugin-member-manager 同源升级:名册工具名与 registry.json 格式保持一致,并新增 company/ 下部门、员工、工单、审计与成本数据。新旧两包不要同时启用,否则会重复注册工具与路由。
核心功能¶
下面按 README 已列能力归纳,只写资料中明确出现的行为。
名册覆盖层¶
在 DSH 成员不可删改的前提下,维护本地 registry.json:显示名、岗位、职责、技能、模型覆盖等。公司员工与名册可双向关联;缺省情况下员工 id 即名册 target,需要别名时可写显式 rosterTarget。登记策略为「只补空字段、不覆盖已有内容」;refresh 才回填。
组织与员工¶
- 部门:编号如
D01…(模板可自定义)、编制、接单范围、借调策略、职责描述;仅空部门可删。 - 员工:工号如
E0001…、M/P 双通道等级可并存、岗位/职责/技能/模型覆盖、停用与调岗;v0.4 起还支持推理强度、spawn/fork 派生、子代理深度、工具黑白名单、会话策略等字段。 - M/P 双通道:M 管理(默认
manager→ M2)、P 技术(默认staff→ P3、window→ P1);同一员工可同时拥有两通道等级,至少保留一个。
派工闭环与工作网¶
典型链路:company_order(或 company_plan 提交任务图)→ 路由与 company_assign 生成派工凭证 → 员工侧 company_accept / company_report → company_review 验收。
路由有五级回退:显式部门、规则表、部门接单范围、技能、兜底。attemptId 用于防串单;重派会先吊销旧 attempt;同一员工忙碌时会返回 E_EMPLOYEE_BUSY。面板「工作网」仅在手动打开时出现,上半部为五泳道看板(待派 / 已路由 / 执行中 / 已完成 / 异常),下半部为管理层 → 部门 → 员工拓扑。
并行派发(DAG)¶
company_plan 一次最多提交 50 个任务,任务间用 key 声明依赖;无依赖的同层可并行,下游在上游 done 后自动放行。内置空计划、过大、非法任务、重复 key、错误引用、环等校验错误码。company_status({ group }) 可按批次汇总 done / running / pending / failed。
成本与审计¶
token 与请求可按员工、部门、工单归因(只读接口 GET /company/costs);audit.jsonl 为 append-only,加载时可重放对账。
隔离与降级¶
员工会话继承宿主标准工具;company_* 走同步 guard。越权、缺宿主 Agent 服务、或关闭公司化开关时,会返回文档中的错误码,且不影响名册功能。
安装与启用¶
当前版本 v0.5.3,许可证 MIT,要求 Node ≥ 22.19,DSH 引擎约束为 >=0.2.1-rc.1 <0.3.0(见 package.json)。插件不支持热重载,安装或升级后需重启 DSH。
官方 npm 安装命令如下:
dsh plugin --profile desktop add dsh-member-manager@0.5.3
本地开发可用 link(将路径换成本仓库绝对路径):
dsh plugin --profile desktop add link:"<本仓库绝对路径>"
从旧包 dsh-plugin-member-manager 升级时,仓库提供 scripts/migrate-old-plugin.mjs(先 dry-run,再 --apply 备份并改写 profile 登记),完成后重启 DSH 消费迁移标记。卸载可用 dsh plugin --profile desktop remove dsh-member-manager;数据仍保留在 ~/.dsh/storages/member-manager/,可手动删除。
安全说明:插件以当前 DSH 进程权限读写本地存储与调用 Agent 能力。安装前应自行查看 GitHub 仓库 源码与 MIT 许可证,确认符合你的环境策略。
典型用法¶
README 建议新手先读仓库内 docs/28-新手使用教程.md。面板侧快速路径如下:
- 重启 DSH 后,打开 设置 →「成员管理」→「总架构」。
- 「新建部门」→ 用一句话描述(如「新建市场部,编制 5 人」)→「创建预览」→「创建」。
- 在对话中派活:
company_order或company_plan→company_assign→ 对应员工company_accept/company_report→company_review。
对话里也可直接用 member_list / member_add 管名册,或用 company_hire / company_admin 建组织。需要把 DSH 核心成员同步进名册时,可在面板点「同步核心成员」,或调用 member_sync(HTTP 路由拿不到 Agent 凭证,需通过工具触发)。
常用配置默认值(节选,完整表见 README「配置项」):
| 字段 | 默认 | 说明 |
|---|---|---|
enabled / company.enabled |
true |
插件与公司化总开关 |
dataDir |
~/.dsh/storages/member-manager |
数据目录 |
company.autoBoot |
true |
非阻塞自动 boot |
company.defaultOrderMode |
"async" |
下单模式 |
company.requireManagerReview |
true |
是否需要经理验收 |
适用场景与注意¶
适合谁:已经在用 DSH 多成员 / 子 Agent,希望把「编制、等级、派单、验收、并行任务依赖、成本归因」落到本地可审计数据里,而不是每次在对话里口头约定。
需要注意:
- 截图中的
demo/*.html为独立 mock 演示;真实能力以 DSH 设置面板与对话工具为准。 - 公司化关闭时,工作网会回退为任务视图,名册能力仍可用。
- SkillHub 为社区插件目录,与 DeepSeek / 幻方无官方从属关系;星标与版本以仓库与 npm 发布为准。
结尾¶
dsh-member-manager 把 DSH 成员名册与公司化运行时叠在同一数据目录:名册管「叫什么、用什么模型」,公司化管「编在哪个部门、接哪张单、DAG 怎么并行、钱算在谁头上」。若你要在工作流分类里找可落地的组织派工插件,可从目录页与 README 的快速开始走通第一单。
- 目录页:https://www.skillhub.cn/plugins/SMPcosy/dsh-member-manager
- GitHub:https://github.com/SMPcosy/dsh-member-manager