gemini-helper-friend 2.0.5 → 2.0.7

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.
@@ -1,72 +1,18 @@
1
1
  # Gemini Helper Friend MCP - Subagent Configuration
2
- # YAML for metadata only - prompt templates in MDX files
3
- # Version: 2.1 - Enhanced descriptions with forcing patterns
4
- # Optimization: Detailed descriptions that force high-quality, structured prompts
5
-
6
- version: "2.1"
2
+ version: "2.2"
7
3
 
8
4
  metadata:
9
5
  name: "gemini-helper-friend-mcp"
10
6
  displayName: "Gemini - Helper Friend MCP"
11
- description: "Autonomous AI helper with specialized task types for code review, research, and testing"
12
-
13
- # ============================================================================
14
- # SHARED PRINCIPLES - Apply to ALL task types
15
- # ============================================================================
16
- shared:
17
- core_philosophy: |
18
- These subagents are designed for COMPREHENSIVE task execution through specialized modes.
19
- Vague prompts = vague results. Detailed prompts = actionable insights.
20
-
21
- **CRITICAL:** The quality of output is DIRECTLY proportional to prompt detail.
22
- - Short prompts (50 chars) → Generic, unhelpful responses
23
- - Medium prompts (200 chars) → Partially useful responses
24
- - Detailed prompts (500+ chars) → Specific, actionable insights
25
-
26
- principles:
27
- context_is_king: |
28
- The subagent has NO context about your task except what you provide.
29
- Assume it knows NOTHING about your codebase, your goals, or your constraints.
30
- Provide ALL relevant context - files, requirements, what you've tried, what failed.
31
-
32
- specificity_matters: |
33
- "Check if it's done" → USELESS
34
- "Verify Task X against requirements A, B, C using files X, Y, Z" → ACTIONABLE
35
-
36
- structured_input: |
37
- Follow the template for each task type. Each section exists for a reason.
38
- Skipping sections = missing critical context = suboptimal results.
39
-
40
- workflow_pattern: |
41
- MANDATORY for all subagent calls:
42
- 1. GATHER CONTEXT → Collect all relevant files, requirements, constraints
43
- 2. STRUCTURE PROMPT → Follow the task-specific template (ALL sections!)
44
- 3. CALL SUBAGENT → Execute with async=true (default) or async=false for quick tasks
45
- 4. CHECK STATUS → Poll with check_subagent_task until completed
46
- 5. REVIEW RESULT → Evaluate output, take action on recommendations
47
-
48
- Why this works: Structured context enables the subagent to provide
49
- specific, actionable recommendations instead of generic advice.
50
-
51
- # ============================================================================
52
- # GLOBAL SETTINGS
53
- # ============================================================================
7
+ description: "Autonomous AI helper with specialized task types"
54
8
 
55
9
  settings:
56
10
  defaults:
57
- model: "" # Uses fallback chain (see below)
11
+ model: ""
58
12
  yolo_mode: true
59
13
  append_instructions: true
60
-
61
- # Model fallback chain - tries in order until one succeeds
62
- # 1. gemini-3-flash-preview (fastest, newest)
63
- # 2. gemini-3-pro-preview (more capable)
64
- # 3. gemini-3-pro (stable)
65
- # 4. gemini-2.5-flash (reliable fallback)
66
-
67
14
  cli:
68
15
  command: "gemini"
69
- # Per gemini --help: use positional prompt (--prompt is deprecated)
70
16
  flags:
71
17
  yolo: "--yolo"
72
18
  model: "--model"
@@ -75,1096 +21,92 @@ settings:
75
21
  approval_mode: "--approval-mode"
76
22
  include_directories: "--include-directories"
77
23
 
78
- # ============================================================================
79
- # TASK TYPE DEFINITIONS (Metadata Only - Templates in MDX)
80
- # ============================================================================
81
-
82
24
  task_types:
83
-
84
25
  completion-inspector:
85
26
  display_name: "Completion Inspector"
86
- description: |
87
- **🔍 CTO-LEVEL CODE INSPECTOR - Verifies if task is TRULY 100% complete**
88
-
89
- This subagent performs exhaustive verification that your implementation meets ALL requirements,
90
- follows existing patterns, and leaves no cleanup debt.
91
-
92
- **What it analyzes:**
93
- - Git diff (line-by-line change review against requirements)
94
- - Codebase patterns (consistency with existing code style)
95
- - Duplicate detection (find similar code that should be abstracted)
96
- - Quality assessment (identify cleanup opportunities)
97
- - Requirement coverage (map changes to acceptance criteria)
98
-
99
- **Output includes:**
100
- - Completion percentage (0-100%)
101
- - Requirements checklist (✅ met / ❌ not met)
102
- - Quality issues found
103
- - Specific action items with file locations
104
-
27
+ description: "Verifies if task is 100% complete - analyzes git diff, patterns, requirements coverage"
105
28
  category: "verification"
106
- default_model: "" # Auto-select
107
29
  template_file: "completion-inspector.mdx"
108
-
109
- tool_limits:
110
- sequentialthinking_max: 30
111
- sequentialthinking_min: 15
112
- warpgrep_max: 20
113
- warpgrep_min: 8
114
- deep_research_max: 30
115
- web_search_keywords_max: 100
116
-
30
+
117
31
  helper-friend:
118
32
  display_name: "Helper Friend"
119
- description: |
120
- **🧠 RESEARCH COMPANION - Deep analysis, bug investigation, informed decisions**
121
-
122
- This subagent conducts comprehensive research using codebase search, web research,
123
- deep research with file attachments, and community consensus analysis.
124
-
125
- **What it does:**
126
- - Codebase search (understand code structure, find similar patterns)
127
- - Web research (best practices, documentation, tutorials)
128
- - Deep research (technical questions with YOUR code as context)
129
- - Reddit consensus (community experiences, real-world feedback)
130
-
131
- **Use cases:**
132
- - 🐛 Bug investigation & root cause analysis
133
- - 🏗️ Architecture & technology decisions
134
- - 📚 Codebase understanding & discovery
135
- - ✅ Best practices & pattern research
136
- - 🔬 Pre-implementation research
137
-
138
- **Output includes:**
139
- - Research findings with sources
140
- - Recommendations with trade-offs
141
- - Code examples where applicable
142
- - Next steps and action items
143
-
33
+ description: "Research companion - codebase search, web research, deep research, community analysis"
144
34
  category: "research"
