agestra 4.7.0 → 4.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/README.ja.md +8 -27
- package/README.ko.md +244 -263
- package/README.md +244 -263
- package/README.zh.md +8 -27
- package/agents/agestra-designer.md +20 -4
- package/agents/agestra-ideator.md +20 -5
- package/agents/agestra-moderator.md +34 -17
- package/agents/agestra-qa.md +20 -5
- package/agents/agestra-reviewer.md +20 -3
- package/agents/agestra-team-lead.md +93 -80
- package/commands/design.md +26 -56
- package/commands/idea.md +22 -56
- package/commands/review.md +63 -93
- package/dist/bundle.js +423 -624
- package/hooks/user-prompt-submit.js +90 -25
- package/package.json +1 -1
- package/skills/design.md +29 -52
- package/skills/idea.md +307 -212
- package/skills/provider-guide.md +15 -21
- package/skills/review.md +45 -66
- package/skills/setup.md +98 -0
- package/skills/trace.md +3 -2
package/commands/design.md
CHANGED
|
@@ -23,69 +23,42 @@ If `$ARGUMENTS` is empty, present a starting-point choice using AskUserQuestion
|
|
|
23
23
|
|
|
24
24
|
If `$ARGUMENTS` is provided, use it directly as the subject.
|
|
25
25
|
|
|
26
|
-
## Step 2: Check environment and
|
|
26
|
+
## Step 2: Check environment and select mode
|
|
27
27
|
|
|
28
28
|
Call `environment_check` to determine which providers and modes are available.
|
|
29
29
|
|
|
30
|
-
If no providers are available
|
|
30
|
+
- If **no providers are available**: run the `agestra-designer` agent directly (Claude only) with the subject as context. The designer will ask questions to understand intent, explore the codebase for existing patterns, propose 2-3 approaches with trade-offs, refine based on feedback, and produce a design document in `docs/plans/`. Skip to presenting the result.
|
|
31
|
+
- If **1+ providers are available**: proceed to 끝장토론 execution below.
|
|
31
32
|
|
|
32
|
-
## Step 3:
|
|
33
|
+
## Step 3: Execute 끝장토론
|
|
33
34
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
| Option | Condition | Description |
|
|
37
|
-
|--------|-----------|-------------|
|
|
38
|
-
| **Claude only** | Always | 플러그인 전문 에이전트가 소크라테스식 질문으로 아키텍처 탐색 |
|
|
39
|
-
| **각자 독립** | 1+ provider available | 에이전트 팀(moderator + designer + 외부 AI)이 각자 독립 설계 후 취합 문서 작성 |
|
|
40
|
-
| **끝장토론** | 1+ provider available | 각자 독립 설계 후 취합 문서를 돌아가며 분석/피드백, 모두 동의할 때까지 |
|
|
41
|
-
|
|
42
|
-
Only show options whose conditions are met. If no providers are available, skip and run Claude only.
|
|
43
|
-
|
|
44
|
-
## Step 4: Execute based on selection
|
|
45
|
-
|
|
46
|
-
### If "Claude only":
|
|
47
|
-
Spawn the `agestra-designer` agent with the subject as context. The designer will ask questions to understand intent, explore the codebase for existing patterns, propose 2-3 approaches with trade-offs, refine based on feedback, and produce a design document in `docs/plans/`.
|
|
35
|
+
**팀 구성:** `agestra-moderator` (리더) + `agestra-designer` (Claude) + 사용 가능한 외부 AI (gemini, codex, ollama 등)
|
|
48
36
|
|
|
49
|
-
|
|
37
|
+
1. Independent work + initial aggregation:
|
|
50
38
|
|
|
51
|
-
|
|
39
|
+
a. In parallel:
|
|
40
|
+
- Spawn the `agestra-designer` agent for Claude's independent architecture exploration.
|
|
41
|
+
After the agent completes, save Claude's result as a document via `workspace_create_document`:
|
|
42
|
+
- **title:** `Architecture Design — claude/designer`
|
|
43
|
+
- **metadata:** `{ "Provider": "claude/designer", "Task": "{subject}", "Mode": "Independent" }`
|
|
44
|
+
- **content:** The designer agent's full output.
|
|
45
|
+
- For each available provider, call `ai_chat` with `save_as_document` to let each AI produce its own document directly:
|
|
46
|
+
- **save_as_document.title:** `Architecture Design — {provider}`
|
|
47
|
+
- **save_as_document.metadata:** `{ "Task": "{subject}", "Mode": "Independent" }`
|
|
48
|
+
- **prompt:**
|
|
52
49
|
|
|
53
|
-
1.
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
- **title:** `Architecture Design — claude/designer`
|
|
57
|
-
- **metadata:** `{ "Provider": "claude/designer", "Task": "{subject}", "Mode": "Independent" }`
|
|
58
|
-
- **content:** The designer agent's full output.
|
|
59
|
-
- For each available provider, call `ai_chat` with `save_as_document` to let each AI produce its own document directly:
|
|
60
|
-
- **save_as_document.title:** `Architecture Design — {provider}`
|
|
61
|
-
- **save_as_document.metadata:** `{ "Task": "{subject}", "Mode": "Independent" }`
|
|
62
|
-
- **prompt:**
|
|
63
|
-
|
|
64
|
-
> Propose an architecture approach for [subject]. Consider existing patterns in the codebase, trade-offs (complexity, performance, maintainability), and implementation steps. Present 2-3 distinct approaches with pros/cons for each.
|
|
65
|
-
>
|
|
66
|
-
> Subject: [the design subject]
|
|
67
|
-
|
|
68
|
-
2. Collect all document IDs from step 1.
|
|
69
|
-
|
|
70
|
-
3. Spawn the `agestra-moderator` agent in **Independent Aggregation** mode:
|
|
71
|
-
- Pass the **document ID list**.
|
|
72
|
-
- Moderator reads each document via `workspace_read`.
|
|
73
|
-
- Moderator classifies: consensus approaches, unique ideas, disputed trade-offs.
|
|
74
|
-
- Moderator creates an **aggregated document** via `workspace_create_document`.
|
|
75
|
-
|
|
76
|
-
4. Present a **summary report** to the user:
|
|
77
|
-
- Key consensus approaches (1-3 lines).
|
|
78
|
-
- Notable unique design ideas (if any).
|
|
79
|
-
- Trade-off disagreements (if any).
|
|
80
|
-
- Individual document IDs for reference.
|
|
81
|
-
- Aggregated document ID for the full integrated analysis.
|
|
82
|
-
|
|
83
|
-
### If "끝장토론":
|
|
50
|
+
> Create a complete design document for [subject]. Include: 1) Problem definition — what exactly we're solving and why. 2) Constraints and requirements — technical limits, compatibility needs, performance targets. 3) 2-3 architecture approaches — each with detailed pros/cons, component diagrams, data flow, and effort estimates. 4) Recommended approach — pick one and justify the choice. 5) Implementation plan — step-by-step build sequence with dependencies. 6) Risks and mitigations. Be thorough and detailed — this document will be debated and refined.
|
|
51
|
+
>
|
|
52
|
+
> Subject: [the design subject]
|
|
84
53
|
|
|
85
|
-
|
|
54
|
+
b. Collect all document IDs.
|
|
86
55
|
|
|
87
|
-
|
|
88
|
-
|
|
56
|
+
c. Spawn the `agestra-moderator` agent in **Independent Aggregation** mode:
|
|
57
|
+
- Pass the **document ID list**.
|
|
58
|
+
- Moderator reads each document via `workspace_read`.
|
|
59
|
+
- Moderator classifies: consensus approaches, unique ideas, disputed trade-offs.
|
|
60
|
+
- Moderator creates an **aggregated document** via `workspace_create_document`.
|
|
61
|
+
- The moderator's integrated document becomes the starting document.
|
|
89
62
|
|
|
90
63
|
2. Document review rounds (no max — until all agree):
|
|
91
64
|
a. Moderator sends the current document to each AI for review:
|
|
@@ -101,6 +74,3 @@ Spawn the `agestra-designer` agent with the subject as context. The designer wil
|
|
|
101
74
|
3. Present the final document:
|
|
102
75
|
- Consensus sections: marked as agreed
|
|
103
76
|
- Disputed sections: show split positions with each provider's rationale
|
|
104
|
-
|
|
105
|
-
### If "Other":
|
|
106
|
-
Follow the user's specified approach.
|
package/commands/idea.md
CHANGED
|
@@ -12,69 +12,38 @@ You are executing the `/agestra idea` command.
|
|
|
12
12
|
If `$ARGUMENTS` is empty, ask the user what area to explore using AskUserQuestion:
|
|
13
13
|
- "What area would you like to find improvements for? (feature area, project aspect, or general)"
|
|
14
14
|
|
|
15
|
-
## Step 2: Check environment and
|
|
15
|
+
## Step 2: Check environment and select mode
|
|
16
16
|
|
|
17
17
|
Call `environment_check` to determine which providers and modes are available.
|
|
18
18
|
|
|
19
|
-
If no providers are available
|
|
19
|
+
- If **no providers are available**: run the `agestra-ideator` agent directly (Claude only) with the topic as context. The ideator will research similar projects, collect user complaints, build feature comparisons, and generate prioritized recommendations. Skip to presenting the result.
|
|
20
|
+
- If **1+ providers are available**: proceed to 끝장토론 execution below.
|
|
20
21
|
|
|
21
|
-
## Step 3:
|
|
22
|
-
|
|
23
|
-
Use AskUserQuestion to present these options (in the user's language):
|
|
24
|
-
|
|
25
|
-
| Option | Condition | Description |
|
|
26
|
-
|--------|-----------|-------------|
|
|
27
|
-
| **Claude only** | Always | 플러그인 전문 에이전트가 단독으로 개선점 탐색 |
|
|
28
|
-
| **각자 독립** | 1+ provider available | 에이전트 팀(moderator + ideator + 외부 AI)이 각자 독립 탐색 후 취합 문서 작성 |
|
|
29
|
-
| **끝장토론** | 1+ provider available | 각자 독립 탐색 후 취합 문서를 돌아가며 분석/피드백, 모두 동의할 때까지 |
|
|
30
|
-
|
|
31
|
-
Only show options whose conditions are met. If no providers are available, skip and run Claude only.
|
|
32
|
-
|
|
33
|
-
## Step 4: Execute based on selection
|
|
34
|
-
|
|
35
|
-
### If "Claude only":
|
|
36
|
-
Spawn the `agestra-ideator` agent with the topic as context. The ideator will research similar projects, collect user complaints, build feature comparisons, and generate prioritized recommendations.
|
|
37
|
-
|
|
38
|
-
### If "각자 독립":
|
|
22
|
+
## Step 3: Execute 끝장토론
|
|
39
23
|
|
|
40
24
|
**팀 구성:** `agestra-moderator` (리더) + `agestra-ideator` (Claude) + 사용 가능한 외부 AI (gemini, codex, ollama 등)
|
|
41
25
|
|
|
42
|
-
1.
|
|
43
|
-
- Spawn the `agestra-ideator` agent for Claude's independent improvement research.
|
|
44
|
-
After the agent completes, save Claude's result as a document via `workspace_create_document`:
|
|
45
|
-
- **title:** `Idea Exploration — claude/ideator`
|
|
46
|
-
- **metadata:** `{ "Provider": "claude/ideator", "Task": "{topic}", "Mode": "Independent" }`
|
|
47
|
-
- **content:** The ideator agent's full output.
|
|
48
|
-
- For each available provider, call `ai_chat` with `save_as_document` to let each AI produce its own document directly:
|
|
49
|
-
- **save_as_document.title:** `Idea Exploration — {provider}`
|
|
50
|
-
- **save_as_document.metadata:** `{ "Task": "{topic}", "Mode": "Independent" }`
|
|
51
|
-
- **prompt:**
|
|
26
|
+
1. Independent work + initial aggregation:
|
|
52
27
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
28
|
+
a. In parallel:
|
|
29
|
+
- Spawn the `agestra-ideator` agent for Claude's independent improvement research.
|
|
30
|
+
After the agent completes, save Claude's result as a document via `workspace_create_document`:
|
|
31
|
+
- **title:** `Idea Exploration — claude/ideator`
|
|
32
|
+
- **metadata:** `{ "Provider": "claude/ideator", "Task": "{topic}", "Mode": "Independent" }`
|
|
33
|
+
- **content:** The ideator agent's full output.
|
|
34
|
+
- For each available provider, call `ai_chat` with `save_as_document` to let each AI produce its own document directly:
|
|
35
|
+
- **save_as_document.title:** `Idea Exploration — {provider}`
|
|
36
|
+
- **save_as_document.metadata:** `{ "Task": "{topic}", "Mode": "Independent" }`
|
|
37
|
+
- **prompt:** Use the appropriate prompt from the `agestra-idea` skill — Mode A (existing project) or Mode B (new project) — including the user interview context collected earlier. The prompt must include structured output requirements (Title, Category, Evidence/Why, Effort, Priority) and the user's constraints.
|
|
56
38
|
|
|
57
|
-
|
|
39
|
+
b. Collect all document IDs.
|
|
58
40
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
4. Present a **summary report** to the user:
|
|
66
|
-
- Key consensus suggestions (1-3 lines).
|
|
67
|
-
- Notable unique ideas (if any).
|
|
68
|
-
- Priority disagreements (if any).
|
|
69
|
-
- Individual document IDs for reference.
|
|
70
|
-
- Aggregated document ID for the full integrated analysis.
|
|
71
|
-
|
|
72
|
-
### If "끝장토론":
|
|
73
|
-
|
|
74
|
-
**팀 구성:** `agestra-moderator` (리더) + `agestra-ideator` (Claude) + 사용 가능한 외부 AI (gemini, codex, ollama 등)
|
|
75
|
-
|
|
76
|
-
1. Execute "각자 독립" steps 1-3 above (independent work + initial aggregation).
|
|
77
|
-
- The moderator's integrated document becomes the starting document.
|
|
41
|
+
c. Spawn the `agestra-moderator` agent in **Independent Aggregation** mode:
|
|
42
|
+
- Pass the **document ID list**.
|
|
43
|
+
- Moderator reads each document via `workspace_read`.
|
|
44
|
+
- Moderator classifies: consensus suggestions, unique ideas, disputed priorities.
|
|
45
|
+
- Moderator creates an **aggregated document** via `workspace_create_document`.
|
|
46
|
+
- The moderator's integrated document becomes the starting document.
|
|
78
47
|
|
|
79
48
|
2. Document review rounds (no max — until all agree):
|
|
80
49
|
a. Moderator sends the current document to each AI for review:
|
|
@@ -90,6 +59,3 @@ Spawn the `agestra-ideator` agent with the topic as context. The ideator will re
|
|
|
90
59
|
3. Present the final document:
|
|
91
60
|
- Consensus sections: marked as agreed
|
|
92
61
|
- Disputed sections: show split positions with each provider's rationale
|
|
93
|
-
|
|
94
|
-
### If "Other":
|
|
95
|
-
Follow the user's specified approach.
|
package/commands/review.md
CHANGED
|
@@ -43,99 +43,69 @@ Ask the user what to focus on using AskUserQuestion with **multiSelect: true** (
|
|
|
43
43
|
|
|
44
44
|
Pass the selected focus areas to all reviewers (agent and external AIs) as part of the review instructions.
|
|
45
45
|
|
|
46
|
-
## Step 3: Check environment and
|
|
46
|
+
## Step 3: Check environment and select mode
|
|
47
47
|
|
|
48
48
|
Call `environment_check` to determine which providers and modes are available.
|
|
49
49
|
|
|
50
|
-
If no providers are available
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
-
|
|
71
|
-
|
|
72
|
-
-
|
|
73
|
-
-
|
|
74
|
-
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
4.
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
- Aggregated document ID for the full integrated analysis.
|
|
113
|
-
|
|
114
|
-
### If "끝장토론":
|
|
115
|
-
|
|
116
|
-
**팀 구성:** `agestra-moderator` (리더) + `agestra-reviewer` (Claude) + 리뷰용 외부 AI (`gemini`, `codex`, 등록된 Claude-backed reviewer 등; `ollama` 제외)
|
|
117
|
-
|
|
118
|
-
1. Execute "각자 독립" steps 1-3 above (independent work + initial aggregation).
|
|
119
|
-
- The moderator's integrated document becomes the starting document.
|
|
120
|
-
|
|
121
|
-
2. Start a turn-based debate session with `agent_debate_create`.
|
|
122
|
-
- Use the integrated document's title/topic as the debate topic.
|
|
123
|
-
- Reuse the same reviewer set from step 1, excluding `ollama`.
|
|
124
|
-
|
|
125
|
-
3. Document review rounds (no max — until all agree):
|
|
126
|
-
a. Moderator sends the current document to Claude reviewer asynchronously.
|
|
127
|
-
b. Moderator sends the same current document to non-Claude providers with `agent_debate_review`.
|
|
128
|
-
c. Moderator collects all feedback and updates the working document.
|
|
129
|
-
d. If a provider needs a follow-up reply to another provider's point, add a targeted `agent_debate_turn` in the same debate session rather than restarting the workflow.
|
|
130
|
-
e. If all providers agree on all sections → consensus reached.
|
|
131
|
-
f. If not → next round with the revised document.
|
|
132
|
-
g. **Every 10 rounds:** Ask the user via AskUserQuestion whether to continue or stop with current state.
|
|
133
|
-
|
|
134
|
-
4. When consensus is reached, record the moderator's final synthesis with `agent_debate_conclude`.
|
|
135
|
-
|
|
136
|
-
5. Present the final document:
|
|
137
|
-
- Consensus sections: marked as agreed
|
|
138
|
-
- Disputed sections: show split positions with each provider's rationale
|
|
139
|
-
|
|
140
|
-
### If "Other":
|
|
141
|
-
Follow the user's specified approach.
|
|
50
|
+
- If **no providers are available**: run the `agestra-reviewer` agent directly (Claude only) with the target and selected focus areas as context. Skip to presenting the result.
|
|
51
|
+
- If **1+ providers are available**: proceed to 끝장토론 execution below.
|
|
52
|
+
|
|
53
|
+
## Step 4: Execute 끝장토론
|
|
54
|
+
|
|
55
|
+
### Execution discipline
|
|
56
|
+
|
|
57
|
+
- Prefer Agestra MCP tools for external providers (`ai_chat`, `ai_analyze_files`, `agent_debate_*`, `workspace_*`, `cli_job_submit` when a direct provider retry is needed).
|
|
58
|
+
- Do NOT launch raw Bash retries such as `codex exec ...` or `gemini ...` yourself, and do NOT invent provider-specific flags. If a retry is required, use `cli_job_submit` with the provider's default mapping unless you have just verified the current CLI help output in this environment.
|
|
59
|
+
- Exclude `ollama` from review workflows even if it is available. For repository/code reviews, use only review-capable external providers such as `gemini`, `codex`, and registered Claude-backed reviewers.
|
|
60
|
+
- Treat the Claude reviewer agent as asynchronous work that may legitimately take several minutes. Poll about once per minute; an empty or slowly growing output file is not a failure by itself.
|
|
61
|
+
- Do NOT stop or replace the Claude reviewer with a duplicate main-thread review unless there is an explicit error, the user asks to cancel, or there has been no visible progress for at least 8 minutes. For large review scopes, allow up to 15 minutes before declaring the reviewer stalled.
|
|
62
|
+
- If a background reviewer is still running, tell the user you are waiting and continue the orchestration. Do not short-circuit the workflow just because another provider finished earlier.
|
|
63
|
+
- Do NOT use `agent_debate_moderate` as the primary review path. Use the turn-based flow (`agent_debate_create` + iterative `agent_debate_review` / `agent_debate_turn` + `agent_debate_conclude`) so long-running review rounds do not get cut off by host tool-call time limits.
|
|
64
|
+
|
|
65
|
+
**팀 구성:** `agestra-moderator` (리더) + `agestra-reviewer` (Claude) + 리뷰용 외부 AI (`gemini`, `codex`, 등록된 Claude-backed reviewer 등; `ollama` 제외)
|
|
66
|
+
|
|
67
|
+
1. Independent work + initial aggregation:
|
|
68
|
+
|
|
69
|
+
a. In parallel:
|
|
70
|
+
- Spawn the `agestra-reviewer` agent for Claude's independent analysis.
|
|
71
|
+
After the agent completes, save Claude's result as a document via `workspace_create_document`:
|
|
72
|
+
- **title:** `Code Review — claude/reviewer`
|
|
73
|
+
- **metadata:** `{ "Provider": "claude/reviewer", "Task": "{review target}", "Focus": "{selected focus areas}", "Mode": "Independent" }`
|
|
74
|
+
- **content:** The reviewer agent's full output.
|
|
75
|
+
- For each available provider, call `ai_chat` with `save_as_document` to let each AI produce its own document directly:
|
|
76
|
+
- **save_as_document.title:** `Code Review — {provider}`
|
|
77
|
+
- **save_as_document.metadata:** `{ "Task": "{review target}", "Focus": "{selected focus areas}", "Mode": "Independent" }`
|
|
78
|
+
- **prompt:**
|
|
79
|
+
|
|
80
|
+
> Review the following code. Focus on: [selected focus areas].
|
|
81
|
+
> For each finding, provide severity (CRITICAL/HIGH/MEDIUM/LOW), file:line location, and evidence.
|
|
82
|
+
>
|
|
83
|
+
> Target: [the review target]
|
|
84
|
+
|
|
85
|
+
b. Collect all document IDs.
|
|
86
|
+
|
|
87
|
+
c. Spawn the `agestra-moderator` agent in **Independent Aggregation** mode:
|
|
88
|
+
- Pass the **document ID list**.
|
|
89
|
+
- Moderator reads each document via `workspace_read`.
|
|
90
|
+
- Moderator classifies: consensus findings, unique findings, disputed points.
|
|
91
|
+
- Moderator creates an **aggregated document** via `workspace_create_document`.
|
|
92
|
+
- The moderator's integrated document becomes the starting document.
|
|
93
|
+
|
|
94
|
+
2. Start a turn-based debate session with `agent_debate_create`.
|
|
95
|
+
- Use the integrated document's title/topic as the debate topic.
|
|
96
|
+
- Reuse the same reviewer set from step 1, excluding `ollama`.
|
|
97
|
+
|
|
98
|
+
3. Document review rounds (no max — until all agree):
|
|
99
|
+
a. Moderator sends the current document to Claude reviewer asynchronously.
|
|
100
|
+
b. Moderator sends the same current document to non-Claude providers with `agent_debate_review`.
|
|
101
|
+
c. Moderator collects all feedback and updates the working document.
|
|
102
|
+
d. If a provider needs a follow-up reply to another provider's point, add a targeted `agent_debate_turn` in the same debate session rather than restarting the workflow.
|
|
103
|
+
e. If all providers agree on all sections → consensus reached.
|
|
104
|
+
f. If not → next round with the revised document.
|
|
105
|
+
g. **Every 10 rounds:** Ask the user via AskUserQuestion whether to continue or stop with current state.
|
|
106
|
+
|
|
107
|
+
4. When consensus is reached, record the moderator's final synthesis with `agent_debate_conclude`.
|
|
108
|
+
|
|
109
|
+
5. Present the final document:
|
|
110
|
+
- Consensus sections: marked as agreed
|
|
111
|
+
- Disputed sections: show split positions with each provider's rationale
|