Skip to content

feat(agent-team): add Agent Teams plugin with shared task board panel - #151

Open
Vincent-chk wants to merge 5 commits into
zai-org:mainfrom
Vincent-chk:feat/agent-team-plugin
Open

Vincent-chk wants to merge 5 commits into
zai-org:mainfrom
Vincent-chk:feat/agent-team-plugin

Conversation

@Vincent-chk

Copy link
Copy Markdown

Plugin type (required) / 插件类型(必填)

  • UI Plugin / 是 UI 插件 — provides MCP Apps interactive pages / 提供 MCP Apps 交互页面
  • Standard plugin / 普通插件(非 UI)
  • Not applicable / 不适用

Affected plugin name(s) / 涉及的插件名称:agent-team

What / 改动内容

Adds a new community plugin Agent Teams(智能体团队) v0.4.3:

  • external_plugins/agent-team/ — the plugin (MCP Apps panel + team-daemon MCP server + spawn_teammate/send_message/shared task board tools + SessionStart/Stop/UserPromptSubmit hooks + /team, /team-coordination commands + team-coordination skill)
  • assets/agent-team/icon.png — 512×512 marketplace icon
  • marketplace.json — registration entry (category developer-tools, zh/en display + description i18n)

User problem it solves. ZCode sessions cannot natively parallelize work across sub-agents with a shared state. Agent Teams lets the Lead spawn named teammates (independent child sessions sharing the workspace), assign tasks on a shared task board with CAS updates, and exchange member messages, with a live MCP Apps panel for task board / member status / read-only member conversation views.

Visible behavior and how it was tested.

  • After install+enable (no trust grant needed for hooks), stating a goal in a new task is enough: the SessionStart hook injects the teamwork policy, the Lead (default orchestrator mode) spawns teammates, assigns board tasks, waits, independently verifies (reads diffs, runs tests) and reports.

  • Real end-to-end run on ZCode Desktop 3.17.1 / CLI 0.17.1 with this exact package (0.4.3): a fresh session spawned teammate proofreader for a small task; task-1 completed with a recorded LEAD ACCEPTANCE VERDICT: PASS; hooks logged from the 0.4.3 install path; daemon exited cleanly (SIGINT → dispose-ok → exit 0); team-ctl state shows the roster, completed task and delivered mailbox.

  • Repo-side: 849 tests / 72 files pass; zcode plugins validate passes; deterministic release packaging verified (unpack + per-file sha256 fingerprint) at Vincent-chk/zcode-agent-team tag v0.4.3 — the submitted tree is byte-identical to that release (runtime/ bundles sha-matched).

  • Panel screenshots (same renderer as the shipped panel):

    panel running
    task board final
    static card

  • Reproducible steps: install from marketplace → new task → “创建一个叫 reviewer 的队友,检查 README 前三段的错别字,然后汇总” → panel opens via the spawn_teammate result hint (or session 「+」→「All plugins」→「Personal」→「Agent Team」→「Open」); /team prints the same-status summary.

Versions and marketplace registration. First publication: 0.4.3 in both plugin.json and the marketplace.json entry (identical). No published version is reused.

Dependencies, network requests, permissions, side effects. Documented in the shipped READMEs (Network access, dependencies and side effects section): no outbound requests by the plugin (daemon over stdio; optional companion page on loopback 127.0.0.1 only); teammates run on the host-bundled zcode CLI and follow the Lead's model each turn (official coding-plan models cannot be inherited — fails loudly, never silently switches); writes only to $ZCODE_PLUGIN_DATA plus two whitelisted host task-index points (host db.sqlite read-only); hooks run the plugin's own runtime/*.mjs under the host's Node; no arbitrary shell execution. Requires Node ≥ 22.

Licensing / provenance. Plugin MIT; inlined third-party software (MCP SDK et al.) declared in THIRD-PARTY-NOTICES.md. The committed runtime/ directory is the deterministic esbuild output of the open-source repo above — bundled-but-readable .mjs, no obfuscation, no prebuilt binaries. It is named runtime/ (not dist/) because build_zip rejects a dist/ without a ui-plugins/ build source, and .gitignore excludes external_plugins/*/dist/.

Notes for reviewers.

  • Entry paths: on official hosts the panel opens via session 「+」→「All plugins」→「Personal」→「Agent Team」→「Open」; hosts that also list it under 「New tab」 can open it directly. Both paths are documented in both READMEs.
  • Known host limitations (idle daemon reclaim D11 etc.) are listed in the READMEs' troubleshooting/limitations tables.

Self-check / 自查清单

  • Plugin name is unique kebab-case; new external plugin directory is external_plugins/<name>/ / 插件名唯一且 kebab-case,目录位于 external_plugins/agent-team/
  • Usage category is set independently of publisher ownership / 用途分类已填写(developer-tools)
  • Plugin type and affected names are declared above / 已声明 UI Plugin 与 agent-team
  • version bumped in BOTH plugin.json and marketplace.json / 两处版本一致(0.4.3,首次发布)
  • README.md (EN) and README_CN.md (中文) both updated and equivalent / 双语 README 等价
  • description_i18n has both en and zh-CN / i18n 双语且与 manifest 逐字一致
  • No secrets, machine-specific paths, or private dependencies / 已扫描确认
  • Model/API/network dependencies documented / README 专章申报
  • python3 scripts/validate.py and python3 scripts/build_dist.py pass locally / validate.py 通过(OK: 53 plugin(s));git diff --check 通过。build_dist.py 在本机完整运行需要先 pnpm install && pnpm build(仓库内 UI 插件的既有要求);已用同一 build_zip 代码路径单独构建 agent-team 制品验证通过(2,593,497 bytes, sha256 6d6e48a2…),完整构建交由 CI

@panda920

panda920 commented Nov 1, 2026

Copy link
Copy Markdown
Collaborator

✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically.

@Vincent-chk

Copy link
Copy Markdown
Author

升级至 0.5.0(源仓库 v0.5.0,zip sha256 ae610d0f21c4f14b004c37453194c017ca7c5b95f9e92005b254e80d33eb1c0c)。

本版要点:leadMode 三档化——auto(新默认,按需委派:未建队=普通单 agent,建队后按委派价值判断)/ always(原主动编排)/ off(完全关闭:不注入、0 团队工具);旧值统一迁移 auto;三通道(hook 注入/工具描述/skill)同步。目录结构仍为 runtime/(非 dist/),README 双语与申报章节齐备,validate.py 53 插件全过。

@panda920

panda920 commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically.

@Vincent-chk

Copy link
Copy Markdown
Author

再升级至 0.5.1(Release,zip sha256 53c768a7…):Lead 的已确认模型为官方套餐(不可被成员 CLI 继承)时,每会话一次性注入「单 agent 兜底」提示——Lead 直接自己干全部工作、不再浪费轮次试建队;中途切第三方模型即恢复。validate 53 插件全过。

@panda920

panda920 commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically.

…g execution, dual-signal lock liveness, provisioning reconcile grace
@panda920

panda920 commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically.

@panda920

panda920 commented Nov 3, 2026

Copy link
Copy Markdown
Collaborator

✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants