Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions changelog/current.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ Record release-facing changes here before the next release.
**Bug Fixes**

- **Worker storage sync I/O amplification**: Upload changed workspace files once per successful watermark, keep jq 1.7 fallback pulls alive, and limit embedded Controller mirrors to control-plane configuration. Concurrent Worker creation and large unknown workspace paths retain their existing persistence semantics without repeated whole-workspace mirrors. ([#1110](https://github.com/agentscope-ai/AgentTeams/pull/1110))
- **Manager diagnostic loops**: Manager prompts and Worker lifecycle guidance stop repeated no-op troubleshooting commands and treat a missing Worker in `agt get workers` as the deletion boundary instead of looping on Matrix room probes. ([#975](https://github.com/agentscope-ai/AgentTeams/pull/975))
- **CoPaw Team routing and workspace projection**: Route Team Leader assignments to the Team Room, including localpart mentions, and project Worker prompts, skills, tool configuration, and Matrix settings into CoPaw's default workspace. ([#1060](https://github.com/agentscope-ai/AgentTeams/pull/1060), [9074def](https://github.com/agentscope-ai/AgentTeams/commit/9074def3), [973e291](https://github.com/agentscope-ai/AgentTeams/commit/973e291), [92c8145](https://github.com/agentscope-ai/AgentTeams/commit/92c8145))
- **Team room and Worker lifecycle convergence**: Keep referenced Worker CRs protected, enforce required Team roles, remove Manager from regular Team Worker personal rooms, and restore standalone membership when a Worker leaves a Team. ([d96f1ed](https://github.com/agentscope-ai/AgentTeams/commit/d96f1ed), [43545c2](https://github.com/agentscope-ai/AgentTeams/commit/43545c2), [b5b0add](https://github.com/agentscope-ai/AgentTeams/commit/b5b0add), [a5d6435](https://github.com/agentscope-ai/AgentTeams/commit/a5d6435))
- **Pre-v1.2 installer compatibility**: Select the legacy environment contract and storage prefix for v1.1.2 images while keeping the canonical AgentTeams contract for v1.2.0 and newer images. Custom version input such as `1.2.0.beta.1` is normalized to the published tag form. ([#1079](https://github.com/agentscope-ai/AgentTeams/pull/1079), [#1100](https://github.com/agentscope-ai/AgentTeams/pull/1100))
Expand All @@ -40,6 +41,7 @@ Record release-facing changes here before the next release.
**Bug 修复**

- **Worker 存储同步 I/O 放大**:基于成功 watermark 只上传变化文件,保持 jq 1.7 fallback pull 存活,并将 embedded Controller mirror 限定为控制面配置。并发创建 Worker 和未知工作目录仍保持原有持久化语义,不再反复执行全量 workspace mirror。([#1110](https://github.com/agentscope-ai/AgentTeams/pull/1110))
- **Manager 诊断循环**:Manager 提示和 Worker 生命周期指引会停止重复执行无效果的排障命令,并以 `agt get workers` 不再列出目标 Worker 作为删除完成边界,避免继续循环探测 Matrix Room。([#975](https://github.com/agentscope-ai/AgentTeams/pull/975))
- **CoPaw Team 路由与 workspace 投影**:将 Team Leader 分配(包括 localpart mention)路由到 Team Room,并把 Worker prompt、skills、工具配置和 Matrix 设置投影到 CoPaw 默认 workspace。([#1060](https://github.com/agentscope-ai/AgentTeams/pull/1060), [9074def](https://github.com/agentscope-ai/AgentTeams/commit/9074def3), [973e291](https://github.com/agentscope-ai/AgentTeams/commit/973e291), [92c8145](https://github.com/agentscope-ai/AgentTeams/commit/92c8145))
- **Team Room 与 Worker 生命周期收敛**:保护被引用的 Worker CR,强制校验 Team 必填角色,将 Manager 移出普通 Team Worker 的个人房间,并在 Worker 离开 Team 后恢复 standalone 成员关系。([d96f1ed](https://github.com/agentscope-ai/AgentTeams/commit/d96f1ed), [43545c2](https://github.com/agentscope-ai/AgentTeams/commit/43545c2), [b5b0add](https://github.com/agentscope-ai/AgentTeams/commit/b5b0add), [a5d6435](https://github.com/agentscope-ai/AgentTeams/commit/a5d6435))
- **v1.2 之前镜像的安装兼容**:v1.1.2 镜像使用旧环境变量契约和存储前缀,v1.2.0 及更新镜像使用 AgentTeams 契约;`1.2.0.beta.1` 等自定义输入会规范化为已发布的 Tag 格式。([#1079](https://github.com/agentscope-ai/AgentTeams/pull/1079), [#1100](https://github.com/agentscope-ai/AgentTeams/pull/1100))
Expand Down Expand Up @@ -76,6 +78,7 @@ Record release-facing changes here before the next release.
- `7ba2efba` docs: update AgentLoop link in Chinese README (#1108)
- `5aec8d96` docs: update AgentLoop link in English README (#1109)
- `45fd4db2` fix: remove Worker storage sync I/O amplification (#1110)
- `90c9fd4f` fix(manager): stop repeated diagnostic loops (#975)

**Also in this window / 同期其他变更**

Expand Down
2 changes: 2 additions & 0 deletions manager/agent/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,8 @@ When `YOLO_ON`: the admin has delegated full authority to you and is **unreachab
- **NO_REPLY is a standalone complete response** — never append it to a message with content, or the content is silently dropped
- **Noisy @mentions cause infinite loops** — if your message doesn't require the recipient to *do* something, don't @mention them (no thanks, confirmations, farewells)
- **Mirror loop safeguard** — if 2+ rounds of @mentions exchanged with no new task/question/decision, stop replying immediately
- **Diagnostic loop safeguard** — never run the same troubleshooting command more than twice in one turn. If a command returns no output, the same output, or a malformed/partial command error twice, stop running tools and report the current confirmed state plus the unresolved uncertainty.
- **Worker deletion is complete when `agt get workers` no longer lists it** — do not keep probing Matrix rooms with `copaw channels list` or ad hoc room cleanup after deletion. Matrix room remnants visible in a client can be cache/history; tell the admin the Worker is gone and, if needed, leave the stale room from the client UI.
- **Never run heartbeat from a Worker message** — heartbeat polls come from the OpenClaw runtime, not from Workers. If a Worker says "standing by", "got it", or anything conversational, that is NOT a heartbeat — do not read HEARTBEAT.md or run any checklist in response
- **Worker 30-minute timeout** — Workers may be processing complex tasks; don't assume unresponsive too early
- **Host files need explicit authorization** — never scan/search/read host files without admin permission
Expand Down
2 changes: 2 additions & 0 deletions manager/agent/copaw-manager-agent/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ When `YOLO_ON`: the admin has delegated full authority to you and is **unreachab
- **NO_REPLY is a standalone complete response** — never append it to a message with content, or the content is silently dropped
- **Noisy @mentions cause infinite loops** — if your message doesn't require the recipient to *do* something, don't @mention them (no thanks, confirmations, farewells)
- **Mirror loop safeguard** — if 2+ rounds of @mentions exchanged with no new task/question/decision, stop replying immediately
- **Diagnostic loop safeguard** — never run the same troubleshooting command more than twice in one turn. If a command returns no output, the same output, or a malformed/partial command error twice, stop running tools and report the current confirmed state plus the unresolved uncertainty.
- **Worker deletion is complete when `agt get workers` no longer lists it** — do not keep probing Matrix rooms with `copaw channels list` or ad hoc room cleanup after deletion. Matrix room remnants visible in a client can be cache/history; tell the admin the Worker is gone and, if needed, leave the stale room from the client UI.
- **Never run heartbeat from a Worker message** — heartbeat polls come from the CoPaw runtime, not from Workers. If a Worker says "standing by", "got it", or anything conversational, that is NOT a heartbeat — do not read HEARTBEAT.md or run any checklist in response
- **Worker 30-minute timeout** — Workers may be processing complex tasks; don't assume unresponsive too early
- **Host files need explicit authorization** — never scan/search/read host files without admin permission
Expand Down
1 change: 1 addition & 0 deletions manager/agent/skills/worker-management/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ agt create worker --name <NAME> --no-wait \
- **`file-sync`, `task-progress`, `project-participation` are default skills** — always included, cannot be removed
- **Use `agentteams-find-worker` only for Nacos-backed market imports or Worker discovery during task assignment** — generic Worker creation and lifecycle changes stay in this skill
- **Peer mentions cause loops if not briefed** — after enabling, explicitly tell Workers to only @mention peers for blocking info, never for acknowledgments
- **Stop repeated diagnostics** — if the same lifecycle/status command returns empty, identical, or malformed output twice, stop and report what is known. Do not keep retrying `copaw channels list` or similar room probes after Worker deletion.
- **Always notify Workers to `file-sync` after writing files they need** — the 5-minute periodic sync is fallback only
- **Workers are stateless** — all state is in centralized storage. Reset = recreate config files
- **Matrix accounts persist in Tuwunel** (cannot be deleted via API) — reuse same username on reset
Expand Down
12 changes: 12 additions & 0 deletions manager/agent/skills/worker-management/references/lifecycle.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,18 @@ bash /opt/agentteams/agent/skills/worker-management/scripts/lifecycle-worker.sh
bash /opt/agentteams/agent/skills/worker-management/scripts/lifecycle-worker.sh --action delete --worker <name>
```

## Delete Completion Boundary

After a delete, verify with one `agt get workers` or `agt get workers -o json`.
If the target Worker is absent, the deletion task is complete. Do not continue
probing Matrix room lists or trying ad hoc room cleanup commands. A room that is
still visible in Element/Matrix after the Worker is gone is usually client
history or cache; tell the admin to leave/hide it from the client UI if needed.

If verification is inconclusive, retry the same diagnostic command at most once.
After two empty, identical, or malformed results, stop running tools and report
the confirmed state instead of continuing a loop.

## start vs create

| Situation | Command |
Expand Down
Loading