Repository navigation
feat(agent-team): add Agent Teams plugin with shared task board panel - #151
Vincent-chk wants to merge 5 commits into
Conversation
|
✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically. |
… / always / off), legacy value migration
|
升级至 0.5.0(源仓库 v0.5.0,zip sha256 本版要点: |
|
✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically. |
… a non-inheritable official plan
|
再升级至 0.5.1(Release,zip sha256 |
|
✅ 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
|
✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically. |
|
✅ Internal validation passed. A ZCode maintainer will review the change next; after acceptance, release checks run separately and this PR is closed automatically. |
Plugin type (required) / 插件类型(必填)
Affected plugin name(s) / 涉及的插件名称:
agent-teamWhat / 改动内容
Adds a new community plugin Agent Teams(智能体团队) v0.4.3:
external_plugins/agent-team/— the plugin (MCP Apps panel +team-daemonMCP server +spawn_teammate/send_message/shared task board tools + SessionStart/Stop/UserPromptSubmit hooks +/team,/team-coordinationcommands +team-coordinationskill)assets/agent-team/icon.png— 512×512 marketplace iconmarketplace.json— registration entry (categorydeveloper-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
orchestratormode) 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
proofreaderfor a small task;task-1completed with a recordedLEAD ACCEPTANCE VERDICT: PASS; hooks logged from the 0.4.3 install path; daemon exited cleanly (SIGINT → dispose-ok → exit 0);team-ctl stateshows the roster, completed task and delivered mailbox.Repo-side: 849 tests / 72 files pass;
zcode plugins validatepasses; 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):
Reproducible steps: install from marketplace → new task → “创建一个叫 reviewer 的队友,检查 README 前三段的错别字,然后汇总” → panel opens via the
spawn_teammateresult hint (or session 「+」→「All plugins」→「Personal」→「Agent Team」→「Open」);/teamprints the same-status summary.Versions and marketplace registration. First publication:
0.4.3in bothplugin.jsonand themarketplace.jsonentry (identical). No published version is reused.Dependencies, network requests, permissions, side effects. Documented in the shipped READMEs (
Network access, dependencies and side effectssection): no outbound requests by the plugin (daemon over stdio; optional companion page on loopback127.0.0.1only); teammates run on the host-bundledzcodeCLI 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_DATAplus two whitelisted host task-index points (hostdb.sqliteread-only); hooks run the plugin's ownruntime/*.mjsunder 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 committedruntime/directory is the deterministic esbuild output of the open-source repo above — bundled-but-readable.mjs, no obfuscation, no prebuilt binaries. It is namedruntime/(notdist/) becausebuild_ziprejects adist/without aui-plugins/build source, and.gitignoreexcludesexternal_plugins/*/dist/.Notes for reviewers.
Self-check / 自查清单
external_plugins/<name>// 插件名唯一且 kebab-case,目录位于external_plugins/agent-team/categoryis set independently of publisher ownership / 用途分类已填写(developer-tools)agent-teamversionbumped in BOTHplugin.jsonandmarketplace.json/ 两处版本一致(0.4.3,首次发布)README.md(EN) andREADME_CN.md(中文) both updated and equivalent / 双语 README 等价description_i18nhas bothenandzh-CN/ i18n 双语且与 manifest 逐字一致python3 scripts/validate.pyandpython3 scripts/build_dist.pypass 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, sha2566d6e48a2…),完整构建交由 CI