145
- default_model: "" # Auto-select
146
35
  template_file: "helper-friend.mdx"
147
-
148
- tool_limits:
149
- sequentialthinking_max: 30
150
- sequentialthinking_min: 10
151
- warpgrep_max: 20
152
- warpgrep_min: 4
153
- deep_research_questions_max: 100
154
- deep_research_per_call: 10
155
- web_search_keywords_max: 500
156
- web_search_per_call: 50
157
- scrape_urls_max: 100
158
- scrape_per_call: 30
159
- reddit_posts_max: 100
160
- reddit_per_call: 50
161
-
36
+
162
37
  manual-tester:
163
38
  display_name: "Manual Tester"
164
- description: |
165
- **🧪 QA ENGINEER - Tests implementation using REAL Chrome browser and terminal**
166
-
167
- This subagent manually tests your implementation like a human QA engineer,
168
- using Chrome DevTools MCP for browser interactions and terminal for API testing.
169
-
170
- **What it tests:**
171
- - UI interactions (clicks, forms, navigation)
172
- - Visual verification (screenshots, layout)
173
- - Console monitoring (JS errors, warnings)
174
- - Network inspection (API calls, responses)
175
- - API testing (curl commands, response validation)
176
- - Responsive design (multiple viewport sizes)
177
-
178
- **Output includes:**
179
- - Test results (✅ PASS / ❌ FAIL for each test case)
180
- - Screenshots of key states
181
- - Console errors captured
182
- - API response verification
183
- - Reproduction steps for failures
184
- - Recommendations for fixes
185
-
39
+ description: "QA engineer - tests with real Chrome browser, API testing, screenshots"
186
40
  category: "testing"
187
- default_model: "" # Auto-select
188
41
  template_file: "manual-tester.mdx"
189
-
190
- tool_limits:
191
- sequentialthinking_max: 30
192
- sequentialthinking_min: 15
193
- browser_interactions_max: 50
194
- viewports_max: 5
195
- screenshots_max: 30
196
- api_calls_max: 50
197
- warpgrep_max: 10
198
-
42
+
199
43
  manual:
200
44
  display_name: "Manual Executor"
201
- description: |
202
- **🔨 GENERAL-PURPOSE EXECUTOR - Implements, fixes, creates, and completes work**
203
-
204
- This subagent is a versatile executor that can handle ANY task that doesn't fit
205
- the specialized categories. Unlike the other subagents (inspector, researcher, tester),
206
- this one EXECUTES and COMPLETES work.
207
-
208
- **What it does:**
209
- - Implements features (writes code, creates files)
210
- - Fixes bugs (debugs, patches, tests)
211
- - Refactors code (restructures, improves)
212
- - Sets up projects (initializes, configures)
213
- - Modifies existing code (updates, enhances)
214
- - Runs commands (tests, builds, deploys)
215
-
216
- **Use cases:**
217
- - 🔨 Feature implementation from scratch
218
- - 🐛 Bug fixes with code changes
219
- - ♻️ Code refactoring and restructuring
220
- - 🏗️ Project setup and configuration
221
- - ✏️ Code modifications and enhancements
222
- - 🔧 General development tasks
223
-
224
- **Output includes:**
225
- - Summary of changes made
226
- - Files created/modified with details
227
- - Commands executed and results
228
- - Verification of requirements met
229
- - Notes and recommendations
230
-
45
+ description: "General executor - implements features, fixes bugs, runs commands"
231
46
  category: "execution"
232
- default_model: "" # Auto-select
233
47
  template_file: "manual.mdx"
234
-
235
- tool_limits:
236
- sequentialthinking_max: 30
237
- sequentialthinking_min: 8
238
- warpgrep_max: 20
239
- warpgrep_min: 3
240
- deep_research_max: 30
241
- deep_research_per_call: 5
242
- web_search_keywords_max: 100
243
- web_search_per_call: 10
244
- file_operations_max: 50
245
- terminal_commands_max: 30
246
-
247
- # ============================================================================
248
- # TOOL DEFINITION (Single consolidated tool)
249
- # ============================================================================
250
48
 
251
49
  tools:
252
50
  - name: check_subagent_task
253
- category: status
254
- capability: query
255
-
256
- description: |
257
- **🔔 CHECK IF TASK IS READY - Notification-Aware Status Check**
258
-
259
- Check if an async subagent task is ready to retrieve results.
260
-
261
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
262
- 📣 MCP NOTIFICATIONS (Automatic!)
263
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
264
-
265
- **You will receive automatic notifications when tasks complete!**
266
-
267
- When a task finishes, the server sends:
268
- - `notifications/resources/list_changed` → New result resource available
269
- - `notifications/resources/updated` → Specific task resource updated
270
-
271
- **If your client supports MCP notifications:**
272
- - You'll see "🎉 Task 34567 is READY!" in the resources list
273
- - Just read the `task://34567` resource to get the result
274
- - No polling needed!
275
-
276
- **If your client doesn't support notifications:**
277
- - Use this tool to poll the task status
278
- - Check every 5-10 seconds until `status: completed`
279
-
280
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
281
- 📚 RESOURCES (Best Practice!)
282
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
283
-
284
- **Completed tasks are also exposed as MCP Resources:**
285
-
286
- - **URI:** `task://34567`
287
- - **Name:** `✅ Task 34567 - helper-friend`
288
- - **Description:** `🎉 Task 34567 is READY! Result available.`
289
-
290
- You can read the resource directly instead of using this tool:
291
- ```
292
- Read resource: task://34567
293
- ```
294
-
295
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
296
- 📊 TASK STATES
297
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
298
-
299
- - `pending` - Task queued, not yet started
300
- - `running` - 🔄 Task in progress (check back soon!)
301
- - `completed` - ✅ **READY!** Result available
302
- - `failed` - ❌ Task failed (error message available)
303
- - `not_found` - Invalid task ID or expired (1 hour TTL)
304
-
305
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
306
- 📋 RESPONSE EXAMPLES
307
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
308
-
309
- **🔄 Still Running:**
310
- ```json
311
- {
312
- "task_id": 34567,
313
- "status": "running",
314
- "progress": 45,
315
- "task_type": "helper-friend",
316
- "started_at": "2024-01-15T10:30:00Z"
317
- }
318
- ```
319
- → Wait and check again, or wait for notification!
320
-
321
- **✅ READY - Task Completed:**
322
- ```json
323
- {
324
- "task_id": 34567,
325
- "status": "completed",
326
- "result": "## Helper Friend Result\n\n...",
327
- "task_type": "helper-friend",
328
- "completed_at": "2024-01-15T10:35:00Z",
329
- "duration_seconds": 300
330
- }
331
- ```
332
- → 🎉 Result is in the response! Also available as resource `task://34567`
333
-
334
- **❌ Task Failed:**
335
- ```json
336
- {
337
- "task_id": 34567,
338
- "status": "failed",
339
- "error": "API quota exceeded",
340
- "task_type": "helper-friend"
341
- }
342
- ```
343
-
51
+ description: "Check async task status. Poll until `status: completed`, then read `result`."
344
52
  parameters:
