@yeongjaeyou/claude-code-config 0.8.1 → 0.9.1
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/agents/python-pro.md +1 -1
- package/.claude/agents/web-researcher.md +36 -39
- package/.claude/commands/council.md +335 -137
- package/README.md +6 -4
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: python-pro
|
|
3
3
|
description: Write idiomatic Python code with advanced features like decorators, generators, and async/await. Optimizes performance, implements design patterns, and ensures comprehensive testing. Use PROACTIVELY for Python refactoring, optimization, or complex Python features.
|
|
4
4
|
tools: Read, Write, Edit, Bash
|
|
5
|
-
model:
|
|
5
|
+
model: opus
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
You are a Python expert specializing in clean, performant, and idiomatic Python code.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: web-researcher
|
|
3
3
|
description: Use this agent when you need to conduct comprehensive research on technical topics across multiple platforms (Reddit, GitHub, Stack Overflow, Hugging Face, arXiv, etc.) and generate a synthesized report. (project)
|
|
4
|
-
model:
|
|
4
|
+
model: opus
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Web Research Expert Agent
|
|
@@ -40,7 +40,11 @@ Detect keywords in the prompt to determine execution mode:
|
|
|
40
40
|
## Sub-Agent Output Schema
|
|
41
41
|
|
|
42
42
|
**MANDATORY**: Each platform search Task **MUST** return results in this exact structure.
|
|
43
|
-
|
|
43
|
+
|
|
44
|
+
**On schema violation:**
|
|
45
|
+
- Missing required fields → retry (max 2 attempts)
|
|
46
|
+
- Invalid YAML → skip with warning, note in report
|
|
47
|
+
- Empty findings → accept with `confidence: 0.1`
|
|
44
48
|
|
|
45
49
|
### Required Fields (Quick & Deep)
|
|
46
50
|
|
|
@@ -82,8 +86,8 @@ suggested_followups:
|
|
|
82
86
|
| Platform | Purpose | Tool |
|
|
83
87
|
|----------|---------|------|
|
|
84
88
|
| **Google** | General web search, recent discussions | WebSearch |
|
|
85
|
-
| **GitHub** | Code, issues, PRs | `
|
|
86
|
-
| **Hugging Face** | ML models, datasets, Spaces | `
|
|
89
|
+
| **GitHub** | Code, issues, PRs | `/code-explorer` skill |
|
|
90
|
+
| **Hugging Face** | ML models, datasets, Spaces | `/code-explorer` skill |
|
|
87
91
|
| **Reddit** | Community discussions, experiences | WebSearch |
|
|
88
92
|
| **Stack Overflow** | Q&A, solutions | WebSearch |
|
|
89
93
|
| **Context7** | Official library documentation | MCP |
|
|
@@ -156,6 +160,11 @@ Parallel execution (Task tool, run_in_background: true):
|
|
|
156
160
|
└── Task: arXiv + general web (if needed)
|
|
157
161
|
```
|
|
158
162
|
|
|
163
|
+
**Execution policy:**
|
|
164
|
+
- Timeout: 300000ms (5min) per agent
|
|
165
|
+
- Min success: 3/5 agents required to proceed
|
|
166
|
+
- On partial failure: continue with warning in report
|
|
167
|
+
|
|
159
168
|
**Each Task prompt MUST include:**
|
|
160
169
|
```
|
|
161
170
|
Format your response according to the Sub-Agent Output Schema.
|
|
@@ -187,7 +196,7 @@ Return findings as a YAML block with ALL fields:
|
|
|
187
196
|
- gaps, conflicts, suggested_followups (Deep Mode required)
|
|
188
197
|
```
|
|
189
198
|
|
|
190
|
-
Each Task returns results following Sub-Agent Output Schema. **
|
|
199
|
+
Each Task returns results following Sub-Agent Output Schema. **On non-compliance: retry once, then skip with warning.**
|
|
191
200
|
|
|
192
201
|
---
|
|
193
202
|
|
|
@@ -227,6 +236,11 @@ Selective execution (1-2 platforms only):
|
|
|
227
236
|
└── Task: {Second most suitable platform} (if needed)
|
|
228
237
|
```
|
|
229
238
|
|
|
239
|
+
**Round context to include:**
|
|
240
|
+
- Unresolved `gaps` list from Round 1
|
|
241
|
+
- Detected `conflicts` requiring verification
|
|
242
|
+
- Top 3 key findings (title + URL only)
|
|
243
|
+
|
|
230
244
|
Repeat Round 1.5 analysis → Convergence check
|
|
231
245
|
|
|
232
246
|
---
|
|
@@ -271,17 +285,16 @@ Validation execution:
|
|
|
271
285
|
| Condition | Value |
|
|
272
286
|
|-----------|-------|
|
|
273
287
|
| Max rounds | 3 |
|
|
274
|
-
| Max total time |
|
|
275
|
-
|
|
|
288
|
+
| Max total time | 15 min |
|
|
289
|
+
| Min successful agents | 3/5 per round |
|
|
276
290
|
|
|
277
291
|
### Soft Limits (Convergence Conditions)
|
|
278
292
|
|
|
279
293
|
Terminate when any of the following is met:
|
|
280
294
|
|
|
281
|
-
- **New information < 10%**:
|
|
282
|
-
- **All gaps resolved**:
|
|
283
|
-
- **
|
|
284
|
-
- **High confidence**: Core answer confidence > 0.9
|
|
295
|
+
- **New information < 10%**: `(new_unique_urls / prev_total_urls) < 0.1`
|
|
296
|
+
- **All gaps resolved**: `len(unresolved_gaps) == 0`
|
|
297
|
+
- **High confidence**: `avg(agent_confidences) > 0.9`
|
|
285
298
|
|
|
286
299
|
### Forced Termination
|
|
287
300
|
|
|
@@ -373,42 +386,26 @@ Handling:
|
|
|
373
386
|
|
|
374
387
|
## Platform-Specific Search Guides
|
|
375
388
|
|
|
376
|
-
### 1. GitHub Search
|
|
377
|
-
|
|
378
|
-
```bash
|
|
379
|
-
# Repository search
|
|
380
|
-
gh search repos "object detection" --sort stars --limit 10
|
|
381
|
-
gh search repos "gradio app" --language python --limit 5
|
|
382
|
-
|
|
383
|
-
# Code search
|
|
384
|
-
gh search code "Qwen2VL" --extension py
|
|
389
|
+
### 1. GitHub Search
|
|
385
390
|
|
|
386
|
-
|
|
387
|
-
gh search repos "keyword" --limit 10 --json fullName,description,stargazersCount,url
|
|
388
|
-
```
|
|
391
|
+
Use `/code-explorer` skill for GitHub repository and code search.
|
|
389
392
|
|
|
390
|
-
**
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
393
|
+
**Capabilities:**
|
|
394
|
+
- Repository search with quality filters (stars, language, date)
|
|
395
|
+
- Code search across repositories
|
|
396
|
+
- Long-tail keyword optimization
|
|
397
|
+
- Multi-query search patterns
|
|
394
398
|
|
|
395
399
|
---
|
|
396
400
|
|
|
397
401
|
### 2. Hugging Face Search
|
|
398
402
|
|
|
399
|
-
|
|
400
|
-
from huggingface_hub import HfApi
|
|
401
|
-
api = HfApi()
|
|
402
|
-
|
|
403
|
-
# Model search
|
|
404
|
-
models = api.list_models(search="object detection", limit=10, sort="downloads")
|
|
403
|
+
Use `/code-explorer` skill for Hugging Face resources search.
|
|
405
404
|
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
spaces = api.list_spaces(search="gradio demo", limit=10, sort="likes")
|
|
411
|
-
```
|
|
405
|
+
**Capabilities:**
|
|
406
|
+
- Models, Datasets, Spaces search
|
|
407
|
+
- Download via `uvx hf` CLI
|
|
408
|
+
- Search quality principles (Long-tail, Multi-Query)
|
|
412
409
|
|
|
413
410
|
---
|
|
414
411
|
|
|
@@ -4,11 +4,12 @@ description: Consult multiple AI models and synthesize collective wisdom (LLM Co
|
|
|
4
4
|
|
|
5
5
|
# LLM Council
|
|
6
6
|
|
|
7
|
-
Inspired by Andrej Karpathy's LLM Council: query multiple AI models with the same question, anonymize their responses, and synthesize collective wisdom.
|
|
7
|
+
Inspired by Andrej Karpathy's LLM Council: query multiple AI models with the same question, anonymize their responses, and synthesize collective wisdom through multi-round deliberation.
|
|
8
8
|
|
|
9
9
|
**Core Philosophy:**
|
|
10
10
|
- Collective intelligence > single expert opinion
|
|
11
11
|
- Anonymization prevents model favoritism
|
|
12
|
+
- Multi-round deliberation resolves conflicts and fills gaps
|
|
12
13
|
- Diverse perspectives lead to better answers
|
|
13
14
|
|
|
14
15
|
---
|
|
@@ -19,17 +20,51 @@ Inspired by Andrej Karpathy's LLM Council: query multiple AI models with the sam
|
|
|
19
20
|
|
|
20
21
|
1. **No arguments**: `/council` - Prompt user for question
|
|
21
22
|
2. **Question only**: `/council How should I structure this API?`
|
|
22
|
-
3. **
|
|
23
|
-
4. **With deep reasoning**: `/council --deep What's the best architecture?`
|
|
24
|
-
5. **Combined**: `/council --deep --evaluate Complex design decision?`
|
|
23
|
+
3. **Quick mode**: `/council --quick What's the best approach?`
|
|
25
24
|
|
|
26
25
|
**Flags:**
|
|
27
|
-
- `--
|
|
28
|
-
|
|
26
|
+
- `--quick`: Quick mode - reduced reasoning depth, faster convergence
|
|
27
|
+
|
|
28
|
+
**Default behavior (no flags):**
|
|
29
|
+
- Maximum reasoning depth (Codex: xhigh + gpt-5.1-codex-max)
|
|
30
|
+
- Full multi-round deliberation (up to 3 rounds)
|
|
29
31
|
|
|
30
32
|
---
|
|
31
33
|
|
|
32
|
-
##
|
|
34
|
+
## Council Member Output Schema
|
|
35
|
+
|
|
36
|
+
All council members MUST return responses in this structured format:
|
|
37
|
+
|
|
38
|
+
```yaml
|
|
39
|
+
council_member:
|
|
40
|
+
model: "opus" | "sonnet" | "codex" | "gemini"
|
|
41
|
+
response:
|
|
42
|
+
summary: "1-2 sentence core answer"
|
|
43
|
+
detailed_answer: "full response content"
|
|
44
|
+
confidence: 0.0-1.0
|
|
45
|
+
key_points:
|
|
46
|
+
- point: "key insight"
|
|
47
|
+
evidence: "file:line or reasoning"
|
|
48
|
+
code_references:
|
|
49
|
+
- file: "/absolute/path/to/file.py"
|
|
50
|
+
lines: "42-58"
|
|
51
|
+
context: "why this is relevant"
|
|
52
|
+
caveats:
|
|
53
|
+
- "potential limitation or edge case"
|
|
54
|
+
# Round 2+ additional fields
|
|
55
|
+
gaps:
|
|
56
|
+
- "aspect not fully addressed"
|
|
57
|
+
conflicts:
|
|
58
|
+
- "disagrees with [model] on [topic]: [reason]"
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**Schema enforcement:**
|
|
62
|
+
- Sub-agents that fail to follow this schema will have their results flagged
|
|
63
|
+
- Missing required fields trigger re-query in next round
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Context Gathering (Before Round 1)
|
|
33
68
|
|
|
34
69
|
Before querying models, collect relevant context:
|
|
35
70
|
|
|
@@ -45,17 +80,14 @@ Model-specific guidelines (project root):
|
|
|
45
80
|
- ./gemini.md (Gemini)
|
|
46
81
|
```
|
|
47
82
|
|
|
48
|
-
**File Path Inclusion:**
|
|
49
|
-
When the question involves specific files or images, provide **exact absolute paths** so each model can read them directly:
|
|
50
|
-
|
|
83
|
+
**File Path Inclusion (MANDATORY format):**
|
|
51
84
|
```
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
- /absolute/path/to/
|
|
85
|
+
Relevant files for this question:
|
|
86
|
+
- /absolute/path/to/file.py:45-78 (authentication logic)
|
|
87
|
+
- /absolute/path/to/model.py:12-35 (User model definition)
|
|
55
88
|
- /absolute/path/to/screenshot.png (UI reference)
|
|
56
|
-
- /absolute/path/to/diagram.jpg (architecture)
|
|
57
89
|
|
|
58
|
-
|
|
90
|
+
Use your file access tools to READ these files directly.
|
|
59
91
|
```
|
|
60
92
|
|
|
61
93
|
**Model-specific file access:**
|
|
@@ -84,124 +116,257 @@ Directories: node_modules/, __pycache__/, .git/
|
|
|
84
116
|
|
|
85
117
|
## Execution
|
|
86
118
|
|
|
87
|
-
###
|
|
119
|
+
### Round 1: Collect Initial Responses
|
|
88
120
|
|
|
89
|
-
Query all 4 models **in parallel** with
|
|
121
|
+
Query all 4 models **in parallel** using Task tool with sub-agents:
|
|
90
122
|
|
|
123
|
+
**Claude Opus:**
|
|
91
124
|
```
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
125
|
+
Task(model="opus", subagent_type="general-purpose", run_in_background: true):
|
|
126
|
+
prompt: |
|
|
127
|
+
You are participating in an LLM Council deliberation as Claude Opus.
|
|
128
|
+
|
|
129
|
+
## Guidelines
|
|
130
|
+
Read and follow ./CLAUDE.md project guidelines.
|
|
131
|
+
You have access to MCP tools. Use them actively to gather accurate information.
|
|
98
132
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|-------|---------|--------|
|
|
102
|
-
| Claude Opus | standard | same |
|
|
103
|
-
| Claude Sonnet | standard | same |
|
|
104
|
-
| Codex | `reasoningEffort="high"` | `xhigh` + `gpt-5.1-codex-max` |
|
|
105
|
-
| Gemini | CLI control N/A | CLI control N/A |
|
|
133
|
+
## Question
|
|
134
|
+
[USER_QUESTION]
|
|
106
135
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
- Gemini CLI doesn't support thinking level control yet (Issue #6693)
|
|
136
|
+
## Context Files (READ directly using exact paths)
|
|
137
|
+
[FILE_LIST_WITH_LINE_NUMBERS]
|
|
110
138
|
|
|
111
|
-
|
|
139
|
+
## Current Changes
|
|
140
|
+
[git diff summary]
|
|
141
|
+
|
|
142
|
+
## Instructions
|
|
143
|
+
Provide your best answer following the Council Member Output Schema.
|
|
144
|
+
Be concise but thorough. Focus on accuracy and actionable insights.
|
|
145
|
+
|
|
146
|
+
## Output (YAML format required)
|
|
147
|
+
[COUNCIL_MEMBER_SCHEMA]
|
|
112
148
|
```
|
|
113
|
-
You are participating in an LLM Council deliberation.
|
|
114
149
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
-
|
|
118
|
-
|
|
119
|
-
|
|
150
|
+
**Claude Sonnet:**
|
|
151
|
+
```
|
|
152
|
+
Task(model="sonnet", subagent_type="general-purpose", run_in_background: true):
|
|
153
|
+
prompt: [Same structure as Opus]
|
|
154
|
+
```
|
|
120
155
|
|
|
121
|
-
|
|
122
|
-
|
|
156
|
+
**Codex:**
|
|
157
|
+
```
|
|
158
|
+
Task(subagent_type="general-purpose", run_in_background: true):
|
|
159
|
+
prompt: |
|
|
160
|
+
You are participating in an LLM Council deliberation as Codex.
|
|
161
|
+
|
|
162
|
+
## Tool Usage
|
|
163
|
+
Use mcp__codex__codex tool with:
|
|
164
|
+
- sandbox: "read-only"
|
|
165
|
+
- workingDirectory: "{PROJECT_ROOT}"
|
|
166
|
+
- reasoningEffort: "xhigh" (or "high" with --quick)
|
|
167
|
+
- model: "gpt-5.1-codex-max"
|
|
123
168
|
|
|
124
|
-
##
|
|
125
|
-
|
|
169
|
+
## Guidelines
|
|
170
|
+
Read and follow ./AGENTS.md project guidelines.
|
|
171
|
+
You have access to MCP tools. Use them actively to gather accurate information.
|
|
126
172
|
|
|
127
|
-
##
|
|
128
|
-
|
|
129
|
-
- [/absolute/path/to/image.png] - [screenshot/diagram description]
|
|
130
|
-
- [/absolute/path/to/file2.ext] - [brief description]
|
|
173
|
+
## Question
|
|
174
|
+
[USER_QUESTION]
|
|
131
175
|
|
|
132
|
-
|
|
176
|
+
## Context Files
|
|
177
|
+
[FILE_LIST_WITH_LINE_NUMBERS]
|
|
133
178
|
|
|
134
|
-
##
|
|
135
|
-
|
|
179
|
+
## Instructions
|
|
180
|
+
Parse Codex's response and return structured YAML following the schema.
|
|
136
181
|
|
|
137
|
-
##
|
|
138
|
-
|
|
139
|
-
Focus on accuracy, practicality, and actionable insights.
|
|
182
|
+
## Output (YAML format required)
|
|
183
|
+
[COUNCIL_MEMBER_SCHEMA]
|
|
140
184
|
```
|
|
141
185
|
|
|
142
|
-
**
|
|
143
|
-
|
|
144
|
-
-
|
|
145
|
-
|
|
186
|
+
**Gemini:**
|
|
187
|
+
```
|
|
188
|
+
Task(subagent_type="general-purpose", run_in_background: true):
|
|
189
|
+
prompt: |
|
|
190
|
+
You are participating in an LLM Council deliberation as Gemini.
|
|
146
191
|
|
|
147
|
-
|
|
192
|
+
## Tool Usage
|
|
193
|
+
Use Bash tool to invoke Gemini CLI:
|
|
194
|
+
```bash
|
|
195
|
+
cat <<'EOF' | gemini -p -
|
|
196
|
+
[GEMINI_PROMPT_WITH_CONTEXT]
|
|
197
|
+
EOF
|
|
198
|
+
```
|
|
148
199
|
|
|
149
|
-
|
|
200
|
+
## Guidelines
|
|
201
|
+
Read and follow ./gemini.md project guidelines.
|
|
202
|
+
You have access to MCP tools. Use them actively to gather accurate information.
|
|
150
203
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
204
|
+
## Question
|
|
205
|
+
[USER_QUESTION]
|
|
206
|
+
|
|
207
|
+
## Context Files (include content since Gemini has limited file access)
|
|
208
|
+
[FILE_CONTENTS_WITH_LINE_NUMBERS]
|
|
209
|
+
|
|
210
|
+
## Instructions
|
|
211
|
+
Parse Gemini's response and return structured YAML following the schema.
|
|
212
|
+
|
|
213
|
+
## Output (YAML format required)
|
|
214
|
+
[COUNCIL_MEMBER_SCHEMA]
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
**Important:**
|
|
218
|
+
- Use `run_in_background: true` for true parallelism
|
|
219
|
+
- Timeout per model (use same value for TaskOutput):
|
|
220
|
+
| Model | Timeout | Reason |
|
|
221
|
+
|-------|---------|--------|
|
|
222
|
+
| Opus/Sonnet | 300000ms (5min) | Direct execution |
|
|
223
|
+
| Codex | 480000ms (8min) | MCP tool + deep reasoning |
|
|
224
|
+
| Gemini | 600000ms (10min) | CLI invocation + long thinking |
|
|
225
|
+
- Continue with successful responses if some models fail (min 2/4 required)
|
|
226
|
+
- **TaskOutput must use matching timeout**: `TaskOutput(task_id, block=true, timeout=600000)`
|
|
227
|
+
|
|
228
|
+
### Round 1.5: Coordinator Analysis (MANDATORY)
|
|
229
|
+
|
|
230
|
+
**⚠️ DO NOT SKIP**: After collecting responses, the coordinator **MUST** perform this analysis before synthesis.
|
|
231
|
+
Skipping Round 1.5 defeats the purpose of multi-round deliberation.
|
|
232
|
+
|
|
233
|
+
**1. Anonymize Responses:**
|
|
234
|
+
```
|
|
235
|
+
1. Shuffle response order randomly
|
|
236
|
+
2. Assign labels: Response A, B, C, D
|
|
237
|
+
3. Create internal mapping:
|
|
155
238
|
label_to_model = {
|
|
156
239
|
"Response A": "gemini",
|
|
157
240
|
"Response B": "opus",
|
|
158
241
|
"Response C": "sonnet",
|
|
159
242
|
"Response D": "codex"
|
|
160
243
|
}
|
|
161
|
-
|
|
244
|
+
```
|
|
162
245
|
|
|
163
|
-
|
|
246
|
+
**2. Gap Analysis:**
|
|
247
|
+
```yaml
|
|
248
|
+
gaps_detected:
|
|
249
|
+
- model: "opus"
|
|
250
|
+
gap: "performance benchmarks not addressed"
|
|
251
|
+
severity: "medium"
|
|
252
|
+
- model: "gemini"
|
|
253
|
+
gap: "security implications missing"
|
|
254
|
+
severity: "high"
|
|
255
|
+
```
|
|
164
256
|
|
|
165
|
-
|
|
257
|
+
**3. Conflict Detection:**
|
|
258
|
+
```yaml
|
|
259
|
+
conflicts_detected:
|
|
260
|
+
- topic: "recommended approach"
|
|
261
|
+
positions:
|
|
262
|
+
- model: "opus"
|
|
263
|
+
position: "use library A"
|
|
264
|
+
evidence: "official docs recommend"
|
|
265
|
+
- model: "codex"
|
|
266
|
+
position: "use library B"
|
|
267
|
+
evidence: "better performance"
|
|
268
|
+
resolution_needed: true
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
**4. Convergence Check (REQUIRED before synthesis):**
|
|
272
|
+
```yaml
|
|
273
|
+
convergence_status:
|
|
274
|
+
confidence_average: 0.815
|
|
275
|
+
new_information_ratio: 0.15
|
|
276
|
+
gaps_remaining: 2
|
|
277
|
+
conflicts_remaining: 1
|
|
278
|
+
decision: "proceed_to_round_2" | "terminate_and_synthesize"
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
**Decision logic:**
|
|
282
|
+
- If `gaps_remaining > 0` AND `confidence_average < 0.9` → `proceed_to_round_2`
|
|
283
|
+
- If `conflicts_remaining > 0` AND round < 3 → `proceed_to_round_2`
|
|
284
|
+
- Otherwise → `terminate_and_synthesize`
|
|
166
285
|
|
|
167
|
-
|
|
286
|
+
### Round 2: Targeted Re-queries (Conditional)
|
|
168
287
|
|
|
169
|
-
|
|
288
|
+
If convergence criteria not met, re-query only models with gaps/conflicts:
|
|
289
|
+
|
|
290
|
+
**Re-query prompt template:**
|
|
170
291
|
```
|
|
171
|
-
|
|
292
|
+
## Previous Round Summary
|
|
293
|
+
Round 1 produced the following positions:
|
|
294
|
+
|
|
295
|
+
### Response A (Confidence: 0.92)
|
|
296
|
+
- Position: [summary]
|
|
297
|
+
- Key points: [list]
|
|
298
|
+
|
|
299
|
+
### Response B (Confidence: 0.85)
|
|
300
|
+
- Position: [summary]
|
|
301
|
+
- Key points: [list]
|
|
302
|
+
|
|
303
|
+
[... other responses ...]
|
|
172
304
|
|
|
173
|
-
|
|
305
|
+
## Gaps Identified
|
|
306
|
+
- [gap 1]
|
|
307
|
+
- [gap 2]
|
|
174
308
|
|
|
175
|
-
|
|
309
|
+
## Conflicts Detected
|
|
310
|
+
- Topic: [topic]
|
|
311
|
+
- Position A: [description]
|
|
312
|
+
- Position B: [description]
|
|
176
313
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
314
|
+
## Re-query Focus
|
|
315
|
+
Please address specifically:
|
|
316
|
+
1. [specific gap or conflict to resolve]
|
|
317
|
+
2. [specific gap or conflict to resolve]
|
|
181
318
|
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
319
|
+
Provide evidence and reasoning for your position.
|
|
320
|
+
Update your confidence score based on new information.
|
|
321
|
+
|
|
322
|
+
## Output (YAML format required)
|
|
323
|
+
[COUNCIL_MEMBER_SCHEMA with gaps/conflicts fields]
|
|
187
324
|
```
|
|
188
325
|
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
326
|
+
### Round 2.5: Coordinator Analysis
|
|
327
|
+
|
|
328
|
+
Same as Round 1.5. Check convergence again.
|
|
329
|
+
|
|
330
|
+
### Round 3: Final Cross-Validation (Conditional)
|
|
193
331
|
|
|
194
|
-
|
|
332
|
+
If still not converged after Round 2:
|
|
333
|
+
- Focused on resolving remaining conflicts
|
|
334
|
+
- Models see other models' positions (still anonymized)
|
|
335
|
+
- Final opportunity for consensus
|
|
195
336
|
|
|
196
|
-
|
|
337
|
+
### Synthesis
|
|
338
|
+
|
|
339
|
+
After convergence or max rounds:
|
|
197
340
|
|
|
198
341
|
1. **Reveal** the label-to-model mapping
|
|
199
342
|
2. **Analyze** all responses:
|
|
200
343
|
- Consensus points (where models agree)
|
|
201
|
-
-
|
|
344
|
+
- Resolved conflicts (with reasoning)
|
|
345
|
+
- Remaining disagreements (with analysis)
|
|
202
346
|
- Unique insights (valuable points from individual models)
|
|
203
|
-
3. **
|
|
204
|
-
|
|
347
|
+
3. **Produce** final verdict combining best elements
|
|
348
|
+
|
|
349
|
+
---
|
|
350
|
+
|
|
351
|
+
## Termination Criteria
|
|
352
|
+
|
|
353
|
+
### Hard Limits (Mandatory Termination)
|
|
354
|
+
| Condition | Value |
|
|
355
|
+
|-----------|-------|
|
|
356
|
+
| Max rounds | 3 |
|
|
357
|
+
| Max total time | 20 min |
|
|
358
|
+
| Max per-model timeout | 10 min (Gemini) |
|
|
359
|
+
| Min successful models | 2/4 (proceed with partial results) |
|
|
360
|
+
| All models failed | immediate termination |
|
|
361
|
+
|
|
362
|
+
### Soft Limits (Convergence - any triggers termination)
|
|
363
|
+
| Condition | Threshold |
|
|
364
|
+
|-----------|-----------|
|
|
365
|
+
| Average confidence | > 0.9 |
|
|
366
|
+
| New information ratio | < 10% |
|
|
367
|
+
| All gaps resolved | 0 remaining |
|
|
368
|
+
| Strong consensus | 3+ models agree |
|
|
369
|
+
| Conflicts irreconcilable | Cannot be resolved with more queries |
|
|
205
370
|
|
|
206
371
|
---
|
|
207
372
|
|
|
@@ -213,70 +378,88 @@ As the main agent (moderator), synthesize the final answer:
|
|
|
213
378
|
### Question
|
|
214
379
|
[Original user question]
|
|
215
380
|
|
|
381
|
+
### Deliberation Process
|
|
382
|
+
| Round | Models Queried | Convergence | Status |
|
|
383
|
+
|-------|---------------|-------------|--------|
|
|
384
|
+
| 1 | All (4) | 65% | Gaps detected |
|
|
385
|
+
| 2 | Codex, Gemini | 85% | Conflict on approach |
|
|
386
|
+
| 3 | Codex | 95% | Converged |
|
|
387
|
+
|
|
216
388
|
### Individual Responses (Anonymized)
|
|
217
389
|
|
|
218
|
-
#### Response A
|
|
390
|
+
#### Response A (Confidence: 0.92)
|
|
219
391
|
[Content]
|
|
220
392
|
|
|
221
|
-
|
|
393
|
+
**Key Points:**
|
|
394
|
+
- [point 1] (evidence: file:line)
|
|
395
|
+
- [point 2] (evidence: file:line)
|
|
396
|
+
|
|
397
|
+
#### Response B (Confidence: 0.85)
|
|
222
398
|
[Content]
|
|
223
399
|
|
|
224
|
-
#### Response C
|
|
400
|
+
#### Response C (Confidence: 0.78)
|
|
225
401
|
[Content]
|
|
226
402
|
|
|
227
|
-
#### Response D
|
|
403
|
+
#### Response D (Confidence: 0.71)
|
|
228
404
|
[Content]
|
|
229
405
|
|
|
230
406
|
### Model Reveal
|
|
231
|
-
| Label | Model |
|
|
232
|
-
|
|
233
|
-
| Response A |
|
|
234
|
-
| Response B |
|
|
235
|
-
| Response C |
|
|
236
|
-
| Response D |
|
|
237
|
-
|
|
238
|
-
###
|
|
239
|
-
|
|
240
|
-
|
|
407
|
+
| Label | Model | Final Confidence |
|
|
408
|
+
|-------|-------|-----------------|
|
|
409
|
+
| Response A | codex | 0.92 |
|
|
410
|
+
| Response B | opus | 0.85 |
|
|
411
|
+
| Response C | sonnet | 0.78 |
|
|
412
|
+
| Response D | gemini | 0.71 |
|
|
413
|
+
|
|
414
|
+
### Coordinator Analysis
|
|
415
|
+
|
|
416
|
+
#### Gaps Addressed
|
|
417
|
+
| Gap | Resolved By | Round |
|
|
418
|
+
|-----|-------------|-------|
|
|
419
|
+
| Performance benchmarks | Codex | 2 |
|
|
420
|
+
| Security considerations | Opus | 1 |
|
|
421
|
+
|
|
422
|
+
#### Conflicts Resolved
|
|
423
|
+
| Topic | Final Position | Reasoning |
|
|
424
|
+
|-------|---------------|-----------|
|
|
425
|
+
| Library choice | Library A | Official docs + 3 model consensus |
|
|
426
|
+
|
|
427
|
+
#### Remaining Disagreements
|
|
428
|
+
| Topic | Positions | Analysis |
|
|
429
|
+
|-------|-----------|----------|
|
|
430
|
+
| [topic] | A: [pos], B: [pos] | [why unresolved] |
|
|
241
431
|
|
|
242
432
|
### Council Synthesis
|
|
243
433
|
|
|
244
434
|
#### Consensus
|
|
245
|
-
[Points where all/most models agree]
|
|
246
|
-
|
|
247
|
-
#### Disagreements
|
|
248
|
-
[Points of divergence with analysis]
|
|
435
|
+
[Points where all/most models agree - with evidence]
|
|
249
436
|
|
|
250
|
-
####
|
|
251
|
-
|
|
437
|
+
#### Key Insights by Model
|
|
438
|
+
| Model | Unique Contribution |
|
|
439
|
+
|-------|-------------------|
|
|
440
|
+
| Codex | [insight] |
|
|
441
|
+
| Opus | [insight] |
|
|
252
442
|
|
|
253
443
|
### Final Verdict
|
|
254
|
-
[Synthesized answer combining collective wisdom]
|
|
444
|
+
[Synthesized answer combining collective wisdom with confidence level and caveats]
|
|
445
|
+
|
|
446
|
+
### Code References
|
|
447
|
+
| File | Lines | Context |
|
|
448
|
+
|------|-------|---------|
|
|
449
|
+
| /path/to/file.py | 45-78 | Authentication logic |
|
|
255
450
|
```
|
|
256
451
|
|
|
257
452
|
---
|
|
258
453
|
|
|
259
454
|
## Error Handling
|
|
260
455
|
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
## Examples
|
|
269
|
-
|
|
270
|
-
```bash
|
|
271
|
-
# Basic council consultation
|
|
272
|
-
/council What's the best way to implement caching in this API?
|
|
273
|
-
|
|
274
|
-
# With peer evaluation for important decisions
|
|
275
|
-
/council --evaluate Should we use microservices or monolith for this project?
|
|
276
|
-
|
|
277
|
-
# Architecture review
|
|
278
|
-
/council --evaluate Review the current authentication flow and suggest improvements
|
|
279
|
-
```
|
|
456
|
+
| Error | Response |
|
|
457
|
+
|-------|----------|
|
|
458
|
+
| Model timeout | Continue with successful responses, note failures |
|
|
459
|
+
| All models fail | Report error, suggest retry |
|
|
460
|
+
| Parse failure | Use fallback extraction, flag for re-query |
|
|
461
|
+
| Empty response | Exclude from synthesis, note in output |
|
|
462
|
+
| Schema violation | Flag and request re-query in next round |
|
|
280
463
|
|
|
281
464
|
---
|
|
282
465
|
|
|
@@ -284,35 +467,50 @@ As the main agent (moderator), synthesize the final answer:
|
|
|
284
467
|
|
|
285
468
|
Use `AskUserQuestion` tool when clarification is needed:
|
|
286
469
|
|
|
287
|
-
**Before
|
|
470
|
+
**Before Round 1:**
|
|
288
471
|
- Question is ambiguous or too broad
|
|
289
472
|
- Missing critical context (e.g., "review this code" but no file specified)
|
|
290
473
|
- Multiple interpretations possible
|
|
291
474
|
|
|
292
|
-
**During
|
|
293
|
-
-
|
|
294
|
-
-
|
|
475
|
+
**During Deliberation:**
|
|
476
|
+
- Strong disagreement between models that cannot be resolved
|
|
477
|
+
- New information discovered that changes the question scope
|
|
295
478
|
|
|
296
479
|
**After Synthesis:**
|
|
297
|
-
-
|
|
480
|
+
- Remaining disagreements require user input to decide
|
|
298
481
|
- Actionable next steps require user confirmation
|
|
299
482
|
|
|
300
483
|
**Example questions:**
|
|
301
484
|
```
|
|
302
485
|
- "Your question mentions 'the API' - which specific endpoint or service?"
|
|
303
|
-
- "Should the council focus on: (1) Code quality, (2) Architecture, (3) Performance, or (4) All aspects?"
|
|
304
486
|
- "Models disagree on X vs Y approach. Which aligns better with your constraints?"
|
|
487
|
+
- "Should the council prioritize performance or maintainability?"
|
|
305
488
|
```
|
|
306
489
|
|
|
307
490
|
**Important:** Never assume or guess when context is unclear. Ask first, then proceed.
|
|
308
491
|
|
|
309
492
|
---
|
|
310
493
|
|
|
494
|
+
## Examples
|
|
495
|
+
|
|
496
|
+
```bash
|
|
497
|
+
# Standard council consultation (full multi-round, max reasoning)
|
|
498
|
+
/council What's the best way to implement caching in this API?
|
|
499
|
+
|
|
500
|
+
# Quick mode for simpler questions
|
|
501
|
+
/council --quick Should we use tabs or spaces for indentation?
|
|
502
|
+
|
|
503
|
+
# Architecture review
|
|
504
|
+
/council Review the current authentication flow and suggest improvements
|
|
505
|
+
```
|
|
506
|
+
|
|
507
|
+
---
|
|
508
|
+
|
|
311
509
|
## Guidelines
|
|
312
510
|
|
|
313
511
|
- Respond in the same language as the user's question
|
|
314
512
|
- No emojis in code or documentation
|
|
315
513
|
- If context is needed, gather it before querying models
|
|
316
|
-
- For code-related questions, include relevant file snippets
|
|
514
|
+
- For code-related questions, include relevant file snippets with line numbers
|
|
317
515
|
- Respect `@CLAUDE.md` project conventions
|
|
318
516
|
- **Never assume unclear context - use AskUserQuestion to clarify**
|
package/README.md
CHANGED
|
@@ -64,7 +64,7 @@ A collection of custom slash commands, agents, and skills for Claude Code CLI.
|
|
|
64
64
|
| `/ask-deepwiki` | Deep query GitHub repositories via DeepWiki MCP |
|
|
65
65
|
| `/ask-codex` | Request code review via Codex MCP (with Claude cross-check) |
|
|
66
66
|
| `/ask-gemini` | Request code review via Gemini CLI (with Claude cross-check) |
|
|
67
|
-
| `/council` | Consult multiple AI models
|
|
67
|
+
| `/council` | Consult multiple AI models with multi-round deliberation |
|
|
68
68
|
|
|
69
69
|
### GitHub Workflow Commands (`/gh/`)
|
|
70
70
|
|
|
@@ -89,8 +89,8 @@ A collection of custom slash commands, agents, and skills for Claude Code CLI.
|
|
|
89
89
|
|
|
90
90
|
| Agent | Description |
|
|
91
91
|
|-------|-------------|
|
|
92
|
-
| `web-researcher` | Multi-platform tech research (Reddit, GitHub,
|
|
93
|
-
| `python-pro` | Python
|
|
92
|
+
| `web-researcher` | Multi-platform tech research with opus model (Reddit, GitHub, HF, arXiv, etc.) |
|
|
93
|
+
| `python-pro` | Python expert with opus model (decorators, generators, async/await, optimization) |
|
|
94
94
|
|
|
95
95
|
## Skills
|
|
96
96
|
|
|
@@ -247,8 +247,10 @@ cp node_modules/@yeongjaeyou/claude-code-config/.mcp.json .
|
|
|
247
247
|
|
|
248
248
|
### `/council` - LLM Council
|
|
249
249
|
- Query multiple AI models (Opus, Sonnet, Codex, Gemini) in parallel
|
|
250
|
+
- Multi-round deliberation with gap analysis and conflict resolution
|
|
250
251
|
- Anonymize responses for unbiased evaluation
|
|
251
|
-
-
|
|
252
|
+
- Convergence-based termination (confidence > 0.9, consensus reached)
|
|
253
|
+
- Use `--quick` flag for faster single-round responses
|
|
252
254
|
|
|
253
255
|
### `web-researcher` Agent
|
|
254
256
|
- Multi-platform search: GitHub (`gh` CLI), Hugging Face, Reddit, SO, arXiv
|