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/skills/review.md CHANGED
@@ -45,76 +45,55 @@ Ask what to focus on (multiSelect):
45
45
 
46
46
  Call `environment_check` to determine available providers.
47
47
 
48
- Present mode selection (in the user's language):
48
+ - If **no providers are available**: run the `agestra-reviewer` agent directly (Claude only) with the target and selected focus areas as context. Skip to Phase 5.
49
+ - If **1+ providers are available**: proceed to 끝장토론 execution below.
49
50
 
50
- | Option | Condition | Description |
51
- |--------|-----------|-------------|
52
- | **Claude only** | Always | 플러그인 전문 에이전트가 단독 리뷰 |
53
- | **각자 독립** | 1+ provider available | 에이전트 팀(moderator + reviewer + 외부 AI)이 각자 독립 리뷰 후 취합 문서 작성 |
54
- | **끝장토론** | 1+ provider available | 각자 독립 리뷰 후 취합 문서를 돌아가며 분석/피드백, 모두 동의할 때까지 |
51
+ ### Phase 4: Execute 끝장토론
55
52
 
56
- Only show options whose conditions are met. If no providers are available, run Claude only.
57
-
58
- ### Phase 4: Execute
59
-
60
- #### Execution discipline for "각자 독립" and "끝장토론"
53
+ #### Execution discipline
61
54
 
62
55
  - 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).