345
53
  task_ids:
346
54
  type: array
347
55
  required: true
348
- items:
349
- type: integer
350
- validation:
351
- minItems: 1
352
- description: |
353
- **[REQUIRED] Array of 5-digit task IDs**
354
-
355
- Pass one or more task IDs returned by `gemini-subagent` when called with `async: true`.
356
-
357
- **Examples:**
358
- - Single task: `[34567]`
359
- - Multiple tasks: `[34567, 34568, 34569]`
360
-
361
- **Smart Behavior:**
362
- - Completed/failed tasks are shown FIRST with full results
363
- - Running/pending tasks are listed in header/footer as "Waiting Tasks"
364
- - Only call this with task IDs you haven't received results for yet
365
- - Already-completed task results are displayed immediately (no re-fetching)
366
-
367
- **Output Format:**
368
- - Header: `Waiting Tasks: 10003, 10004` (if any incomplete)
369
- - Each completed task: `# Task ID: 0001` H1 heading with result
370
- - Footer: Same waiting tasks list
371
-
372
- **Pro tip:** If your client supports notifications, you'll see completed
373
- tasks appear in the resources list automatically!
56
+ description: "Array of 5-digit task IDs. Example: `[34567]`"
374
57
 
375
58
  - name: gemini-subagent
376
- category: execution
377
- capability: autonomous
378
-
379
59
  description: |
380
- **🤖 GEMINI SUBAGENT - Specialized Task Execution**
381
-
382
- Single unified tool with three specialized modes via strict task_type enum.
383
-
384
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
385
- 📋 TASK TYPE ENUM (Required - NO STRINGS, NO GUESSING!)
386
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
387
-
388
- Must be EXACTLY one of these four values:
389
-
390
- **1. `completion-inspector`** - CTO-Level Code Review
391
-
392
- **Purpose:** Verifies if a task is TRULY 100% complete
393
-
394
- **Uses:**
395
- - Git diff analysis (line-by-line change review)
396
- - Codebase search (find duplicates, missed abstractions)
397
- - Pattern detection (consistency with existing code)
398
- - Quality assessment (cleanup opportunities)
399
-
400
- **When to use:**
401
- - ✅ After implementation, before marking "done"
402
- - ✅ After major refactoring or feature work
403
- - ✅ Before committing final changes
404
- - ✅ When you suspect cleanup is needed
405
-
406
- **When NOT to use:**
407
- - ❌ Task clearly still in progress
408
- - ❌ Haven't made any changes yet
409
- - ❌ Simple one-line changes
410
-
411
- **Output:** Completion %, requirements met/not met, quality issues, action items
412
-
413
- **Model:** Auto-select (Gemini CLI chooses best)
414
-
415
- ---
416
-
417
- **2. `helper-friend`** - Research Companion
418
-
419
- **Purpose:** Deep analysis, bug investigation, informed decision-making
420
-
421
- **Uses:**
422
- - Codebase search (understand code structure)
423
- - Web research (best practices, documentation)
424
- - Deep research (technical questions with file attachments)
425
- - Reddit consensus (community experiences)
426
-
427
- **When to use:**
428
- - ✅ Bug investigation & root cause analysis
429
- - ✅ Architecture & technology decisions
430
- - ✅ Codebase understanding & discovery
431
- - ✅ Best practices & pattern research
432
- - ✅ Pre-implementation research
433
-
434
- **When NOT to use:**
435
- - ❌ Already know what to do, just need to code
436
- - ❌ Simple questions you can answer yourself
437
- - ❌ Tasks needing immediate action, not research
438
-
439
- **Output:** Research findings, recommendations, trade-offs, sources
440
-
441
- **Model:** Auto-select (Gemini CLI chooses best)
442
-
443
- ---
444
-
445
- **3. `manual-tester`** - QA Engineer with Real Browser
446
-
447
- **Purpose:** Tests if implementation actually WORKS using real Chrome browser
448
-
449
- **Uses:**
450
- - Chrome DevTools MCP (real browser interactions)
451
- - Terminal/curl (API testing)
452
- - Screenshots (visual verification)
453
- - Console monitoring (JS error detection)
454
- - Network inspection (API call verification)
455
-
456
- **When to use:**
457
- - ✅ After completion-inspector confirms 100% code complete
458
- - ✅ Frontend changes need testing
459
- - ✅ Backend/API changes need testing
460
- - ✅ Full flow verification
461
- - ✅ Responsive design verification
462
-
463
- **When NOT to use:**
464
- - ❌ Code isn't complete yet
465
- - ❌ No user-facing changes to test
466
- - ❌ Pure refactoring with no behavior changes
467
-
468
- **Output:** Test report with pass/fail, reproduction steps, screenshots, console errors
469
-
470
- **Model:** Auto-select (Gemini CLI chooses best)
471
-
472
- ---
473
-
474
- **4. `manual`** - General-Purpose Executor
475
-
476
- **Purpose:** Implements, fixes, creates, and completes ANY task
477
-
478
- **Uses:**
479
- - File operations (read, write, edit)
480
- - Terminal commands (test, build, install)
481
- - Codebase search (understand existing code)
482
- - Research tools (when external knowledge needed)
483
-
484
- **When to use:**
485
- - ✅ Feature implementation from scratch
486
- - ✅ Bug fixes with code changes
487
- - ✅ Code refactoring and restructuring
488
- - ✅ Project setup and configuration
489
- - ✅ General development tasks
490
-
491
- **When NOT to use:**
492
- - ❌ Only need inspection (use completion-inspector)
493
- - ❌ Only need research (use helper-friend)
494
- - ❌ Only need testing (use manual-tester)
495
-
496
- **Output:** Summary of changes, files modified, verification results
497
-
498
- **Model:** Auto-select (Gemini CLI chooses best)
499
-
500
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
501
- ⚙️ HOW IT WORKS
502
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
503
-
504
- 1. You select task_type enum (strict validation)
505
- 2. System loads corresponding MDX template
506
- 3. Merges template + your prompt
507
- 4. Executes: `gemini --yolo -p "[merged_prompt]"`
508
- 5. Returns specialized result
509
-
510
- **No shell commands, no intermediate steps** - Pure CLI-to-prompt translation.
60
+ Gemini subagent with 4 task types:
61
+ - `completion-inspector`: Verify task completion (git diff, patterns, requirements)
62
+ - `helper-friend`: Research (codebase, web, docs, community)
63
+ - `manual-tester`: QA testing (browser, API, screenshots)
64
+ - `manual`: General executor (implement, fix, run commands)
511
65
 
