conductor-kit 0.0.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/package.json ADDED
@@ -0,0 +1,48 @@
1
+ {
2
+ "name": "conductor-kit",
3
+ "version": "0.0.0",
4
+ "description": "Global skills pack and Go helper for Codex CLI and Claude Code",
5
+ "keywords": [
6
+ "claude",
7
+ "codex",
8
+ "cli",
9
+ "mcp",
10
+ "ai",
11
+ "assistant",
12
+ "skills"
13
+ ],
14
+ "homepage": "https://github.com/Skyline-23/conductor-kit",
15
+ "bugs": {
16
+ "url": "https://github.com/Skyline-23/conductor-kit/issues"
17
+ },
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "git+https://github.com/Skyline-23/conductor-kit.git"
21
+ },
22
+ "license": "MIT",
23
+ "author": "Skyline-23",
24
+ "bin": {
25
+ "conductor": "./bin/conductor"
26
+ },
27
+ "files": [
28
+ "bin/",
29
+ "scripts/",
30
+ "skills/",
31
+ "commands/",
32
+ "config/"
33
+ ],
34
+ "scripts": {
35
+ "postinstall": "node scripts/postinstall.js"
36
+ },
37
+ "engines": {
38
+ "node": ">=16.0.0"
39
+ },
40
+ "os": [
41
+ "darwin",
42
+ "linux"
43
+ ],
44
+ "cpu": [
45
+ "x64",
46
+ "arm64"
47
+ ]
48
+ }
@@ -0,0 +1,135 @@
1
+ #!/usr/bin/env node
2
+
3
+ const https = require('https');
4
+ const fs = require('fs');
5
+ const path = require('path');
6
+ const os = require('os');
7
+ const { execSync, spawn } = require('child_process');
8
+ const zlib = require('zlib');
9
+
10
+ const REPO_OWNER = 'Skyline-23';
11
+ const REPO_NAME = 'conductor-kit';
12
+ const BINARY_NAME = 'conductor';
13
+
14
+ function getPlatform() {
15
+ const platform = os.platform();
16
+ if (platform === 'darwin') return 'darwin';
17
+ if (platform === 'linux') return 'linux';
18
+ throw new Error(`Unsupported platform: ${platform}`);
19
+ }
20
+
21
+ function getArch() {
22
+ const arch = os.arch();
23
+ if (arch === 'x64') return 'amd64';
24
+ if (arch === 'arm64') return 'arm64';
25
+ throw new Error(`Unsupported architecture: ${arch}`);
26
+ }
27
+
28
+ function httpsGet(url) {
29
+ return new Promise((resolve, reject) => {
30
+ const request = https.get(url, { headers: { 'User-Agent': 'conductor-kit-npm' } }, (response) => {
31
+ if (response.statusCode >= 300 && response.statusCode < 400 && response.headers.location) {
32
+ httpsGet(response.headers.location).then(resolve).catch(reject);
33
+ return;
34
+ }
35
+ if (response.statusCode !== 200) {
36
+ reject(new Error(`HTTP ${response.statusCode}: ${url}`));
37
+ return;
38
+ }
39
+ const chunks = [];
40
+ response.on('data', (chunk) => chunks.push(chunk));
41
+ response.on('end', () => resolve(Buffer.concat(chunks)));
42
+ response.on('error', reject);
43
+ });
44
+ request.on('error', reject);
45
+ });
46
+ }
47
+
48
+ async function getLatestVersion() {
49
+ const url = `https://api.github.com/repos/${REPO_OWNER}/${REPO_NAME}/releases/latest`;
50
+ const data = await httpsGet(url);
51
+ const release = JSON.parse(data.toString());
52
+ return release.tag_name.replace(/^v/, '');
53
+ }
54
+
55
+ async function downloadAndExtract(version, platform, arch, destDir) {
56
+ const assetName = `${REPO_NAME}_${version}_${platform}_${arch}.tar.gz`;
57
+ const url = `https://github.com/${REPO_OWNER}/${REPO_NAME}/releases/download/v${version}/${assetName}`;
58
+
59
+ console.log(`Downloading ${assetName}...`);
60
+ const tarGzData = await httpsGet(url);
61
+
62
+ // Create destination directory
63
+ fs.mkdirSync(destDir, { recursive: true });
64
+
65
+ // Write tar.gz to temp file
66
+ const tempFile = path.join(os.tmpdir(), assetName);
67
+ fs.writeFileSync(tempFile, tarGzData);
68
+
69
+ // Extract using tar command
70
+ console.log('Extracting...');
71
+ execSync(`tar -xzf "${tempFile}" -C "${destDir}"`, { stdio: 'inherit' });
72
+
73
+ // Clean up temp file
74
+ fs.unlinkSync(tempFile);
75
+
76
+ // Ensure binary is executable
77
+ const binaryPath = path.join(destDir, BINARY_NAME);
78
+ if (fs.existsSync(binaryPath)) {
79
+ fs.chmodSync(binaryPath, 0o755);
80
+ }
81
+
82
+ return binaryPath;
83
+ }
84
+
85
+ async function main() {
86
+ // Skip postinstall in CI or if CONDUCTOR_SKIP_POSTINSTALL is set
87
+ if (process.env.CI || process.env.CONDUCTOR_SKIP_POSTINSTALL) {
88
+ console.log('Skipping postinstall in CI environment');
89
+ return;
90
+ }
91
+
92
+ try {
93
+ const platform = getPlatform();
94
+ const arch = getArch();
95
+
96
+ console.log(`Platform: ${platform}, Architecture: ${arch}`);
97
+
98
+ // Get latest version
99
+ const version = await getLatestVersion();
100
+ console.log(`Latest version: ${version}`);
101
+
102
+ // Download to native/ directory in package
103
+ const packageDir = path.join(__dirname, '..');
104
+ const nativeDir = path.join(packageDir, 'native');
105
+
106
+ const binaryPath = await downloadAndExtract(version, platform, arch, nativeDir);
107
+
108
+ console.log(`\nConductor ${version} installed successfully!`);
109
+ console.log(`Binary: ${binaryPath}`);
110
+
111
+ // Run install command to set up skills/commands
112
+ console.log('\nSetting up skills and commands...');
113
+ const installProcess = spawn(binaryPath, ['install', '--mode', 'link', '--repo', nativeDir], {
114
+ stdio: 'inherit',
115
+ });
116
+
117
+ installProcess.on('exit', (code) => {
118
+ if (code === 0) {
119
+ console.log('\nSetup complete! You can now use conductor.');
120
+ console.log('Run "conductor --help" for usage information.');
121
+ } else {
122
+ console.log('\nNote: Auto-install skipped. Run "conductor install" manually if needed.');
123
+ }
124
+ });
125
+
126
+ } catch (error) {
127
+ console.error(`\nWarning: Could not download conductor binary: ${error.message}`);
128
+ console.error('You can install it manually via Homebrew:');
129
+ console.error(' brew install Skyline-23/conductor-kit/conductor-kit');
130
+ // Don't fail the npm install
131
+ process.exit(0);
132
+ }
133
+ }
134
+
135
+ main();
@@ -0,0 +1,227 @@
1
+ ---
2
+ name: conductor
3
+ description: |
4
+ MANDATORY: Load BEFORE calling ANY mcp_conductor_* tools.
5
+
6
+ DO NOT directly call: mcp_conductor_claude, mcp_conductor_codex, mcp_conductor_gemini, mcp_conductor_conductor
7
+ This skill defines the CORRECT way to use conductor tools via role-based delegation.
8
+
9
+ TRIGGERS: sym, symphony, code, analyze, improve, review, debug, fix, refactor, implement, search, explore, plan, assess, audit, optimize, architecture, structure, build, test, deploy
10
+
11
+ REPLACES: Direct mcp_conductor_* calls, Task(Explore), Task(Plan), built-in search/grep agents.
12
+
13
+ Handles: code analysis, project structure, debugging, planning, implementing, refactoring, reviewing, testing, deploying, documentation - ALL code tasks.
14
+ ---
15
+
16
+ # Conductor
17
+
18
+ Host orchestrates; delegates do the work.
19
+
20
+ ---
21
+
22
+ ## Core Rules (non-negotiable)
23
+
24
+ ### 1. DELEGATE FIRST — NO EXCEPTIONS
25
+ **Do NOT use built-in tools (Explore, Grep, Search) when MCP is available.**
26
+
27
+ - Check MCP tools availability FIRST (`mcp__*` tools)
28
+ - ALWAYS prefer MCP delegation over built-in/native tools:
29
+ - WRONG: `Task(subagent_type=Explore)` -> RIGHT: MCP `pathfinder` role
30
+ - WRONG: Built-in search/grep -> RIGHT: MCP `scout` or `pathfinder` role
31
+ - WRONG: Direct analysis -> RIGHT: MCP `sage` role for complex reasoning
32
+ - Run all delegate calls before any action
33
+ - If MCP unavailable → use subagent fallback → **disclose to user**
34
+
35
+ ### 2. SAGE FOR COMPLEX TASKS
36
+ The following MUST be delegated to `sage` (Codex + reasoning):
37
+
38
+ - Architecture decisions / trade-off analysis
39
+ - Root cause debugging
40
+ - Security vulnerability assessment
41
+ - Algorithm design / complexity analysis
42
+ - Refactoring strategy for legacy code
43
+ - Migration planning with risks
44
+
45
+ **Do not attempt deep analysis yourself. Sage first.**
46
+
47
+ ### 3. VERIFY BEFORE TRUST
48
+ Treat all delegate output as untrusted. Verify against:
49
+ - Actual repo code
50
+ - Test results
51
+ - Type checker output
52
+
53
+ ### 4. EXTERNAL CALL ACCOUNTABILITY
54
+ When delegating to external CLIs (gemini, codex, claude via MCP):
55
+
56
+ 1. **Result Summary**: Always summarize the result (1-2 lines) and state how it was used
57
+ 2. **Non-use Justification**: If result is discarded, explain why in 1 line (e.g., "Repo analysis more accurate, external suggestion excluded")
58
+ 3. **Prefer Local When Possible**: When repo data is directly accessible, prefer local analysis unless external model offers clear advantage (state the advantage)
59
+ 4. **Error Handling**: On failure/timeout, notify user immediately and suggest alternatives
60
+ 5. **Transparency**: Include "External calls: [list]" in task summary when any were made
61
+
62
+ **Examples:**
63
+ - "Called sage for architecture review → adopted suggestion to split service layer"
64
+ - "Called pathfinder for file discovery → result outdated, used direct glob instead (repo has newer structure)"
65
+ - "External calls: sage (architecture), scout (docs lookup)"
66
+
67
+ ---
68
+
69
+ ## Activation
70
+
71
+ **This skill activates automatically for all code-related tasks.**
72
+
73
+ Conductor assesses the task and chooses the appropriate mode:
74
+
75
+ | Mode | When | Action |
76
+ |------|------|--------|
77
+ | **Symphony** | `sym` or `symphony` command | Full automation: Search → Plan → Execute → Verify → Cleanup |
78
+ | **Search** | Explore, analyze, investigate, understand | Delegate to `pathfinder` + `sage` via MCP |
79
+ | **Plan** | Design, architect, plan | Read-only planning, no edits |
80
+ | **Implement** | Fix, build, refactor, migrate | MCP-assisted implementation |
81
+ | **Release** | Deploy, publish, release | Release checklist + validation |
82
+
83
+ **Decision flow:**
84
+ 1. Skill loads → Conductor activates
85
+ 2. Assess task complexity
86
+ 3. Simple task → execute directly
87
+ 4. Complex/specialized → delegate via MCP
88
+
89
+ ---
90
+
91
+ ## Symphony Mode
92
+
93
+ When triggered, respond **immediately** with:
94
+
95
+ ```
96
+ SYMPHONY MODE ENABLED!
97
+ ```
98
+
99
+ Then execute staged delegation:
100
+
101
+ **Stage 1 — Discovery**
102
+ - `pathfinder`: file structure, entrypoints, patterns
103
+
104
+ **Stage 2 — Analysis**
105
+ - `sage`: deep reasoning on findings (MANDATORY)
106
+ - `scout`: verify against docs/best practices
107
+
108
+ **Stage 3 — Review**
109
+ - Additional roles as needed
110
+
111
+ **Then:** Search → Plan → Execute → Verify → Cleanup
112
+
113
+ Do NOT proceed until all delegates complete.
114
+
115
+ ---
116
+
117
+ ## Roles → Delegation
118
+
119
+ **Available roles** (defined in `~/.conductor-kit/conductor.json`):
120
+
121
+ | Role | When to use |
122
+ |------|-------------|
123
+ | `sage` | Complex reasoning, architecture, security |
124
+ | `pathfinder` | File discovery, codebase navigation, project structure |
125
+ | `scout` | Doc lookup, web search, best practices |
126
+ | `pixelator` | Web UI/UX, React/Vue/CSS, responsive design |
127
+ | `author` | README, docs, changelogs |
128
+ | `vision` | Screenshot/image analysis |
129
+
130
+ ### How to Delegate
131
+
132
+ **Step 1: Get role mappings** via CLI (avoids config file permission issues):
133
+ ```bash
134
+ conductor roles --json
135
+ ```
136
+
137
+ **Step 2: Find the MCP tool** from your available tools list:
138
+ - `cli: "codex"` → find tool containing `codex-cli` and `prompt` (e.g., `mcp__codex-cli__codex_prompt`)
139
+ - `cli: "gemini"` → find tool containing `gemini-cli` and `prompt` (e.g., `mcp__gemini-cli__gemini_prompt`)
140
+ - `cli: "claude"` → find tool containing `claude-cli` and `prompt` (e.g., `mcp__claude-cli__claude_prompt`)
141
+
142
+ **Step 3: Call with the configured `model`:**
143
+ ```json
144
+ { "prompt": "...", "model": "<EXACT model value from conductor roles>" }
145
+ ```
146
+
147
+ **CRITICAL: Do NOT omit the model. Do NOT guess or invent model names. Use EXACTLY what conductor roles returns.**
148
+
149
+ **Fallback:** If MCP tool not found → built-in subagent → disclose to user
150
+
151
+ ### Delegation Prompt Template
152
+ ```
153
+ Goal: [one-line task]
154
+ Role: [role name]
155
+ Constraints: [limits, requirements]
156
+ Files: [relevant paths]
157
+ Output format: markdown with ## Summary, ## Confidence, ## Findings, ## Suggested Actions
158
+ ```
159
+
160
+ ---
161
+
162
+ ## Operating Loop
163
+
164
+ ```
165
+ Search → Plan → Execute → Verify → Cleanup
166
+ ```
167
+
168
+ ### Search
169
+ - Run parallel searches (multiple angles)
170
+ - Collect file paths + key facts
171
+ - Evidence over opinions
172
+
173
+ ### Plan
174
+ - **READ-ONLY** — no edits allowed
175
+ - Output 3–6 steps with success criteria
176
+ - Ask ONE question if blocked, otherwise proceed
177
+
178
+ ### Execute
179
+ - Minimal surgical edits
180
+ - No type-safety hacks (`as any`, `@ts-ignore`)
181
+ - One logical change at a time
182
+
183
+ ### Verify
184
+ - Run checks: test → typecheck → lint
185
+ - If unrelated failure, report but don't fix
186
+
187
+ ### Cleanup
188
+ - Summarize outcomes
189
+ - Prune stale context
190
+ - List next actions if any
191
+
192
+ ---
193
+
194
+ ## Mode-Specific Behavior
195
+
196
+ ### Search Mode
197
+ - **Use MCP `pathfinder` role** for codebase discovery (NOT built-in Explore agent)
198
+ - Parallel codebase + external doc searches via MCP delegation
199
+ - Output: findings with file references
200
+
201
+ ### Plan Mode
202
+ - **No writes/edits/commits**
203
+ - Output: assumptions, constraints, ordered steps
204
+
205
+ ### Implement Mode
206
+ - TDD if repo has tests
207
+ - Rollback when stuck (don't accumulate bad edits)
208
+
209
+ ### Release Mode
210
+ - Checklist: version bump, changelog, validation, secret scan
211
+
212
+ ---
213
+
214
+ ## Safety (non-negotiable)
215
+
216
+ - **No commit/push** unless explicitly asked
217
+ - **No secrets** in commits (check for .env, credentials)
218
+ - **No destructive commands** unless explicitly confirmed
219
+
220
+ ---
221
+
222
+ ## References
223
+
224
+ For detailed specifications:
225
+ - `references/roles.md` — Role routing and combinations
226
+ - `references/delegation.md` — Context budget, failure handling
227
+ - `references/formats.md` — JSON output schemas
@@ -0,0 +1,110 @@
1
+ # Delegation Reference
2
+
3
+ ## Core Principle
4
+
5
+ **Delegate first, act later.** Never search, plan, or edit before delegation completes.
6
+
7
+ ## Context Budget
8
+
9
+ Control how much context to pass to delegates based on task scope.
10
+
11
+ | Task Size | Context Strategy | Max Lines |
12
+ |-----------|------------------|-----------|
13
+ | Small | Single relevant file | ~500 |
14
+ | Medium | File + direct imports + related tests | ~2000 |
15
+ | Large | Summary + key sections + file list only | ~1000 |
16
+
17
+ ### Context Selection Priority
18
+ 1. Files directly mentioned in the task
19
+ 2. Files discovered during search phase
20
+ 3. Test files for touched code
21
+ 4. Import/dependency files (one level)
22
+ 5. Config files if behavior-relevant
23
+
24
+ ### Trimming Strategy
25
+ - Remove boilerplate (license headers, long comments)
26
+ - Collapse repetitive code (show first + "... N more similar")
27
+ - Summarize large data structures
28
+ - Keep function signatures, trim implementations if needed
29
+
30
+ ## Delegation Contract
31
+
32
+ ### Input Requirements
33
+ Every delegate call MUST include:
34
+ ```json
35
+ {
36
+ "goal": "one-line task description",
37
+ "constraints": ["constraint1", "constraint2"],
38
+ "files": ["path/to/file1.ts", "path/to/file2.ts"],
39
+ "context": "relevant code snippets or summaries",
40
+ "output_format": "json|markdown|patch"
41
+ }
42
+ ```
43
+
44
+ ### Output Requirements
45
+ Delegate MUST return at least one of:
46
+ - Concrete commands to run
47
+ - File paths + exact edits (line numbers)
48
+ - Checklist with pass/fail criteria
49
+
50
+ ## Failure Handling
51
+
52
+ | Failure Type | Action |
53
+ |--------------|--------|
54
+ | Timeout (>120s) | Retry once with 50% context |
55
+ | Parse error | Ask delegate to reformat as JSON |
56
+ | Empty response | Retry with simpler prompt |
57
+ | Inconsistent output | Log conflict, ask user to verify |
58
+ | MCP unavailable | Use subagent fallback, disclose it |
59
+
60
+ ### Retry Policy
61
+ ```
62
+ max_retries: 1
63
+ backoff: 500ms
64
+ context_reduction: 50% on timeout
65
+ ```
66
+
67
+ ### Fallback Chain
68
+ 1. MCP tool (primary)
69
+ 2. Subagent with same role config (fallback)
70
+ 3. Ask user to enable MCP (last resort)
71
+
72
+ ## Parallel vs Sequential
73
+
74
+ | Delegate Type | Execution |
75
+ |---------------|-----------|
76
+ | Read-only (pathfinder, scout) | Parallel OK |
77
+ | Analysis (sage) | Parallel OK |
78
+ | Write-capable (patch output) | Sequential only |
79
+
80
+ ### Write-capable Rules
81
+ - One write delegate at a time
82
+ - Verify output before next delegate
83
+ - Host applies edits (delegate returns patch only)
84
+ - If delegate attempts direct edit, stop and re-run as patch-only
85
+
86
+ ## Delegation Sequence
87
+
88
+ ### Standard Task
89
+ ```
90
+ 1. pathfinder → find relevant files
91
+ 2. [parallel] scout + sage → analyze
92
+ 3. synthesize findings
93
+ 4. execute changes
94
+ 5. verify
95
+ ```
96
+
97
+ ### Ultrawork Mode (staged)
98
+ ```
99
+ Stage 1 (Discovery):
100
+ - pathfinder: file structure + entrypoints
101
+
102
+ Stage 2 (Analysis):
103
+ - sage: deep reasoning (mandatory for complex tasks)
104
+ - scout: doc/pattern verification
105
+
106
+ Stage 3 (Review):
107
+ - additional roles as configured
108
+
109
+ Then: plan → execute → verify → cleanup
110
+ ```
@@ -0,0 +1,180 @@
1
+ # Output Format Standards
2
+
3
+ All delegate outputs should follow these markdown formats for consistent parsing and readability.
4
+
5
+ ## Standard Response Format
6
+
7
+ ```
8
+ ## Summary
9
+ one-line conclusion
10
+
11
+ ## Confidence
12
+ high|medium|low
13
+
14
+ ## Findings
15
+ - path/to/file.ts:42 - description (severity: critical|high|medium|low)
16
+ - path/to/other.ts:10 - another issue (severity: medium)
17
+
18
+ ## Suggested Actions
19
+ 1. [edit] path/to/file.ts - what to change
20
+ 2. [create] path/to/new.ts - what to create
21
+ 3. [run] npm test - verification command
22
+ ```
23
+
24
+ ## Analysis Response
25
+
26
+ For `sage` and analytical tasks:
27
+
28
+ ```
29
+ ## Summary
30
+ one-line conclusion
31
+
32
+ ## Confidence
33
+ high|medium|low
34
+
35
+ ## Problem
36
+ problem description
37
+
38
+ ## Root Cause
39
+ identified cause
40
+
41
+ ## Impact
42
+ affected areas and scope
43
+
44
+ ## Trade-offs
45
+
46
+ ### Option A
47
+ - Pros: benefit 1, benefit 2
48
+ - Cons: drawback 1, drawback 2
49
+
50
+ ### Option B
51
+ - Pros: benefit 1, benefit 2
52
+ - Cons: drawback 1, drawback 2
53
+
54
+ ## Recommendation
55
+ recommended approach
56
+
57
+ ## Reasoning
58
+ step-by-step reasoning for the recommendation
59
+ ```
60
+
61
+ ## Search Response
62
+
63
+ For `pathfinder` and `scout` tasks:
64
+
65
+ ```
66
+ ## Summary
67
+ what was found
68
+
69
+ ## Confidence
70
+ high|medium|low
71
+
72
+ ## Results
73
+ - path/to/file.ts:10-25 (relevance: high)
74
+ code or text excerpt
75
+ why this is relevant
76
+
77
+ - path/to/other.ts:50 (relevance: medium)
78
+ another excerpt
79
+ relevance note
80
+
81
+ ## Patterns
82
+ - identified pattern 1
83
+ - identified pattern 2
84
+
85
+ ## Next Steps
86
+ - suggested follow-up search 1
87
+ - suggested follow-up search 2
88
+ ```
89
+
90
+ ## Patch Response
91
+
92
+ For edit suggestions:
93
+
94
+ ```
95
+ ## Summary
96
+ what changes are proposed
97
+
98
+ ## Confidence
99
+ high|medium|low
100
+
101
+ ## Patches
102
+
103
+ ### path/to/file.ts
104
+
105
+ #### Lines 10-12
106
+ Before:
107
+ original line 1
108
+ original line 2
109
+
110
+ After:
111
+ new line 1
112
+ new line 2
113
+
114
+ Reason: what this change does
115
+
116
+ ### path/to/other.ts
117
+
118
+ #### Lines 5-7
119
+ Before:
120
+ old code
121
+
122
+ After:
123
+ new code
124
+
125
+ Reason: explanation
126
+
127
+ ## Verification
128
+ - npm test
129
+ - npm run typecheck
130
+ Expected: all pass
131
+ ```
132
+
133
+ ## Checklist Response
134
+
135
+ For review and validation tasks:
136
+
137
+ ```
138
+ ## Summary
139
+ overall assessment
140
+
141
+ ## Confidence
142
+ high|medium|low
143
+
144
+ ## Checklist
145
+ - [PASS] check description - explanation
146
+ - [FAIL] check description - path/to/file.ts:42 - what failed
147
+ - [WARN] check description - potential issue
148
+ - [SKIP] check description - why skipped
149
+
150
+ ## Score
151
+ Passed: 5
152
+ Failed: 1
153
+ Warnings: 2
154
+ ```
155
+
156
+ ## Confidence Levels
157
+
158
+ | Level | Meaning | When to use |
159
+ |-------|---------|-------------|
160
+ | high | Strong evidence, clear conclusion | Verified against code/tests |
161
+ | medium | Reasonable inference, some uncertainty | Based on patterns, not verified |
162
+ | low | Speculation, needs verification | Incomplete context, edge cases |
163
+
164
+ ## Error Response
165
+
166
+ When delegate cannot complete:
167
+
168
+ ```
169
+ ## Error
170
+ type: timeout|parse_error|insufficient_context|unsupported
171
+
172
+ ## Message
173
+ description of failure
174
+
175
+ ## Partial Result
176
+ any partial findings if available
177
+
178
+ ## Suggestion
179
+ how to recover or retry
180
+ ```