63
- - 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.
64
- - 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.
65
- - 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.
66
- - 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.
67
-
68
- #### If "Claude only":
69
- Spawn the `agestra-reviewer` agent with the target and selected focus areas as context.
70
-
71
- #### If "각자 독립":
72
-
73
- **팀 구성:** `agestra-moderator` (리더) + `agestra-reviewer` (Claude) + 사용 가능한 외부 AI (gemini, codex, ollama 등)
74
-
75
- 1. In parallel:
76
- - Spawn the `agestra-reviewer` agent for Claude's independent analysis.
77
- After the agent completes, save Claude's result as a document via `workspace_create_document`:
78
- - **title:** `Code Review claude/reviewer`
79
- - **metadata:** `{ "Provider": "claude/reviewer", "Task": "{review target}", "Focus": "{selected focus areas}", "Mode": "Independent" }`
80
- - **content:** The reviewer agent's full output.
81
- - For each available provider, call `ai_chat` with `save_as_document`:
82
- - **save_as_document.title:** `Code Review {provider}`
83
- - **save_as_document.metadata:** `{ "Task": "{review target}", "Focus": "{selected focus areas}", "Mode": "Independent" }`
84
- - **prompt:** Review the following code. Focus on: [selected focus areas]. For each finding, provide severity (CRITICAL/HIGH/MEDIUM/LOW), file:line location, and evidence. Target: [the review target]
85
-
86
- 2. Collect all document IDs.
87
-
88
- 3. Spawn the `agestra-moderator` agent in **Independent Aggregation** mode:
89
- - Pass the document ID list.
90
- - Moderator reads each document, classifies consensus/unique/disputed findings.
91
- - Moderator creates an aggregated document via `workspace_create_document`.
92
-
93
- 4. Present summary report to the user:
94
- - Key consensus findings (1-3 lines).
95
- - Notable unique findings (if any).
96
- - Disputed points (if any).
97
- - Individual + aggregated document IDs.
98
-
99
- #### If "끝장토론":
100
-
101
- **팀 구성:** `agestra-moderator` (리더) + `agestra-reviewer` (Claude) + 사용 가능한 외부 AI (gemini, codex, ollama 등)
102
-
103
- 1. Execute "각자 독립" steps 1-3 above (independent work + initial aggregation).
104
- - The moderator's integrated document becomes the starting document.
105
-
106
- 2. Document review rounds (no max — until all agree):
107
- a. Moderator sends the current document to each AI for review:
108
- - Claude: spawn `agestra-reviewer` → analyze document → section-by-section feedback
109
- - Other providers: `agent_debate_turn` with the document as prompt, requesting agree/disagree per section
110
- b. Moderator collects all feedback.
111
- c. Classify: agree/disagree per section per provider.
112
- d. Revise document incorporating disagreement feedback.
113
- e. If all providers agree on all sections → consensus reached.
114
- f. If not → next round with revised document.
115
- g. **Every 10 rounds:** Ask the user whether to continue or stop with current state.
116
-
117
- 3. Present the final document:
56
+ - Do NOT launch raw Bash retries such as `codex exec ...` or `gemini ...` yourself, and do NOT invent provider-specific flags.
57
+ - Exclude `ollama` from review workflows. Use only review-capable external providers (gemini, codex, registered Claude-backed reviewers).
58
+ - Treat the Claude reviewer agent as asynchronous work that may take several minutes. Poll about once per minute.
59
+ - Do NOT stop or replace the Claude reviewer unless there is an explicit error, user cancellation, or no visible progress for 8+ minutes.
60
+ - Do NOT use `agent_debate_moderate` as the primary review path. Use the turn-based flow (`agent_debate_create` + `agent_debate_turn` + `agent_debate_conclude`).
61
+
62
+ **팀 구성:** `agestra-moderator` (리더) + `agestra-reviewer` (Claude) + 리뷰용 외부 AI (gemini, codex 등; ollama 제외)
63
+
64
+ 1. Independent work + initial aggregation:
65
+
66
+ a. In parallel:
67
+ - Spawn the `agestra-reviewer` agent for Claude's independent analysis.
68
+ After the agent completes, save Claude's result as a document via `workspace_create_document`:
69
+ - **title:** `Code Review claude/reviewer`
70
+ - **metadata:** `{ "Provider": "claude/reviewer", "Task": "{review target}", "Focus": "{selected focus areas}", "Mode": "Independent" }`
71
+ - **content:** The reviewer agent's full output.
72
+ - For each available provider, call `ai_chat` with `save_as_document`:
73
+ - **save_as_document.title:** `Code Review {provider}`
74
+ - **save_as_document.metadata:** `{ "Task": "{review target}", "Focus": "{selected focus areas}", "Mode": "Independent" }`
75
+ - **prompt:** Review the following code. Focus on: [selected focus areas]. For each finding, provide severity (CRITICAL/HIGH/MEDIUM/LOW), file:line location, and evidence. Target: [the review target]
76
+
77
+ b. Collect all document IDs.
78
+
79
+ c. Spawn the `agestra-moderator` agent in **Independent Aggregation** mode:
80
+ - Pass the document ID list.
81
+ - Moderator reads each document, classifies consensus/unique/disputed findings.
82
+ - Moderator creates an aggregated document via `workspace_create_document`.
83
+ - The moderator's integrated document becomes the starting document.
84
+
85
+ 2. Start a turn-based debate session with `agent_debate_create`.
86
+
87
+ 3. Document review rounds (no max — until all agree):
88
+ a. Moderator sends the current document to each AI for review.
89
+ b. Moderator collects all feedback and updates the working document.
90
+ c. If all providers agree on all sections → consensus reached.
91
+ d. If not → next round with the revised document.
92
+ e. **Every 10 rounds:** Ask the user whether to continue or stop with current state.
93
+
94
+ 4. When consensus is reached, record the final synthesis with `agent_debate_conclude`.
95
+
96
+ 5. Present the final document:
118
97
  - Consensus sections: marked as agreed
119
98
  - Disputed sections: show split positions with each provider's rationale
120
99
 