512
66
  parameters:
513
67
  task_type:
514
68
  type: string
515
69
  required: true
516
- validation:
517
- pattern: "^(completion-inspector|helper-friend|manual-tester|manual)$"
518
- description: |
519
- **🎯 [REQUIRED] TASK TYPE SELECTOR - Choose Your Specialist**
520
-
521
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
522
- ⚠️ STRICT ENUM - Must be EXACTLY one of these four values!
523
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
524
-
525
- **1️⃣ `completion-inspector`** - CTO-Level Code Auditor
526
-
527
- **Use when:** You think your task is done and need verification
528
- **What it does:** Analyzes git diff, checks patterns, finds issues
529
- **Output:** Completion %, requirements checklist, action items
530
-
531
- ✅ Use for: After implementation, before PR, after refactoring
532
- ❌ Skip if: Still coding, no changes yet, trivial fixes
533
-
534
- ---
535
-
536
- **2️⃣ `helper-friend`** - Research & Investigation Expert
537
-
538
- **Use when:** You need research, analysis, or decision support
539
- **What it does:** Searches codebase, web, docs, community
540
- **Output:** Findings, recommendations, trade-offs, sources
541
-
542
- ✅ Use for: Bug investigation, architecture decisions, learning patterns
543
- ❌ Skip if: You already know what to do, simple questions
544
-
545
- ---
546
-
547
- **3️⃣ `manual-tester`** - QA Engineer with Real Browser
548
-
549
- **Use when:** Implementation is complete and needs testing
550
- **What it does:** Browser testing, API testing, screenshots
551
- **Output:** Test results, failures, screenshots, console errors
552
-
553
- ✅ Use for: UI testing, API testing, integration testing
554
- ❌ Skip if: Code not ready, no user-facing changes, pure refactor
555
-
556
- ---
557
-
558
- **4️⃣ `manual`** - General-Purpose Executor
559
-
560
- **Use when:** You need to implement, fix, create, or complete a task
561
- **What it does:** Executes file operations, terminal commands, codebase search, and research tools
562
- **Output:** Summary of changes, files modified, verification results
563
-
564
- ✅ Use for: Feature implementation, bug fixes, code refactoring, project setup, and general development tasks
565
- ❌ Skip if: Only need inspection, research, or testing
566
-
567
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
568
- 🔄 RECOMMENDED WORKFLOW
569
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
570
-
571
- ```
572
- 1. Research phase → helper-friend (understand problem)
573
- 2. Implementation → [your coding work]
574
- 3. Verification → completion-inspector (is it done?)
575
- 4. Testing → manual-tester (does it work?)
576
- 5. Done → PR/commit
577
- ```
578
-
579
- **VALIDATION:** Server rejects invalid task types immediately.
580
- The selected type loads a specialized MDX template optimized for that task.
70
+ description: "One of: `completion-inspector`, `helper-friend`, `manual-tester`, `manual`"
581
71
 
582
72
  prompt:
583
73
  type: string
584
74
  required: true
585
- validation:
586
- minLength: 20
587
75
  description: |
