refactor: replace Task tool with Agent tool and fix schema compliance

## Task -> Agent Replacement
- Replace all Task({}) calls with Agent({}) across .claude/ directory
- Update allowed-tools declarations from Task to Agent
- Update documentation references from "Task tool" to "Agent tool"

## Schema Compliance Fixes

### Agent Schema
- Add missing required `description` parameter in 6 files
- Add missing `run_in_background: false` for subagent calls
- Add missing `subagent_type` parameter

### AskUserQuestion Schema
- Fix issue-manage/SKILL.md: reduce options from 5 to 4 (max allowed)

### SendMessage Schema
- Fix team-worker.md: use correct params (type, content, summary)
- Remove invalid `team_name` parameter

### TaskCreate/TaskUpdate Schema
- Remove invalid `blockedBy`, `owner`, `status` from TaskCreate calls
- Use separate TaskUpdate calls for dependencies and ownership
- Fix TaskUpdate syntax to use object parameter

### TeamDelete Schema
- Remove parameters from TeamDelete() calls (should be no params)

### TaskOutput Schema
- Fix Python-style syntax to JavaScript object syntax

## Files Changed
- 146 files updated across commands/, skills/, skills_lib/, agents/
This commit is contained in:
catlog22
2026-03-04 22:40:39 +08:00
parent 64e772f9b8
commit 16bbfcd12a
146 changed files with 505 additions and 516 deletions

View File

@@ -1,7 +1,7 @@
---
name: team-lifecycle
description: Unified team skill for full lifecycle - spec/impl/test. Uses team-worker agent architecture with role-spec files for domain logic. Coordinator orchestrates pipeline, workers are team-worker agents loaded with role-specific Phase 2-4 specs. Triggers on "team lifecycle".
allowed-tools: TeamCreate(*), TeamDelete(*), SendMessage(*), TaskCreate(*), TaskUpdate(*), TaskList(*), TaskGet(*), Task(*), AskUserQuestion(*), TodoWrite(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*)
allowed-tools: TeamCreate(*), TeamDelete(*), SendMessage(*), TaskCreate(*), TaskUpdate(*), TaskList(*), TaskGet(*), Agent(*), AskUserQuestion(*), TodoWrite(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*)
---
# Team Lifecycle
@@ -110,7 +110,7 @@ User provides task description
When coordinator spawns workers, use `team-worker` agent with role-spec path:
```
Task({
Agent({
subagent_type: "team-worker",
description: "Spawn <role> worker",
team_name: <team-name>,

View File

@@ -47,7 +47,7 @@ EXPECTED: JSON with: problem_statement, target_users[], domain, constraints[], e
**When project detected**: Call explore subagent with `angle: general`, `keywords: <from seed analysis>`.
```
Task({
Agent({
subagent_type: "cli-explore-agent",
run_in_background: false,
description: "Explore general context",

View File

@@ -42,7 +42,7 @@ message_types:
| Backend | Invocation | Use Case |
|---------|-----------|----------|
| agent | `Task({ subagent_type: "code-developer", run_in_background: false })` | Simple, direct edits |
| agent | `Agent({ subagent_type: "code-developer", run_in_background: false })` | Simple, direct edits |
| codex | `ccw cli --tool codex --mode write` (background) | Complex, architecture |
| gemini | `ccw cli --tool gemini --mode write` (background) | Analysis-heavy |

View File

@@ -42,7 +42,7 @@ message_types:
| Task Size | Strategy |
|-----------|----------|
| Simple (<= 3 files, single component) | `Task({ subagent_type: "code-developer", run_in_background: false })` |
| Simple (<= 3 files, single component) | `Agent({ subagent_type: "code-developer", run_in_background: false })` |
| Complex (system, multi-component) | `ccw cli --tool gemini --mode write` (background) |
**Coding standards** (include in agent/CLI prompt):

View File

@@ -33,7 +33,7 @@ If `<session-folder>/spec/` exists → load requirements/_index.md, architecture
For each angle, call explore subagent (cache-aware — check cache-index.json before each call):
```
Task({
Agent({
subagent_type: "cli-explore-agent",
run_in_background: false,
description: "Explore <angle>",
@@ -53,7 +53,7 @@ Task({
**Agent call** (Medium/High):
```
Task({
Agent({
subagent_type: "cli-lite-planning-agent",
run_in_background: false,
description: "Generate implementation plan",

View File

@@ -61,7 +61,7 @@ message_types:
Do NOT execute CLI calls in main agent. Delegate to subagent:
```
Task({
Agent({
subagent_type: "universal-executor",
run_in_background: false,
description: "Generate <doc-type> document",

View File

@@ -85,7 +85,7 @@ Every task description uses structured format for clarity:
```
TaskCreate({
subject: "<TASK-ID>",
owner: "<role>",
description: "PURPOSE: <what this task achieves> | Success: <measurable completion criteria>
TASK:
- <step 1: specific action>
@@ -102,8 +102,8 @@ CONSTRAINTS: <scope limits, focus areas>
---
InlineDiscuss: <DISCUSS-NNN or none>
InnerLoop: <true|false>",
blockedBy: [<dependency-list>],
status: "pending"
addBlockedBy: [<dependency-list>]
})
```
@@ -186,7 +186,7 @@ EXPECTED: Improved artifacts + quality improvement summary
CONSTRAINTS: Focus on <dimension> only
---
InnerLoop: true",
status: "pending"
})
```

View File

@@ -128,7 +128,7 @@ Collect task states from TaskList()
+- TaskUpdate -> in_progress
+- team_msg log -> task_unblocked
+- Spawn team-worker:
Task({
Agent({
subagent_type: "team-worker",
description: "Spawn <role> worker for <subject>",
team_name: <team-name>,

View File

@@ -13,7 +13,7 @@ In v4, discuss is a **subagent call** from within the producing role, reducing e
Called by produce roles after artifact creation:
```
Task({
Agent({
subagent_type: "cli-discuss-agent",
run_in_background: false,
description: "Discuss <round-id>",

View File

@@ -12,7 +12,7 @@ writer 只拿到压缩摘要,可在多任务间保持上下文连续。
## Invocation
```
Task({
Agent({
subagent_type: "universal-executor",
run_in_background: false,
description: "Generate <doc-type>",

View File

@@ -14,7 +14,7 @@ Results were scattered across different directories and never shared. In v4, all
## Invocation
```
Task({
Agent({
subagent_type: "cli-explore-agent",
run_in_background: false,
description: "Explore <angle>",
@@ -135,9 +135,10 @@ For complex queries, call cli-explore-agent per angle. The calling role determin
```
# After seed analysis, explore codebase context
Task({
Agent({
subagent_type: "cli-explore-agent",
description: "Explore general context",
run_in_background: false,
prompt: "Explore codebase for: <topic>\nFocus angle: general\n..."
})
# Result feeds into discovery-context.json
@@ -148,9 +149,10 @@ Task({
```
# Multi-angle exploration before plan generation
for angle in selected_angles:
Task({
Agent({
subagent_type: "cli-explore-agent",
description: "Explore <angle>",
run_in_background: false,
prompt: "Explore codebase for: <task>\nFocus angle: <angle>\n..."
})
# Explorations manifest built from cache-index.json