@@ -0,0 +1,98 @@
1
+ ---
2
+ name: setup
3
+ description: >
4
+ Agestra 초기 설정 및 AI 선택. 사용할 AI를 선택하고 providers.config.json을 생성합니다.
5
+ 처음 사용할 때, AI를 바꾸고 싶을 때, 설정을 변경하고 싶을 때 사용합니다.
6
+ 트리거: "agestra setup", "AI 설정", "provider 설정", "어떤 AI 쓸지",
7
+ "AI 바꾸고 싶어", "초기 설정", "provider 변경", "gemini 끄고 싶어",
8
+ "codex만 쓰고 싶어", "설정 변경", "setup", "세팅"
9
+ ---
10
+
11
+ ## Setup Flow
12
+
13
+ ### Step 1: Detect installed CLIs
14
+
15
+ Call `environment_check` to detect which AI CLIs are installed on the system.
16
+
17
+ ### Step 2: Ask user which AIs to use
18
+
19
+ Based on detection results, present ONLY the installed/available AIs as choices.
20
+ Use the user's language for the question.
21
+
22
+ **Korean example:**
23
+ ```
24
+ 사용할 AI를 선택하세요:
25
+ ☑ Codex CLI (설치됨)
26
+ ☑ Claude CLI (설치됨)
27
+ ☐ Gemini CLI (설치됨)
28
+ ☐ Ollama (localhost:11434)
29
+ ```
30
+
31
+ **Also ask the session preference:**
32
+ ```
33
+ 세션 시작 시 매번 사용할 AI를 선택하시겠습니까?
34
+ ○ 예 (매번 선택)
35
+ ○ 아니오 (이번 설정을 계속 사용)
36
+ ```
37
+
38
+ ### Step 3: Generate providers.config.json
39
+
40
+ Based on user selection, generate the config file directly:
41
+
42
+ ```json
43
+ {
44
+ "defaultProvider": "<first-selected-provider-id>",
45
+ "selectionPolicy": "ask-each-session" | "fixed",
46
+ "providers": [
47
+ {
48
+ "id": "codex",
49
+ "type": "codex-cli",
50
+ "enabled": true,
51
+ "executionPolicy": "workspace-write",
52
+ "config": { "timeout": 120000 }
53
+ },
54
+ {
55
+ "id": "gemini",
56
+ "type": "gemini-cli",
57
+ "enabled": false,
58
+ "executionPolicy": "workspace-write",
59
+ "config": { "timeout": 120000 }
60
+ }
61
+ ]
62
+ }
63
+ ```
64
+
65
+ **Rules:**
66
+ - Only selected providers get `enabled: true`
67
+ - Unselected but installed providers get `enabled: false`
68
+ - Not installed providers are omitted entirely
69
+ - `selectionPolicy`: `"ask-each-session"` if user chose "매번 선택", `"fixed"` otherwise
70
+ - Write to `{workspace}/providers.config.json`
71
+
72
+ ### Step 4: Confirm and proceed
73
+
74
+ After config is saved, confirm to user:
75
+
76
+ ```
77
+ 설정 완료! Codex, Claude CLI가 활성화되었습니다.
78
+ 끝장토론(debate)에서 이 AI들이 사용됩니다.
79
+ 설정을 변경하려면 /agestra setup을 다시 실행하세요.
80
+ ```
81
+
82
+ ## Session Start Behavior
83
+
84
+ When `selectionPolicy` is `"ask-each-session"`:
85
+ - At session start, present the AI selection question again
86
+ - User can quickly confirm previous selection or change it
87
+ - Update config accordingly
88
+
89
+ When `selectionPolicy` is `"fixed"`:
90
+ - Use existing config without asking
91
+ - User can still run `/agestra setup` to change
92
+
93
+ ## Integration with Debate
94
+
95
+ When user triggers review/idea/design (via hook or command):
96
+ - Skip the "Claude only / 독립 / 끝장토론" choice
97
+ - Go directly to 끝장토론 (debate) mode using the enabled providers
98
+ - If only 1 provider is enabled, inform user that debate needs 2+ participants and offer to add Claude as participant
package/skills/trace.md CHANGED
@@ -4,7 +4,8 @@ description: >
4
4
  Use when the user wants to see agent execution flow, debug agent interactions,
5
5
  view timeline of recent operations, or understand what happened during a
6
6
  multi-AI session. Triggers on: "trace", "what happened", "show flow",
7
- "agent timeline", "execution history", "bottleneck", "performance".
7
+ "agent timeline", "execution history", "bottleneck", "performance",
8
+ "뭐 했어", "기록 보여줘", "실행 기록", "타임라인".
8
9
  ---
9
10
 
10
11
  ## Purpose
@@ -32,7 +33,7 @@ Aggregate statistics for a session or time range:
32
33
 
33
34
  1. Call `trace_summary` to get aggregate data
34
35
  2. Present:
35
- - Total events by type (debate turns, dispatches, comparisons, memory ops)
36
+ - Total events by type (debate turns, dispatches, comparisons)
36
37
  - Provider usage breakdown (which providers were called, how often)
37
38
  - Success/failure rates per provider
38
39
  - Average response times