588
- **🔥🔥🔥 [REQUIRED] YOUR TASK-SPECIFIC PROMPT - MINIMUM 500-1000 WORDS EXPECTED 🔥🔥🔥**
589
-
590
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
591
- ⚠️ CRITICAL: THE SUBAGENT IS COMPLETELY BLIND WITHOUT YOUR CONTEXT
592
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
593
-
594
- The subagent has **ZERO** context about:
595
- - Your codebase structure
596
- - Your project goals
597
- - Your tech stack
598
- - Your constraints
599
- - What you've already tried
600
- - What files exist
601
- - What the task even is
602
-
603
- **YOU MUST PROVIDE EVERYTHING.** Assume you're explaining to a brilliant
604
- engineer who just joined the team 5 minutes ago. They're smart but they
605
- know NOTHING about your project.
606
-
607
- **For manual-tester, provide:**
608
- - Frontend URL (MANDATORY!)
609
- - Backend URL (if applicable)
610
- - Auth credentials
611
- - Feature description
612
- - Expected behaviors
613
- - Test data
614
- - Edge cases to test
615
-
616
- **For manual, provide:**
617
- - Clear task description
618
- - Requirements or acceptance criteria
619
- - Relevant file paths or context
620
- - Any constraints or preferences
621
- - Expected outcome
622
-
623
- Minimum 20 characters required.
624
- PROVIDE EVERYTHING.** Assume you're explaining to a brilliant
625
- engineer who just joined the team 5 minutes ago. They're smart but they
626
- know NOTHING about your project.
627
-
628
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
629
- 📊 QUALITY SCALE - BE BRUTALLY HONEST WITH YOURSELF
630
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
631
-
632
- **WORD COUNT → QUALITY LEVEL → WHAT YOU'LL GET**
633
-
634
- **< 50 words** → 💀 GARBAGE
635
- - "Check if done" / "Fix the bug" / "Test login"
636
- - Response: Generic platitudes, wastes everyone's time
637
- - You're better off not calling the subagent at all
638
-
639
- **50-100 words** → ❌ USELESS
640
- - Brief mention of task, no files, no context
641
- - Response: Vague suggestions that don't apply to your code
642
- - The subagent is guessing blindly
643
-
644
- **100-200 words** → ⚠️ POOR
645
- - Some context but missing critical details
646
- - Response: Partially relevant but misses your actual situation
647
- - 50% of insights will be off-target
648
-
649
- **200-300 words** → 😐 MEDIOCRE
650
- - Basic context, some files mentioned
651
- - Response: Generally useful but lacks specificity
652
- - You'll need follow-up questions
653
-
654
- **300-500 words** → ✅ ACCEPTABLE
655
- - Good context, file paths included, requirements stated
656
- - Response: Relevant and actionable
657
- - Minimum threshold for useful output
658
-
659
- **500-750 words** → 🎯 GOOD
660
- - Comprehensive context, detailed file descriptions
661
- - What you tried, why it failed, specific questions
662
- - Response: Highly targeted, specific recommendations
663
-
664
- **750-1000 words** → ⭐ EXCELLENT
665
- - Full context: files, requirements, acceptance criteria
666
- - Tech stack, constraints, edge cases, what you've tried
667
- - Response: Expert-level analysis, production-ready advice
668
-
669
- **1000+ words** → 🏆 EXCEPTIONAL
670
- - Complete project context, detailed file-by-file breakdown
671
- - Historical context, related issues, future considerations
672
- - Response: CTO-level strategic recommendations
673
-
674
- **🎯 TARGET: 500-1000 words minimum for any serious task!**
675
-
676
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
677
- 📁 FILE CONTEXT - ABSOLUTELY MANDATORY
678
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
679
-
680
- **YOU MUST INCLUDE relative file paths for ALL relevant files!**
681
-
682
- The subagent CANNOT see your filesystem. If you don't tell it which
683
- files exist and what they do, it's operating completely blind.
684
-
685
- **FORMAT:** Use relative paths from project root with descriptions:
686
-
687
- ```
688
- 📁 FILES CHANGED/RELEVANT:
689
-
690
- src/auth/auth.controller.ts
691
- - Purpose: Handles login/register/logout endpoints
692
- - What changed: Added JWT refresh token logic (lines 45-120)
693
- - Dependencies: Uses src/auth/jwt.service.ts for token generation
694
- - Exports: AuthController class with 4 public methods
695
-
696
- src/auth/jwt.service.ts
697
- - Purpose: JWT token generation and validation
698
- - What changed: New refreshToken() method added
699
- - Key functions: generateToken(), validateToken(), refreshToken()
700
- - Config: Uses JWT_SECRET from environment
701
-
702
- src/middleware/auth.guard.ts
703
- - Purpose: Protects routes requiring authentication
704
- - What changed: Now checks for refresh token in cookie
705
- - How it works: Extracts token from Authorization header or cookie
706
- - Used by: All /api/protected/* routes
707
-
708
- src/types/auth.types.ts
709
- - Purpose: TypeScript interfaces for auth
710
- - What changed: Added RefreshTokenPayload interface
711
- - Exports: User, TokenPayload, RefreshTokenPayload, AuthResponse
712
-
713
- tests/auth/auth.controller.spec.ts
714
- - Purpose: Unit tests for auth controller
715
- - What changed: Added 5 new tests for refresh flow
716
- - Coverage: Now covers happy path + 3 error cases
717
- ```
718
-
719
- **WHY THIS MATTERS:**
720
- - Subagent can understand your architecture
721
- - Can identify missing pieces
722
- - Can check for consistency across files
723
- - Can suggest improvements based on actual structure
724
-
725
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
726
- 📋 TASK CONTEXT - WHAT ARE YOU ACTUALLY DOING?
727
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
728
-
729
- **Include the FULL context of what task you're working on:**
730
-
731
- ```
732
- 🎯 TASK CONTEXT:
733
-
734
- **Task Title:** Add JWT refresh token authentication
735
-
736
- **Background:**
737
- We're building a SaaS platform. Users were complaining about
738
- being logged out every hour. We need refresh tokens to keep
739
- sessions alive for 7 days while maintaining security.
740
-
741
- **Original Requirements:**
742
- 1. Access tokens expire in 15 minutes (security)
743
- 2. Refresh tokens expire in 7 days (convenience)
744
- 3. Refresh tokens stored in HTTP-only cookie (XSS protection)
745
- 4. Refresh token rotation on each refresh (security)
746
- 5. Invalidate all tokens on password change
747
-
748
- **Acceptance Criteria:**
749
- - [ ] POST /auth/login returns access token + sets refresh cookie
750
- - [ ] POST /auth/refresh exchanges refresh token for new access token
751
- - [ ] Refresh token is rotated on each use
752
- - [ ] Old refresh tokens are invalidated
753
- - [ ] Password change invalidates all user sessions
754
-
755
- **Tech Stack:**
756
- - Node.js 20 + Express 4.18
757
- - TypeScript 5.3
758
- - PostgreSQL 15 with Prisma ORM
759
- - Jest for testing
760
- - Redis for token blacklist
761
-
762
- **What I've Done So Far:**
763
- 1. Created jwt.service.ts with token generation ✅
764
- 2. Updated auth.controller.ts with refresh endpoint ✅
765
- 3. Added refresh token to login response ✅
766
- 4. Modified auth.guard.ts to check cookies ✅
767
- 5. Written basic tests ⏳ (in progress)
768
-
769
- **What's Not Working:**
770
- - Token rotation works but old tokens aren't being blacklisted
771
- - Tests are flaky - sometimes pass, sometimes fail
772
- - Not sure if my Redis implementation is correct
773
-
774
- **Specific Questions:**
775
- 1. Is my refresh token rotation implementation secure?
776
- 2. Should I use Redis SET or SORTED SET for blacklist?
777
- 3. How do I make my tests deterministic?
778
- ```
779
-
780
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
781
- 🔧 WHAT YOU'VE TRIED - PREVENT DUPLICATE SUGGESTIONS
782
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
783
-
784
- **Tell the subagent what you've already attempted:**
785
-
786
- ```
787
- 🔄 WHAT I'VE TRIED:
788
-
789
- 1. Used JWT library's built-in expiry
790
- → Problem: Couldn't invalidate tokens before expiry
791
-
792
- 2. Stored tokens in database
793
- → Problem: Too slow, 50ms+ per request
794
-
795
- 3. Redis with simple SET
796
- → Problem: No automatic expiry, memory grows forever
797
-
798
- 4. Asked ChatGPT
799
- → Got generic advice that didn't fit our architecture
800
- ```
801
-
802
- **WHY THIS MATTERS:**
803
- - Avoids wasting time on already-tried solutions
804
- - Helps subagent understand what DOESN'T work
805
- - Shows your thinking process for better recommendations
806
-
807
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
808
- 📋 PROMPT TEMPLATES BY TASK TYPE (FOLLOW EXACTLY!)
809
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
810
-
811
- **═══ COMPLETION-INSPECTOR TEMPLATE ═══**
812
-
813
- ```
814
- 🎯 TASK TITLE: [One-line description]
815
-
816
- 📋 ORIGINAL REQUIREMENTS:
817
- 1. [Requirement 1 - be specific]
818
- 2. [Requirement 2 - include acceptance criteria]
819
- 3. [Requirement 3 - mention edge cases if any]
820
-
821
- ✅ ACCEPTANCE CRITERIA:
822
- - [Criterion 1 - how to verify it's met]
823
- - [Criterion 2 - testable condition]
824
- - [Criterion 3 - measurable outcome]
825
-
826
- 📝 IMPLEMENTATION SUMMARY:
827
- [2-3 sentences describing what you implemented and your approach]
828
-
829
- 📁 FILES CHANGED:
830
- - `src/path/to/file1.ts` - [What changed and why]
831
- - `src/path/to/file2.ts` - [What changed and why]
832
- - `tests/path/to/test.ts` - [Tests added/modified]
833
-
834
- 🔖 GIT CONTEXT:
835
- - START_COMMIT: [hash or "HEAD~N"]
836
- - Branch: [feature branch name]
837
-
838
- 💭 WHY I THINK IT'S COMPLETE:
839
- [Explain your reasoning - what makes you confident it's done?]
840
-
841
- ⚠️ AREAS OF CONCERN (if any):
842
- [Any parts you're unsure about or want extra scrutiny on]
843
- ```
844
-
845
- **═══ HELPER-FRIEND TEMPLATE ═══**
846
-
847
- ```
848
- 🎯 ULTIMATE GOAL:
849
- [What are you trying to achieve? What does success look like?]
850
-
851
- 📍 CURRENT SITUATION:
852
- [Where are you now? What's the context?]
853
-
854
- 📁 RELEVANT FILES (with descriptions):
855
- - `src/path/to/file1.ts` - [What this file does, why it's relevant]
856
- - `src/path/to/file2.ts` - [What this file does, why it's relevant]
857
-
858
- 🔄 WHAT I'VE TRIED:
859
- 1. [Approach 1] → [Result/Why it didn't work]
860
- 2. [Approach 2] → [Result/Why it didn't work]
861
-
862
- ❓ SPECIFIC QUESTIONS:
863
- 1. [Question 1 - be specific, not vague]
864
- 2. [Question 2 - include context]
865
- 3. [Question 3 - what decision does this inform?]
866
-
867
- 🚧 CURRENT BLOCKER:
868
- [What's stopping you? Be specific about the problem.]
869
-
870
- 📌 CONSTRAINTS:
871
- - [Constraint 1 - tech stack limitations]
872
- - [Constraint 2 - timeline/scope]
873
- - [Constraint 3 - compatibility requirements]
874
-
875
- 🎯 WHAT I NEED FROM YOU:
876
- [Specific ask - research? recommendations? code examples?]
877
- ```
878
-
879
- **═══ MANUAL-TESTER TEMPLATE ═══**
880
-
881
- ```
882
- 🌐 URLS (MANDATORY!):
883
- - Frontend: [http://localhost:3000 or deployed URL]
884
- - Backend API: [http://localhost:8000/api or deployed URL]
885
- - Admin panel: [if applicable]
886
-
887
- 🔐 AUTH CREDENTIALS (if needed):
888
- - Username: [test user]
889
- - Password: [test password]
890
- - Or: [How to authenticate]
891
-
892
- 📝 FEATURE TO TEST:
893
- [Describe the feature in 2-3 sentences]
894
-
895
- ✅ EXPECTED BEHAVIORS:
896
- 1. [When user does X] → [Y should happen]
897
- 2. [When user does A] → [B should appear]
898
- 3. [Form validation] → [These errors should show]
899
-
900
- 🧪 TEST SCENARIOS:
901
- - Happy path: [Normal user flow to test]
902
- - Error path: [Invalid input scenarios]
903
- - Edge cases: [Boundary conditions]
904
-
905
- 📊 TEST DATA:
906
- - Valid input: [example values]
907
- - Invalid input: [example values that should fail]
908
-
909
- 📱 VIEWPORTS TO TEST:
910
- - Desktop (1920x1080)
911
- - Tablet (768x1024)
912
- - Mobile (375x667)
913
-
914
- ⚠️ KNOWN ISSUES (skip these):
915
- [Any known bugs to ignore during testing]
916
- ```
917
-
918
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
919
- ❌ BAD vs ✅ GOOD EXAMPLES - THE DIFFERENCE IS NIGHT AND DAY
920
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
921
-
922
- **💀 GARBAGE (~5 words) - Complete waste of time:**
923
- ```
924
- "Check if it's done"
925
- "Fix the bug"
926
- "Test login"
927
- ```
928
- → Response will be: "I don't have enough context to help. Please provide..."
929
- → You've wasted time and learned nothing
930
-
931
- **❌ USELESS (~30 words) - Subagent is guessing blindly:**
932
- ```
933
- "I added authentication to my Node.js app. Can you verify
934
- it's complete? I think I covered everything but not sure."
935
- ```
936
- → What kind of auth? What files? What requirements? What's "everything"?
937
- → Response will be generic checklist that may not apply to your code
938
-
939
- **⚠️ POOR (~80 words) - Half the insights will be wrong:**
940
- ```
941
- "I'm working on JWT authentication for our Express API. I created
942
- auth.controller.ts and jwt.service.ts. The login works but I'm
943
- not sure about the refresh token implementation. We need tokens
944
- to expire in 1 hour but users shouldn't be logged out while active."
945
- ```
946
- → Better but: What's in those files? What's the actual implementation?
947
- → What does "not sure" mean specifically? What have you tried?
948
-
949
- **✅ ACCEPTABLE (~200 words) - Minimum for useful output:**
950
- ```
951
- 🎯 TASK: JWT refresh token authentication
952
-
953
- 📋 REQUIREMENTS:
954
- 1. Access tokens expire in 15 minutes
955
- 2. Refresh tokens expire in 7 days
956
- 3. Refresh tokens in HTTP-only cookies
957
-
958
- 📁 FILES:
959
- - src/auth/auth.controller.ts - Login/register/refresh endpoints
960
- - src/auth/jwt.service.ts - Token generation and validation
961
- - src/middleware/auth.guard.ts - Route protection
962
-
963
- ✅ ACCEPTANCE:
964
- - POST /auth/login returns access token + sets refresh cookie
965
- - POST /auth/refresh returns new access token
966
- - Invalid tokens return 401
967
-
968
- 💭 STATUS: Login works, refresh endpoint exists but untested
969
-
970
- ❓ QUESTIONS:
971
- 1. Is storing refresh token in cookie secure?
972
- 2. Should I rotate refresh tokens?
973
- ```
974
-
975
- **🎯 GOOD (~500 words) - Highly targeted recommendations:**
976
- ```
977
- 🎯 TASK TITLE: Implement JWT refresh token authentication
978
-
979
- **Background:**
980
- Building a SaaS dashboard. Users complained about hourly logouts.
981
- Need refresh tokens to maintain sessions for 7 days while keeping
982
- access tokens short-lived for security.
983
-
984
- 📋 ORIGINAL REQUIREMENTS:
985
- 1. Access tokens: 15 minute expiry (security best practice)
986
- 2. Refresh tokens: 7 day expiry (user convenience)
987
- 3. Refresh tokens: HTTP-only cookie (XSS protection)
988
- 4. Token rotation: New refresh token on each refresh (security)
989
- 5. Revocation: Password change invalidates all sessions
990
-
991
- ✅ ACCEPTANCE CRITERIA:
992
- - [ ] POST /auth/login returns {accessToken} + sets refreshToken cookie
993
- - [ ] POST /auth/refresh exchanges refresh for new access + new refresh
994
- - [ ] Protected routes return 401 without valid access token
995
- - [ ] Refresh with old/rotated token fails (single-use enforcement)
996
- - [ ] Password change via /auth/password invalidates all tokens
997
-
998
- 📁 FILES CHANGED:
999
-
1000
- src/auth/auth.controller.ts (lines 1-120)
1001
- - Purpose: HTTP endpoints for auth operations
1002
- - Changes: Added /refresh endpoint, modified /login to set cookie
1003
- - Exports: AuthController with login(), register(), refresh(), logout()
1004
- - Dependencies: JwtService, UserService, Response (for cookies)
1005
-
1006
- src/auth/jwt.service.ts (lines 1-85)
1007
- - Purpose: Token generation, validation, rotation logic
1008
- - Changes: Added generateRefreshToken(), rotateRefreshToken(), blacklistToken()
1009
- - Key logic: Uses Redis for token blacklist with TTL matching token expiry
1010
- - Config: JWT_SECRET, REFRESH_SECRET from env
1011
-
1012
- src/middleware/auth.guard.ts (lines 1-45)
1013
- - Purpose: Protects routes requiring authentication
1014
- - Changes: Now extracts token from Authorization header OR cookie
1015
- - Logic: Validates access token, attaches user to request
1016
-
1017
- src/auth/dto/auth.dto.ts (lines 1-30)
1018
- - Purpose: Request/response type definitions
1019
- - Changes: Added RefreshTokenDto, TokenResponseDto
1020
-
1021
- tests/auth/auth.e2e-spec.ts (lines 1-150)
1022
- - Purpose: End-to-end auth flow tests
1023
- - Changes: Added 8 tests for refresh flow
1024
- - Coverage: Happy path, expired token, rotated token, blacklisted token
1025
-
1026
- 🔖 GIT CONTEXT:
1027
- - START_COMMIT: abc123 (before auth changes)
1028
- - Current branch: feature/refresh-tokens
1029
- - 12 commits since start
1030
-
1031
- 🔧 TECH STACK:
1032
- - Node.js 20, Express 4.18, TypeScript 5.3
1033
- - Prisma ORM with PostgreSQL 15
1034
- - Redis 7 for token blacklist
1035
- - Jest + Supertest for testing
1036
-
1037
- 🔄 WHAT I'VE TRIED:
1038
- 1. Storing tokens in database → Too slow (50ms/request)
1039
- 2. JWT blacklist without Redis → Memory leak in production
1040
- 3. Simple refresh without rotation → Security concern flagged in review
1041
-
1042
- 💭 WHY I THINK IT'S COMPLETE:
1043
- - All 5 requirements implemented
1044
- - 8/8 e2e tests passing
1045
- - Manual testing works in Postman
1046
- - Code reviewed by team lead
1047
-
1048
- ⚠️ AREAS OF CONCERN:
1049
- - Redis connection handling during reconnects
1050
- - Is my token rotation truly atomic?
1051
- - Should blacklist use SET or SORTED SET?
1052
-
1053
- ❓ SPECIFIC QUESTIONS:
1054
- 1. Is the refresh token rotation implementation secure against race conditions?
1055
- 2. Is storing the refresh token family ID sufficient for revocation?
1056
- 3. Any edge cases I'm missing in my test coverage?
1057
- ```
1058
- → This prompt gives the subagent EVERYTHING it needs to provide
1059
- expert-level, specific, actionable recommendations
1060
-
1061
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1062
- 💡 PRO TIPS FOR MAXIMUM QUALITY OUTPUT
1063
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1064
-
1065
- 1. **TARGET 500-1000 WORDS** - Seriously, more context = better output
1066
- 2. **LIST EVERY FILE** - With relative paths AND what each file does
1067
- 3. **DESCRIBE WHAT CHANGED** - Not just "modified" but HOW and WHY
1068
- 4. **INCLUDE LINE NUMBERS** - "auth logic at lines 45-120" helps focus
1069
- 5. **STATE YOUR TECH STACK** - Versions matter for compatibility advice
1070
- 6. **EXPLAIN WHAT YOU TRIED** - Prevents duplicate suggestions
1071
- 7. **ASK SPECIFIC QUESTIONS** - "Is X secure?" not "Is it good?"
1072
- 8. **MENTION EDGE CASES** - What weird scenarios worry you?
1073
- 9. **INCLUDE ERROR MESSAGES** - Exact errors, not paraphrased
1074
- 10. **SHARE YOUR REASONING** - Why you made certain choices
1075
-
1076
- **THE GOLDEN RULE:**
1077
-
1078
- Imagine you're onboarding a brilliant senior engineer who just joined
1079
- your team. They've never seen your codebase. What would you tell them
1080
- to get them up to speed and able to give expert advice?
1081
-
1082
- **THAT is what your prompt should contain.**
1083
-
1084
- **REMEMBER:**
1085
- - 💀 < 50 words = You're wasting everyone's time
1086
- - ⚠️ 50-200 words = Expect generic, often wrong advice
1087
- - ✅ 200-500 words = Acceptable, targeted recommendations
1088
- - 🎯 500-1000 words = Expert-level, production-ready insights
1089
- - 🏆 1000+ words = CTO-level strategic guidance
76
+ Your task prompt. Include: task description, relevant files, requirements, context.
77
+ More detail = better results. Min 20 chars.
1090
78
 
1091
79
  model:
1092
80
  type: string
1093
81
  required: false
1094
- description: |
1095
- **[OPTIONAL] Override model selection**
1096
-
1097
- Leave empty to use task type's default:
1098
- - completion-inspector: gemini-3-pro
1099
- - helper-friend: auto-select
1100
- - manual-tester: gemini-3-pro
1101
-
1102
- Available: `gemini-3-pro`, `gemini-3-flash`
82
+ description: "Override model. Leave empty for auto-select."
1103
83
 
1104
84
  sandbox:
1105
85
  type: boolean
1106
86
  required: false
1107
87
  default: false
1108
- description: |
1109
- **[OPTIONAL] Run in sandbox mode**
1110
-
1111
- Enables sandbox isolation for safer execution.
1112
- Flag: --sandbox / -s
88
+ description: "Run in sandbox mode."
1113
89
 
1114
90
  approval_mode:
1115
91
  type: string
1116
92
  required: false
1117
- description: |
1118
- **[OPTIONAL] Override approval mode**
1119
-
1120
- Valid values:
1121
- - `default` - Prompt for approval
1122
- - `auto_edit` - Auto-approve edit tools
1123
- - `yolo` - Auto-approve all tools
1124
-
1125
- Leave empty to use --yolo (auto-approve all)
93
+ description: "Override: `default`, `auto_edit`, or `yolo`"
1126
94
 
1127
95
  include_directories:
1128
96
  type: string
1129
97
  required: false
1130
- description: |
1131
- **[OPTIONAL] Include additional directories**
1132
-
1133
- Comma-separated list of directories to include.
1134
- Example: "src,docs,tests"
98
+ description: "Additional directories. Example: `src,docs,tests`"
1135
99
 
1136
100
  include_instructions:
1137
101
  type: boolean
1138
102
  required: false
1139
103
  default: true
1140
- description: |
1141
- Include task-specific instructions from MDX template.
1142
- Default: true (recommended)
1143
- Set false: For custom prompts that don't need template
104
+ description: "Include MDX template instructions. Default: true"
1144
105
 
1145
106
  async:
1146
107
  type: boolean
1147
108
  required: false
1148
109
  default: true
1149
110
  description: |
1150
- **[OPTIONAL] Async execution mode**
1151
-
1152
- **Default: true (async)**
1153
- - Returns immediately with a 5-digit task ID (e.g., 34567)
1154
- - Task runs in background
1155
- - Query status with `check_subagent_task` tool using the task ID
1156
- - Results stored in memory until retrieved
1157
-
1158
- **Set to false (sync/blocking):**
1159
- - Blocks until task completes
1160
- - Returns full result directly
1161
- - Use for quick tasks where you need immediate result
1162
-
1163
- **Example async flow:**
1164
- 1. Call `gemini-subagent` with `async: true` (default)
1165
- 2. Receive: `{"task_id": 34567, "status": "running"}`
1166
- 3. Later: Call `check_subagent_task` with `task_id: 34567`
1167
- 4. Receive: `{"status": "completed", "result": "..."}` or `{"status": "running"}`
1168
-
1169
- **⚠️ IMPORTANT:** When async=true, the response is NOT the result!
1170
- You MUST call `check_subagent_task` to get the actual result.
111
+ Async mode (default: true). Returns task_id immediately.
112
+ Set false to block and return result directly.