opencode-swarm-plugin 0.56.1 → 0.57.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.
Files changed (182) hide show
  1. package/README.md +21 -0
  2. package/claude-plugin/agents/background-worker.md +1 -0
  3. package/claude-plugin/agents/coordinator.md +1 -0
  4. package/claude-plugin/agents/worker.md +1 -0
  5. package/claude-plugin/bin/swarm-mcp-server.ts +47 -8
  6. package/claude-plugin/dist/agent-mail.d.ts +480 -0
  7. package/claude-plugin/dist/agent-mail.d.ts.map +1 -0
  8. package/claude-plugin/dist/anti-patterns.d.ts +257 -0
  9. package/claude-plugin/dist/anti-patterns.d.ts.map +1 -0
  10. package/claude-plugin/dist/bin/swarm.js +373128 -0
  11. package/claude-plugin/dist/cass-tools.d.ts +74 -0
  12. package/claude-plugin/dist/cass-tools.d.ts.map +1 -0
  13. package/claude-plugin/dist/claude-plugin/claude-plugin-assets.d.ts +10 -0
  14. package/claude-plugin/dist/claude-plugin/claude-plugin-assets.d.ts.map +1 -0
  15. package/claude-plugin/dist/compaction-hook.d.ts +178 -0
  16. package/claude-plugin/dist/compaction-hook.d.ts.map +1 -0
  17. package/claude-plugin/dist/compaction-observability.d.ts +173 -0
  18. package/claude-plugin/dist/compaction-observability.d.ts.map +1 -0
  19. package/claude-plugin/dist/compaction-prompt-scoring.d.ts +125 -0
  20. package/claude-plugin/dist/compaction-prompt-scoring.d.ts.map +1 -0
  21. package/claude-plugin/dist/compaction-prompt-scoring.js +139 -0
  22. package/claude-plugin/dist/contributor-tools.d.ts +42 -0
  23. package/claude-plugin/dist/contributor-tools.d.ts.map +1 -0
  24. package/claude-plugin/dist/coordinator-guard.d.ts +79 -0
  25. package/claude-plugin/dist/coordinator-guard.d.ts.map +1 -0
  26. package/claude-plugin/dist/dashboard.d.ts +82 -0
  27. package/claude-plugin/dist/dashboard.d.ts.map +1 -0
  28. package/claude-plugin/dist/decision-trace-integration.d.ts +204 -0
  29. package/claude-plugin/dist/decision-trace-integration.d.ts.map +1 -0
  30. package/claude-plugin/dist/error-enrichment.d.ts +49 -0
  31. package/claude-plugin/dist/error-enrichment.d.ts.map +1 -0
  32. package/claude-plugin/dist/eval-capture.d.ts +494 -0
  33. package/claude-plugin/dist/eval-capture.d.ts.map +1 -0
  34. package/claude-plugin/dist/eval-capture.js +12844 -0
  35. package/claude-plugin/dist/eval-gates.d.ts +84 -0
  36. package/claude-plugin/dist/eval-gates.d.ts.map +1 -0
  37. package/claude-plugin/dist/eval-history.d.ts +117 -0
  38. package/claude-plugin/dist/eval-history.d.ts.map +1 -0
  39. package/claude-plugin/dist/eval-learning.d.ts +216 -0
  40. package/claude-plugin/dist/eval-learning.d.ts.map +1 -0
  41. package/claude-plugin/dist/eval-runner.d.ts +134 -0
  42. package/claude-plugin/dist/eval-runner.d.ts.map +1 -0
  43. package/claude-plugin/dist/examples/plugin-wrapper-template.ts +3341 -0
  44. package/claude-plugin/dist/export-tools.d.ts +76 -0
  45. package/claude-plugin/dist/export-tools.d.ts.map +1 -0
  46. package/claude-plugin/dist/hive.d.ts +949 -0
  47. package/claude-plugin/dist/hive.d.ts.map +1 -0
  48. package/claude-plugin/dist/hive.js +15009 -0
  49. package/claude-plugin/dist/hivemind-tools.d.ts +479 -0
  50. package/claude-plugin/dist/hivemind-tools.d.ts.map +1 -0
  51. package/claude-plugin/dist/hooks/atomic-write.d.ts +21 -0
  52. package/claude-plugin/dist/hooks/atomic-write.d.ts.map +1 -0
  53. package/claude-plugin/dist/hooks/constants.d.ts +28 -0
  54. package/claude-plugin/dist/hooks/constants.d.ts.map +1 -0
  55. package/claude-plugin/dist/hooks/index.d.ts +16 -0
  56. package/claude-plugin/dist/hooks/index.d.ts.map +1 -0
  57. package/claude-plugin/dist/hooks/session-start.d.ts +30 -0
  58. package/claude-plugin/dist/hooks/session-start.d.ts.map +1 -0
  59. package/claude-plugin/dist/hooks/tool-complete.d.ts +54 -0
  60. package/claude-plugin/dist/hooks/tool-complete.d.ts.map +1 -0
  61. package/claude-plugin/dist/index.d.ts +2017 -0
  62. package/claude-plugin/dist/index.d.ts.map +1 -0
  63. package/claude-plugin/dist/index.js +73453 -0
  64. package/claude-plugin/dist/learning.d.ts +700 -0
  65. package/claude-plugin/dist/learning.d.ts.map +1 -0
  66. package/claude-plugin/dist/logger.d.ts +38 -0
  67. package/claude-plugin/dist/logger.d.ts.map +1 -0
  68. package/claude-plugin/dist/mandate-promotion.d.ts +93 -0
  69. package/claude-plugin/dist/mandate-promotion.d.ts.map +1 -0
  70. package/claude-plugin/dist/mandate-storage.d.ts +209 -0
  71. package/claude-plugin/dist/mandate-storage.d.ts.map +1 -0
  72. package/claude-plugin/dist/mandates.d.ts +230 -0
  73. package/claude-plugin/dist/mandates.d.ts.map +1 -0
  74. package/claude-plugin/dist/memory-tools.d.ts +281 -0
  75. package/claude-plugin/dist/memory-tools.d.ts.map +1 -0
  76. package/claude-plugin/dist/memory.d.ts +164 -0
  77. package/claude-plugin/dist/memory.d.ts.map +1 -0
  78. package/claude-plugin/dist/model-selection.d.ts +37 -0
  79. package/claude-plugin/dist/model-selection.d.ts.map +1 -0
  80. package/claude-plugin/dist/observability-health.d.ts +87 -0
  81. package/claude-plugin/dist/observability-health.d.ts.map +1 -0
  82. package/claude-plugin/dist/observability-tools.d.ts +184 -0
  83. package/claude-plugin/dist/observability-tools.d.ts.map +1 -0
  84. package/claude-plugin/dist/output-guardrails.d.ts +125 -0
  85. package/claude-plugin/dist/output-guardrails.d.ts.map +1 -0
  86. package/claude-plugin/dist/pattern-maturity.d.ts +246 -0
  87. package/claude-plugin/dist/pattern-maturity.d.ts.map +1 -0
  88. package/claude-plugin/dist/planning-guardrails.d.ts +183 -0
  89. package/claude-plugin/dist/planning-guardrails.d.ts.map +1 -0
  90. package/claude-plugin/dist/plugin.d.ts +22 -0
  91. package/claude-plugin/dist/plugin.d.ts.map +1 -0
  92. package/claude-plugin/dist/plugin.js +72295 -0
  93. package/claude-plugin/dist/post-compaction-tracker.d.ts +133 -0
  94. package/claude-plugin/dist/post-compaction-tracker.d.ts.map +1 -0
  95. package/claude-plugin/dist/query-tools.d.ts +90 -0
  96. package/claude-plugin/dist/query-tools.d.ts.map +1 -0
  97. package/claude-plugin/dist/rate-limiter.d.ts +218 -0
  98. package/claude-plugin/dist/rate-limiter.d.ts.map +1 -0
  99. package/claude-plugin/dist/regression-detection.d.ts +58 -0
  100. package/claude-plugin/dist/regression-detection.d.ts.map +1 -0
  101. package/claude-plugin/dist/replay-tools.d.ts +28 -0
  102. package/claude-plugin/dist/replay-tools.d.ts.map +1 -0
  103. package/claude-plugin/dist/repo-crawl.d.ts +146 -0
  104. package/claude-plugin/dist/repo-crawl.d.ts.map +1 -0
  105. package/claude-plugin/dist/schemas/cell-events.d.ts +1352 -0
  106. package/claude-plugin/dist/schemas/cell-events.d.ts.map +1 -0
  107. package/claude-plugin/dist/schemas/cell.d.ts +413 -0
  108. package/claude-plugin/dist/schemas/cell.d.ts.map +1 -0
  109. package/claude-plugin/dist/schemas/evaluation.d.ts +161 -0
  110. package/claude-plugin/dist/schemas/evaluation.d.ts.map +1 -0
  111. package/claude-plugin/dist/schemas/index.d.ts +46 -0
  112. package/claude-plugin/dist/schemas/index.d.ts.map +1 -0
  113. package/claude-plugin/dist/schemas/mandate.d.ts +336 -0
  114. package/claude-plugin/dist/schemas/mandate.d.ts.map +1 -0
  115. package/claude-plugin/dist/schemas/swarm-context.d.ts +131 -0
  116. package/claude-plugin/dist/schemas/swarm-context.d.ts.map +1 -0
  117. package/claude-plugin/dist/schemas/task.d.ts +189 -0
  118. package/claude-plugin/dist/schemas/task.d.ts.map +1 -0
  119. package/claude-plugin/dist/schemas/worker-handoff.d.ts +78 -0
  120. package/claude-plugin/dist/schemas/worker-handoff.d.ts.map +1 -0
  121. package/claude-plugin/dist/sessions/agent-discovery.d.ts +59 -0
  122. package/claude-plugin/dist/sessions/agent-discovery.d.ts.map +1 -0
  123. package/claude-plugin/dist/sessions/index.d.ts +10 -0
  124. package/claude-plugin/dist/sessions/index.d.ts.map +1 -0
  125. package/claude-plugin/dist/skills.d.ts +490 -0
  126. package/claude-plugin/dist/skills.d.ts.map +1 -0
  127. package/claude-plugin/dist/storage.d.ts +260 -0
  128. package/claude-plugin/dist/storage.d.ts.map +1 -0
  129. package/claude-plugin/dist/structured.d.ts +206 -0
  130. package/claude-plugin/dist/structured.d.ts.map +1 -0
  131. package/claude-plugin/dist/swarm-adversarial-review.d.ts +104 -0
  132. package/claude-plugin/dist/swarm-adversarial-review.d.ts.map +1 -0
  133. package/claude-plugin/dist/swarm-decompose.d.ts +297 -0
  134. package/claude-plugin/dist/swarm-decompose.d.ts.map +1 -0
  135. package/claude-plugin/dist/swarm-insights.d.ts +390 -0
  136. package/claude-plugin/dist/swarm-insights.d.ts.map +1 -0
  137. package/claude-plugin/dist/swarm-mail.d.ts +274 -0
  138. package/claude-plugin/dist/swarm-mail.d.ts.map +1 -0
  139. package/claude-plugin/dist/swarm-orchestrate.d.ts +924 -0
  140. package/claude-plugin/dist/swarm-orchestrate.d.ts.map +1 -0
  141. package/claude-plugin/dist/swarm-prompts.d.ts +467 -0
  142. package/claude-plugin/dist/swarm-prompts.d.ts.map +1 -0
  143. package/claude-plugin/dist/swarm-prompts.js +45283 -0
  144. package/claude-plugin/dist/swarm-research.d.ts +125 -0
  145. package/claude-plugin/dist/swarm-research.d.ts.map +1 -0
  146. package/claude-plugin/dist/swarm-review.d.ts +214 -0
  147. package/claude-plugin/dist/swarm-review.d.ts.map +1 -0
  148. package/claude-plugin/dist/swarm-signature.d.ts +106 -0
  149. package/claude-plugin/dist/swarm-signature.d.ts.map +1 -0
  150. package/claude-plugin/dist/swarm-strategies.d.ts +113 -0
  151. package/claude-plugin/dist/swarm-strategies.d.ts.map +1 -0
  152. package/claude-plugin/dist/swarm-validation.d.ts +127 -0
  153. package/claude-plugin/dist/swarm-validation.d.ts.map +1 -0
  154. package/claude-plugin/dist/swarm-worktree.d.ts +185 -0
  155. package/claude-plugin/dist/swarm-worktree.d.ts.map +1 -0
  156. package/claude-plugin/dist/swarm.d.ts +590 -0
  157. package/claude-plugin/dist/swarm.d.ts.map +1 -0
  158. package/claude-plugin/dist/tool-availability.d.ts +91 -0
  159. package/claude-plugin/dist/tool-availability.d.ts.map +1 -0
  160. package/claude-plugin/dist/utils/tree-renderer.d.ts +61 -0
  161. package/claude-plugin/dist/utils/tree-renderer.d.ts.map +1 -0
  162. package/claude-plugin/dist/validators/index.d.ts +7 -0
  163. package/claude-plugin/dist/validators/index.d.ts.map +1 -0
  164. package/claude-plugin/dist/validators/schema-validator.d.ts +58 -0
  165. package/claude-plugin/dist/validators/schema-validator.d.ts.map +1 -0
  166. package/claude-plugin/skills/always-on-guidance/SKILL.md +44 -0
  167. package/dist/agent-mail.d.ts +4 -4
  168. package/dist/agent-mail.d.ts.map +1 -1
  169. package/dist/bin/swarm.js +467 -12
  170. package/dist/claude-plugin/claude-plugin-assets.d.ts +10 -0
  171. package/dist/claude-plugin/claude-plugin-assets.d.ts.map +1 -0
  172. package/dist/compaction-hook.d.ts +1 -1
  173. package/dist/compaction-hook.d.ts.map +1 -1
  174. package/dist/index.js +370 -260
  175. package/dist/plugin.js +369 -259
  176. package/dist/skills.d.ts +15 -0
  177. package/dist/skills.d.ts.map +1 -1
  178. package/dist/swarm-mail.d.ts.map +1 -1
  179. package/dist/swarm-prompts.d.ts +3 -1
  180. package/dist/swarm-prompts.d.ts.map +1 -1
  181. package/dist/swarm-prompts.js +79 -2
  182. package/package.json +2 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swarm-orchestrate.d.ts","sourceRoot":"","sources":["../src/swarm-orchestrate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,467 @@
1
+ /**
2
+ * Swarm Prompts Module - Prompt templates and generation
3
+ *
4
+ * Provides all prompt templates used for swarm coordination:
5
+ * - Decomposition prompts (basic and strategy-specific)
6
+ * - Subtask agent prompts (V1 and V2)
7
+ * - Evaluation prompts
8
+ *
9
+ * Key responsibilities:
10
+ * - Prompt template definitions
11
+ * - Prompt formatting/generation tools
12
+ * - Template parameter substitution
13
+ */
14
+ /**
15
+ * Prompt for decomposing a task into parallelizable subtasks.
16
+ *
17
+ * Used by swarm_decompose to instruct the agent on how to break down work.
18
+ * The agent responds with a CellTree that gets validated.
19
+ */
20
+ export declare const DECOMPOSITION_PROMPT = "You are decomposing a task into parallelizable subtasks for a swarm of agents.\n\n## Task\n{task}\n\n{context_section}\n\n## MANDATORY: Hive Issue Tracking\n\n**Every subtask MUST become a cell.** This is non-negotiable.\n\nAfter decomposition, the coordinator will:\n1. Create an epic cell for the overall task\n2. Create child cells for each subtask\n3. Track progress through cell status updates\n4. Close cells with summaries when complete\n\nAgents MUST update their cell status as they work. No silent progress.\n\n## Requirements\n\n1. **Break into independent subtasks** that can run in parallel (as many as needed)\n2. **Assign files** - each subtask must specify which files it will modify\n3. **No file overlap** - files cannot appear in multiple subtasks (they get exclusive locks)\n4. **Order by dependency** - if subtask B needs subtask A's output, A must come first in the array\n5. **Estimate complexity** - 1 (trivial) to 5 (complex)\n6. **Plan aggressively** - break down more than you think necessary, smaller is better\n\n## Response Format\n\nRespond with a JSON object matching this schema:\n\n```typescript\n{\n epic: {\n title: string, // Epic title for the hive tracker\n description?: string // Brief description of the overall goal\n },\n subtasks: [\n {\n title: string, // What this subtask accomplishes\n description?: string, // Detailed instructions for the agent\n files: string[], // Files this subtask will modify (globs allowed)\n dependencies: number[], // Indices of subtasks this depends on (0-indexed)\n estimated_complexity: 1-5 // Effort estimate\n },\n // ... more subtasks\n ]\n}\n```\n\n## Guidelines\n\n- **Plan aggressively** - when in doubt, split further. 3 small tasks > 1 medium task\n- **Prefer smaller, focused subtasks** over large complex ones\n- **Include test files** in the same subtask as the code they test\n- **Consider shared types** - if multiple files share types, handle that first\n- **Think about imports** - changes to exported APIs affect downstream files\n- **Explicit > implicit** - spell out what each subtask should do, don't assume\n\n## File Assignment Examples\n\n- Schema change: `[\"src/schemas/user.ts\", \"src/schemas/index.ts\"]`\n- Component + test: `[\"src/components/Button.tsx\", \"src/components/Button.test.tsx\"]`\n- API route: `[\"src/app/api/users/route.ts\"]`\n\nNow decompose the task:";
21
+ /**
22
+ * Strategy-specific decomposition prompt template
23
+ */
24
+ export declare const STRATEGY_DECOMPOSITION_PROMPT = "You are decomposing a task into parallelizable subtasks for a swarm of agents.\n\n## Task\n{task}\n\n{strategy_guidelines}\n\n{context_section}\n\n{hivemind_history}\n\n{skills_context}\n\n## MANDATORY: Hive Issue Tracking\n\n**Every subtask MUST become a cell.** This is non-negotiable.\n\nAfter decomposition, the coordinator will:\n1. Create an epic cell for the overall task\n2. Create child cells for each subtask\n3. Track progress through cell status updates\n4. Close cells with summaries when complete\n\nAgents MUST update their cell status as they work. No silent progress.\n\n## Requirements\n\n1. **Break into independent subtasks** that can run in parallel (as many as needed)\n2. **Assign files** - each subtask must specify which files it will modify\n3. **No file overlap** - files cannot appear in multiple subtasks (they get exclusive locks)\n4. **Order by dependency** - if subtask B needs subtask A's output, A must come first in the array\n5. **Estimate complexity** - 1 (trivial) to 5 (complex)\n6. **Plan aggressively** - break down more than you think necessary, smaller is better\n\n## Response Format\n\nRespond with a JSON object matching this schema:\n\n```typescript\n{\n epic: {\n title: string, // Epic title for the hive tracker\n description?: string // Brief description of the overall goal\n },\n subtasks: [\n {\n title: string, // What this subtask accomplishes\n description?: string, // Detailed instructions for the agent\n files: string[], // Files this subtask will modify (globs allowed)\n dependencies: number[], // Indices of subtasks this depends on (0-indexed)\n estimated_complexity: 1-5 // Effort estimate\n },\n // ... more subtasks\n ]\n}\n```\n\nNow decompose the task:";
25
+ /**
26
+ * Prompt template for spawned subtask agents.
27
+ *
28
+ * Each agent receives this prompt with their specific subtask details filled in.
29
+ * The prompt establishes context, constraints, and expectations.
30
+ */
31
+ export declare const SUBTASK_PROMPT = "You are a swarm agent working on a subtask of a larger epic.\n\n## Your Identity\n- **Agent Name**: {agent_name}\n- **Cell ID**: {bead_id}\n- **Epic ID**: {epic_id}\n\n## Your Subtask\n**Title**: {subtask_title}\n\n{subtask_description}\n\n## File Scope\nYou have exclusive reservations for these files:\n{file_list}\n\n**CRITICAL**: Only modify files in your reservation. If you need to modify other files, \nsend a message to the coordinator requesting the change.\n\n## Shared Context\n{shared_context}\n\n## MANDATORY: Hive Tracking\n\nYou MUST keep your cell updated as you work:\n\n1. **Your cell is already in_progress** - don't change this unless blocked\n2. **If blocked**: `hive_update {bead_id} --status blocked` and message coordinator\n3. **When done**: Use `swarm_complete` - it closes your cell automatically\n4. **Discovered issues**: Create new cells with `hive_create \"issue\" -t bug`\n\n**Never work silently.** Your cell status is how the swarm tracks progress.\n\n## MANDATORY: Swarm Mail Communication\n\nYou MUST communicate with other agents:\n\n1. **Report progress** every significant milestone (not just at the end)\n2. **Ask questions** if requirements are unclear - don't guess\n3. **Announce blockers** immediately - don't spin trying to fix alone\n4. **Coordinate on shared concerns** - if you see something affecting other agents, say so\n\nUse Swarm Mail for all communication:\n```\nswarmmail_send(\n to: [\"coordinator\" or specific agent],\n subject: \"Brief subject\",\n body: \"Message content\",\n thread_id: \"{epic_id}\"\n)\n```\n\n## Coordination Protocol\n\n1. **Start**: Your cell is already marked in_progress\n2. **Progress**: Use swarm_progress to report status updates\n3. **Blocked**: Report immediately via Swarm Mail - don't spin\n4. **Complete**: Use swarm_complete when done - it handles:\n - Closing your cell with a summary\n - Releasing file reservations\n - Notifying the coordinator\n\n## Self-Evaluation\n\nBefore calling swarm_complete, evaluate your work:\n- Type safety: Does it compile without errors?\n- No obvious bugs: Did you handle edge cases?\n- Follows patterns: Does it match existing code style?\n- Readable: Would another developer understand it?\n\nIf evaluation fails, fix the issues before completing.\n\n## Planning Your Work\n\nBefore writing code:\n1. **Read the files** you're assigned to understand current state\n2. **Plan your approach** - what changes, in what order?\n3. **Identify risks** - what could go wrong? What dependencies?\n4. **Communicate your plan** via Swarm Mail if non-trivial\n\nBegin work on your subtask now.";
32
+ /**
33
+ * Streamlined subtask prompt (V2) - uses Swarm Mail and hive tracking
34
+ *
35
+ * This is a cleaner version of SUBTASK_PROMPT that's easier to parse.
36
+ * Agents MUST use Swarm Mail for communication and hive cells for tracking.
37
+ *
38
+ * Supports {error_context} placeholder for retry prompts.
39
+ */
40
+ export declare const SUBTASK_PROMPT_V2 = "You are a swarm agent working on: **{subtask_title}**\n\n## [IDENTITY]\nAgent: (assigned at spawn)\nCell: {bead_id}\nEpic: {epic_id}\n\n## [TASK]\n{subtask_description}\n\n## [FILES]\nReserved (exclusive):\n{file_list}\n\nOnly modify these files. Need others? Message the coordinator.\n\n## [CONTEXT]\n{shared_context}\n\n{compressed_context}\n\n{error_context}\n\n## [MANDATORY SURVIVAL CHECKLIST]\n\n**CRITICAL: Follow this checklist IN ORDER. Each step builds on the previous.**\n\n### Step 1: Initialize Coordination (REQUIRED - DO THIS FIRST)\n```\nswarmmail_init(project_path=\"{project_path}\", task_description=\"{bead_id}: {subtask_title}\")\n```\n\n**This registers you with the coordination system and enables:**\n- File reservation tracking\n- Inter-agent communication\n- Progress monitoring\n- Conflict detection\n\n**If you skip this step, your work will not be tracked and swarm_complete will fail.**\n\n### Step 2: \uD83E\uDDE0 Query Past Learnings (MANDATORY - BEFORE starting work)\n\n**\u26A0\uFE0F CRITICAL: ALWAYS query hivemind BEFORE writing ANY code.**\n\n```\nhivemind_find(query=\"<keywords from your task>\", limit=5, expand=true)\n```\n\n**Why this is MANDATORY:**\n- Past agents may have already solved your exact problem\n- Avoids repeating mistakes that wasted 30+ minutes before\n- Discovers project-specific patterns and gotchas\n- Finds known workarounds for tool/library quirks\n\n**Search Query Examples by Task Type:**\n\n- **Bug fix**: Use exact error message or \"<symptom> <component>\"\n- **New feature**: Search \"<domain concept> implementation pattern\"\n- **Refactor**: Query \"<pattern name> migration approach\"\n- **Integration**: Look for \"<library name> gotchas configuration\"\n- **Testing**: Find \"testing <component type> characterization tests\"\n- **Performance**: Search \"<technology> performance optimization\"\n\n**BEFORE you start coding:**\n1. Run hivemind_find with keywords from your task\n2. Read the results with expand=true for full content\n3. Check if any memory solves your problem or warns of pitfalls\n4. Adjust your approach based on past learnings\n\n**If you skip this step, you WILL waste time solving already-solved problems.**\n\n### Step 3: Load Relevant Skills (if available)\n```\nskills_list() # See what skills exist\nskills_use(name=\"<relevant-skill>\", context=\"<your task>\") # Load skill\n```\n\n**Common skill triggers:**\n- Writing tests? \u2192 `skills_use(name=\"testing-patterns\")`\n- Breaking dependencies? \u2192 `skills_use(name=\"testing-patterns\")`\n- Multi-agent coordination? \u2192 `skills_use(name=\"swarm-coordination\")`\n- Building a CLI? \u2192 `skills_use(name=\"cli-builder\")`\n\n### Step 4: Reserve Your Files (YOU reserve, not coordinator)\n```\nswarmmail_reserve(\n paths=[{file_list}],\n reason=\"{bead_id}: {subtask_title}\",\n exclusive=true\n)\n```\n\n**Workers reserve their own files.** This prevents edit conflicts with other agents.\n\n### Step 5: Do the Work (TDD MANDATORY)\n\n**Follow RED \u2192 GREEN \u2192 REFACTOR. No exceptions.**\n\n1. **RED**: Write a failing test that describes the expected behavior\n - Test MUST fail before you write implementation\n - If test passes immediately, your test is wrong\n \n2. **GREEN**: Write minimal code to make the test pass\n - Don't over-engineer - just make it green\n - Hardcode if needed, refactor later\n \n3. **REFACTOR**: Clean up while tests stay green\n - Run tests after every change\n - If tests break, undo and try again\n\n```bash\n# Run tests continuously\nbun test <your-test-file> --watch\n```\n\n**Why TDD?**\n- Catches bugs before they exist\n- Documents expected behavior\n- Enables fearless refactoring\n- Proves your code works\n\n### Step 6: Report Progress at Milestones\n```\nswarm_progress(\n project_key=\"{project_path}\",\n agent_name=\"<your-agent-name>\",\n bead_id=\"{bead_id}\",\n status=\"in_progress\",\n progress_percent=25, # or 50, 75\n message=\"<what you just completed>\"\n)\n```\n\n**Report at 25%, 50%, 75% completion.** This:\n- Triggers auto-checkpoint (saves context)\n- Keeps coordinator informed\n- Prevents silent failures\n\n### Step 7: Manual Checkpoint BEFORE Risky Operations\n```\nswarm_checkpoint(\n project_key=\"{project_path}\",\n agent_name=\"<your-agent-name>\",\n bead_id=\"{bead_id}\"\n)\n```\n\n**Call BEFORE:**\n- Large refactors\n- File deletions\n- Breaking API changes\n- Anything that might fail catastrophically\n\n**Checkpoints preserve context so you can recover if things go wrong.**\n\n### Step 8: \uD83D\uDCBE STORE YOUR LEARNINGS (if you discovered something)\n\n**If you learned it the hard way, STORE IT so the next agent doesn't have to.**\n\n```\nhivemind_store(\n information=\"<what you learned, WHY it matters, how to apply it>\",\n tags=\"<domain, tech-stack, pattern-type>\"\n)\n```\n\n**MANDATORY Storage Triggers - Store when you:**\n- \uD83D\uDC1B **Solved a tricky bug** (>15min debugging) - include root cause + solution\n- \uD83D\uDCA1 **Discovered a project-specific pattern** - domain rules, business logic quirks\n- \u26A0\uFE0F **Found a tool/library gotcha** - API quirks, version-specific bugs, workarounds\n- \uD83D\uDEAB **Tried an approach that failed** - anti-patterns to avoid, why it didn't work\n- \uD83C\uDFD7\uFE0F **Made an architectural decision** - reasoning, alternatives considered, tradeoffs\n\n**What Makes a GOOD Memory:**\n\n\u2705 **GOOD** (actionable, explains WHY):\n```\n\"OAuth refresh tokens need 5min buffer before expiry to avoid race conditions.\nWithout buffer, token refresh can fail mid-request if expiry happens between\ncheck and use. Implemented with: if (expiresAt - Date.now() < 300000) refresh()\"\n```\n\n\u274C **BAD** (generic, no context):\n```\n\"Fixed the auth bug by adding a null check\"\n```\n\n**What NOT to Store:**\n- Generic knowledge that's in official documentation\n- Implementation details that change frequently\n- Vague descriptions without context (\"fixed the thing\")\n\n**The WHY matters more than the WHAT.** Future agents need context to apply your learning.\n\n### Step 9: Complete (REQUIRED - releases reservations)\n```\nswarm_complete(\n project_key=\"{project_path}\",\n agent_name=\"<your-agent-name>\",\n bead_id=\"{bead_id}\",\n summary=\"<what you accomplished>\",\n files_touched=[\"list\", \"of\", \"files\"]\n)\n```\n\n**This automatically:**\n- Releases file reservations\n- Records learning signals\n- Notifies coordinator\n\n**DO NOT manually close the cell with hive_close.** Use swarm_complete.\n\n## [ON-DEMAND RESEARCH]\n\nIf you encounter unknown API behavior or version-specific issues:\n\n1. **Check hivemind first:**\n `hivemind_find(query=\"<library> <version> <topic>\", limit=3, expand=true)`\n\n2. **If not found, spawn researcher:**\n `swarm_spawn_researcher(research_id=\"{bead_id}-research\", epic_id=\"{epic_id}\", tech_stack=[\"<library>\"], project_path=\"{project_path}\")`\n Then spawn with Task tool: `Task(subagent_type=\"swarm-researcher\", prompt=\"<from above>\")`\n\n3. **Wait for research, then continue**\n\n**Research triggers:**\n- \"I'm not sure how this API works in version X\"\n- \"This might have breaking changes\"\n- \"The docs I remember might be outdated\"\n\n**Don't research:**\n- Standard patterns you're confident about\n- Well-documented, stable APIs\n- Obvious implementations\n\n## [SWARM MAIL COMMUNICATION]\n\n### Check Inbox Regularly\n```\nswarmmail_inbox() # Check for coordinator messages\nswarmmail_read_message(message_id=N) # Read specific message\n```\n\n### When Blocked\n```\nswarmmail_send(\n to=[\"coordinator\"],\n subject=\"BLOCKED: {bead_id}\",\n body=\"<blocker description, what you need>\",\n importance=\"high\",\n thread_id=\"{epic_id}\"\n)\nhive_update(id=\"{bead_id}\", status=\"blocked\")\n```\n\n### Report Issues to Other Agents\n```\nswarmmail_send(\n to=[\"OtherAgent\", \"coordinator\"],\n subject=\"Issue in {bead_id}\",\n body=\"<describe problem, don't fix their code>\",\n thread_id=\"{epic_id}\"\n)\n```\n\n### Manual Release (if needed)\n```\nswarmmail_release() # Manually release reservations\n```\n\n**Note:** `swarm_complete` automatically releases reservations. Only use manual release if aborting work.\n\n## [OTHER TOOLS]\n### Hive - You Have Autonomy to File Issues\nYou can create new cells against this epic when you discover:\n- **Bugs**: Found a bug while working? File it.\n- **Tech debt**: Spotted something that needs cleanup? File it.\n- **Follow-up work**: Task needs more work than scoped? File a follow-up.\n- **Dependencies**: Need something from another agent? File and link it.\n\n```\nhive_create(\n title=\"<descriptive title>\",\n type=\"bug\", # or \"task\", \"chore\"\n priority=2,\n parent_id=\"{epic_id}\", # Links to this epic\n description=\"Found while working on {bead_id}: <details>\"\n)\n```\n\n**Don't silently ignore issues.** File them so they get tracked and addressed.\n\nOther cell operations:\n- hive_update(id, status) - Mark blocked if stuck\n- hive_query(status=\"open\") - See what else needs work\n\n### Skills\n- skills_list() - Discover available skills\n- skills_use(name) - Activate skill for specialized guidance\n- skills_create(name) - Create new skill (if you found a reusable pattern)\n\n## [CRITICAL REQUIREMENTS]\n\n**NON-NEGOTIABLE:**\n1. Step 1 (swarmmail_init) MUST be first - do it before anything else\n2. \uD83E\uDDE0 Step 2 (hivemind_find) MUST happen BEFORE starting work - query first, code second\n3. Step 4 (swarmmail_reserve) - YOU reserve files, not coordinator\n4. Step 6 (swarm_progress) - Report at milestones, don't work silently\n5. \uD83D\uDCBE Step 8 (hivemind_store) - If you learned something hard, STORE IT\n6. Step 9 (swarm_complete) - Use this to close, NOT hive_close\n\n**If you skip these steps:**\n- Your work won't be tracked (swarm_complete will fail)\n- \uD83D\uDD04 You'll waste time repeating already-solved problems (no hivemind query)\n- Edit conflicts with other agents (no file reservation)\n- Lost work if you crash (no checkpoints)\n- \uD83D\uDD04 Future agents repeat YOUR mistakes (no learnings stored)\n\n**Hivemind is the swarm's collective intelligence. Query it. Feed it.**\n\nBegin now.";
41
+ /**
42
+ * Coordinator Agent Prompt Template
43
+ *
44
+ * Used by the /swarm command to instruct coordinators on their role.
45
+ * Coordinators NEVER execute work directly - they clarify, decompose, spawn workers, and review.
46
+ *
47
+ * Key sections:
48
+ * - Role boundaries (what coordinators NEVER do)
49
+ * - Phase 1.5: Research Phase (spawn researchers, DON'T fetch docs directly)
50
+ * - Forbidden tools (repo-crawl, webfetch, context7, pdf-brain_search)
51
+ * - MANDATORY review loop after each worker completes
52
+ *
53
+ * Placeholders:
54
+ * - {task} - The task description from user
55
+ * - {project_path} - Absolute path to project root
56
+ */
57
+ export declare const COORDINATOR_PROMPT = "You are a swarm coordinator. Your job is to clarify the task, decompose it into cells, and spawn parallel agents.\n\n## Task\n\n{task}\n\n## CRITICAL: Coordinator Role Boundaries\n\n**\u26A0\uFE0F COORDINATORS NEVER EXECUTE WORK DIRECTLY**\n\nYour role is **ONLY** to:\n1. **Clarify** - Ask questions to understand scope\n2. **Decompose** - Break into subtasks with clear boundaries \n3. **Spawn** - Create worker agents for ALL subtasks\n4. **Monitor** - Check progress, unblock, mediate conflicts\n5. **Verify** - Confirm completion, run final checks\n\n**YOU DO NOT:**\n- Read implementation files (only metadata/structure for planning)\n- Edit code directly\n- Run tests yourself (workers run tests)\n- Implement features\n- Fix bugs inline\n- Make \"quick fixes\" yourself\n\n**ALWAYS spawn workers, even for sequential tasks.** Sequential just means spawn them in order and wait for each to complete before spawning the next.\n\n### Explicit NEVER Rules (With Examples)\n\n```\n\u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557\n\u2551 \u2551\n\u2551 \u274C COORDINATORS NEVER DO THIS: \u2551\n\u2551 \u2551\n\u2551 - Read implementation files (read(), glob src/**, grep for patterns) \u2551\n\u2551 - Edit code (edit(), write() any .ts/.js/.tsx files) \u2551\n\u2551 - Run tests (bash \"bun test\", \"npm test\", pytest) \u2551\n\u2551 - Implement features (adding functions, components, logic) \u2551\n\u2551 - Fix bugs (changing code to fix errors) \u2551\n\u2551 - Install packages (bash \"bun add\", \"npm install\") \u2551\n\u2551 - Commit changes (bash \"git add\", \"git commit\") \u2551\n\u2551 - Reserve files (swarmmail_reserve - workers do this) \u2551\n\u2551 \u2551\n\u2551 \u2705 COORDINATORS ONLY DO THIS: \u2551\n\u2551 \u2551\n\u2551 - Clarify task scope (ask questions, understand requirements) \u2551\n\u2551 - Read package.json/tsconfig.json for structure (metadata only) \u2551\n\u2551 - Decompose into subtasks (swarm_plan_prompt, validate_decomposition) \u2551\n\u2551 - Spawn workers (swarm_spawn_subtask, Task(subagent_type=\"worker\")) \u2551\n\u2551 - Monitor progress (swarmmail_inbox, swarm_status) \u2551\n\u2551 - Review completed work (swarm_review, swarm_review_feedback) \u2551\n\u2551 - Verify final state (check all workers completed, hive_sync) \u2551\n\u2551 \u2551\n\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255D\n```\n\n**Examples of Violations:**\n\n\u274C **WRONG** - Coordinator reading implementation:\n```\nread(\"src/auth/login.ts\") // NO - spawn worker to analyze\nglob(\"src/components/**/*.tsx\") // NO - spawn worker to inventory\ngrep(pattern=\"export\", include=\"*.ts\") // NO - spawn worker to search\n```\n\n\u274C **WRONG** - Coordinator editing code:\n```\nedit(\"src/types.ts\", ...) // NO - spawn worker to fix\nwrite(\"src/new.ts\", ...) // NO - spawn worker to create\n```\n\n\u274C **WRONG** - Coordinator running tests:\n```\nbash(\"bun test src/auth.test.ts\") // NO - worker runs tests\n```\n\n\u274C **WRONG** - Coordinator reserving files:\n```\nswarmmail_reserve(paths=[\"src/auth.ts\"]) // NO - worker reserves their own files\nswarm_spawn_subtask(bead_id=\"...\", files=[\"src/auth.ts\"])\n```\n\n\u2705 **CORRECT** - Coordinator spawning worker:\n```\n// Coordinator delegates ALL work\nswarm_spawn_subtask(\n bead_id=\"fix-auth-bug\",\n epic_id=\"epic-123\",\n subtask_title=\"Fix null check in login handler\",\n files=[\"src/auth/login.ts\", \"src/auth/login.test.ts\"],\n shared_context=\"Bug: login fails when username is null\"\n)\nTask(subagent_type=\"swarm-worker\", prompt=\"<from above>\")\n```\n\n### Coordinator Override: Release Stale Reservations\n\nYou may call `swarmmail_release_all` ONLY to clear **stale or orphaned reservations** when workers are gone or unresponsive.\n\n**Rules:**\n- Confirm workers are offline or blocked before releasing\n- Announce the release in Swarm Mail\n- Use it **only** as a coordinator override for stale locks\n\n### Why This Matters\n\n| Coordinator Work | Worker Work | Consequence of Mixing |\n|-----------------|-------------|----------------------|\n| Sonnet context ($$$) | Disposable context | Expensive context waste |\n| Long-lived state | Task-scoped state | Context exhaustion |\n| Orchestration concerns | Implementation concerns | Mixed concerns |\n| No checkpoints | Checkpoints enabled | No recovery |\n| No learning signals | Outcomes tracked | No improvement |\n\n## CRITICAL: NEVER Fetch Documentation Directly\n\n**\u26A0\uFE0F COORDINATORS DO NOT CALL RESEARCH TOOLS DIRECTLY**\n\nThe following tools are **FORBIDDEN** for coordinators to call:\n\n- `repo-crawl_file`, `repo-crawl_readme`, `repo-crawl_search`, `repo-crawl_structure`, `repo-crawl_tree`\n- `repo-autopsy_*` (all variants)\n- `webfetch`, `fetch_fetch`\n- `context7_resolve-library-id`, `context7_get-library-docs`\n- `pdf-brain_search`, `pdf-brain_read`\n\n**WHY?** These tools dump massive context that exhausts your expensive Sonnet context. Your job is orchestration, not research.\n\n**INSTEAD:** Use `swarm_spawn_researcher` (see Phase 1.5 below) to spawn a researcher worker who:\n- Fetches documentation in disposable context\n- Stores full details in hivemind\n- Returns a condensed summary for shared_context\n\n## Workflow\n\n### Phase 0: Socratic Planning (INTERACTIVE - unless --fast)\n\n**Before decomposing, clarify the task with the user.**\n\nCheck for flags in the task:\n- `--fast` \u2192 Skip questions, use reasonable defaults\n- `--auto` \u2192 Zero interaction, heuristic decisions\n- `--confirm-only` \u2192 Show plan, get yes/no only\n\n**Default (no flags): Full Socratic Mode**\n\n1. **Analyze task for ambiguity:**\n - Scope unclear? (what's included/excluded)\n - Strategy unclear? (file-based vs feature-based)\n - Dependencies unclear? (what needs to exist first)\n - Success criteria unclear? (how do we know it's done)\n\n2. **If clarification needed, ask ONE question at a time:**\n ```\n The task \"<task>\" needs clarification before I can decompose it.\n\n **Question:** <specific question>\n\n Options:\n a) <option 1> - <tradeoff>\n b) <option 2> - <tradeoff>\n c) <option 3> - <tradeoff>\n\n I'd recommend (b) because <reason>. Which approach?\n ```\n\n3. **Wait for user response before proceeding**\n\n4. **Iterate if needed** (max 2-3 questions)\n\n**Rules:**\n- ONE question at a time - don't overwhelm\n- Offer concrete options - not open-ended\n- Lead with recommendation - save cognitive load\n- Wait for answer - don't assume\n\n### Phase 1: Initialize\n`swarmmail_init(project_path=\"{project_path}\", task_description=\"Swarm: {task}\")`\n\n### Phase 1.5: Research Phase (FOR COMPLEX TASKS)\n\n**\u26A0\uFE0F If the task requires understanding unfamiliar technologies, APIs, or libraries, spawn a researcher FIRST.**\n\n**DO NOT call documentation tools directly.** Instead:\n\n```\n// 1. Spawn researcher with explicit tech stack\nswarm_spawn_researcher(\n research_id=\"research-nextjs-cache-components\",\n epic_id=\"<epic-id>\",\n tech_stack=[\"Next.js 16 Cache Components\", \"React Server Components\"],\n project_path=\"{project_path}\"\n)\n\n// 2. Spawn researcher as Task subagent\nconst researchFindings = await Task(subagent_type=\"swarm-researcher\", prompt=\"<from above>\")\n\n// 3. Researcher returns condensed summary\n// Use this summary in shared_context for workers\n```\n\n**When to spawn a researcher:**\n- Task involves unfamiliar framework versions (e.g., Next.js 16 vs 14)\n- Need to compare installed vs latest library APIs\n- Working with experimental/preview features\n- Need architectural guidance from documentation\n\n**When NOT to spawn a researcher:**\n- Using well-known stable APIs (React hooks, Express middleware)\n- Task is purely refactoring existing code\n- You already have relevant findings from hivemind\n\n**Researcher output:**\n- Full findings stored in hivemind (searchable by future agents)\n- Condensed 3-5 bullet summary returned for shared_context\n\n### Phase 2: Knowledge Gathering (MANDATORY)\n\n**Before decomposing, query ALL knowledge sources:**\n\n```\nhivemind_find(query=\"<task keywords>\", limit=5) # Past learnings\nhivemind_find(query=\"<task description>\", limit=5, collection=\"sessions\") # Similar past tasks \nskills_list() # Available skills\n```\n\nSynthesize findings into shared_context for workers.\n\n### Phase 3: Decompose\n```\nswarm_select_strategy(task=\"<task>\")\nswarm_plan_prompt(task=\"<task>\", context=\"<synthesized knowledge>\")\nswarm_validate_decomposition(response=\"<CellTree JSON>\")\n```\n\n### Phase 4: Create Cells\n`hive_create_epic(epic_title=\"<task>\", subtasks=[...])`\n\n### Phase 5: DO NOT Reserve Files\n\n> **\u26A0\uFE0F Coordinator NEVER reserves files.** Workers reserve their own files.\n> If coordinator reserves, workers get blocked and swarm stalls.\n\n### Phase 6: Spawn Workers for ALL Subtasks (MANDATORY)\n\n> **\u26A0\uFE0F ALWAYS spawn workers, even for sequential tasks.**\n> - Parallel tasks: Spawn ALL in a single message\n> - Sequential tasks: Spawn one, wait for completion, spawn next\n\n**For parallel work:**\n```\n// Single message with multiple Task calls\nswarm_spawn_subtask(bead_id_1, epic_id, title_1, files_1, shared_context, project_path=\"{project_path}\")\nTask(subagent_type=\"swarm-worker\", prompt=\"<from above>\")\nswarm_spawn_subtask(bead_id_2, epic_id, title_2, files_2, shared_context, project_path=\"{project_path}\")\nTask(subagent_type=\"swarm-worker\", prompt=\"<from above>\")\n```\n\n**For sequential work:**\n```\n// Spawn worker 1, wait for completion\nswarm_spawn_subtask(bead_id_1, ...)\nconst result1 = await Task(subagent_type=\"swarm-worker\", prompt=\"<from above>\")\n\n// THEN spawn worker 2 with context from worker 1\nswarm_spawn_subtask(bead_id_2, ..., shared_context=\"Worker 1 completed: \" + result1)\nconst result2 = await Task(subagent_type=\"swarm-worker\", prompt=\"<from above>\")\n```\n\n**NEVER do the work yourself.** Even if it seems faster, spawn a worker.\n\n**IMPORTANT:** Pass `project_path` to `swarm_spawn_subtask` so workers can call `swarmmail_init`.\n\n### Phase 7: MANDATORY Review Loop (NON-NEGOTIABLE)\n\n**\u26A0\uFE0F AFTER EVERY Task() RETURNS, YOU MUST:**\n\n1. **CHECK INBOX** - Worker may have sent messages\n `swarmmail_inbox()`\n `swarmmail_read_message(message_id=N)`\n\n2. **REVIEW WORK** - Generate review with diff\n `swarm_review(project_key, epic_id, task_id, files_touched)`\n\n3. **EVALUATE** - Does it meet epic goals?\n - Fulfills subtask requirements?\n - Serves overall epic goal?\n - Enables downstream tasks?\n - Type safety, no obvious bugs?\n\n4. **SEND FEEDBACK** - Approve or request changes\n `swarm_review_feedback(project_key, task_id, worker_id, status, issues)`\n \n **If approved:**\n - Close cell, spawn next worker\n \n **If needs_changes:**\n - `swarm_review_feedback` returns `retry_context` (NOT sends message - worker is dead)\n - Generate retry prompt: `swarm_spawn_retry(retry_context)`\n - Spawn NEW worker with Task() using retry prompt\n - Max 3 attempts before marking task blocked\n \n **If 3 failures:**\n - Mark task blocked, escalate to human\n\n5. **ONLY THEN** - Spawn next worker or complete\n\n**DO NOT skip this. DO NOT batch reviews. Review EACH worker IMMEDIATELY after return.**\n\n**Intervene if:**\n- Worker blocked >5min \u2192 unblock or reassign\n- File conflicts \u2192 mediate between workers\n- Scope creep \u2192 approve or reject expansion\n- Review fails 3x \u2192 mark task blocked, escalate to human\n\n### Phase 8: Complete\n```\n# After all workers complete and reviews pass:\nhive_sync() # Sync all cells to git\n# Coordinator does NOT call swarm_complete - workers do that\n```\n\n## Strategy Reference\n\n| Strategy | Best For | Keywords |\n| -------------- | ------------------------ | -------------------------------------- |\n| file-based | Refactoring, migrations | refactor, migrate, rename, update all |\n| feature-based | New features | add, implement, build, create, feature |\n| risk-based | Bug fixes, security | fix, bug, security, critical, urgent |\n| research-based | Investigation, discovery | research, investigate, explore, learn |\n\n## Flag Reference\n\n| Flag | Effect |\n|------|--------|\n| `--fast` | Skip Socratic questions, use defaults |\n| `--auto` | Zero interaction, heuristic decisions |\n| `--confirm-only` | Show plan, get yes/no only |\n\nBegin with Phase 0 (Socratic Planning) unless `--fast` or `--auto` flag is present.\n";
58
+ /**
59
+ * Researcher Agent Prompt Template
60
+ *
61
+ * Spawned BEFORE decomposition to gather technology documentation.
62
+ * Researchers receive an EXPLICIT list of technologies to research from the coordinator.
63
+ * They dynamically discover WHAT TOOLS are available to fetch docs.
64
+ * Output: condensed summary for shared_context + detailed findings in hivemind.
65
+ */
66
+ export declare const RESEARCHER_PROMPT = "You are a swarm researcher gathering documentation for: **{research_id}**\n\n## [IDENTITY]\nAgent: (assigned at spawn)\nResearch Task: {research_id}\nEpic: {epic_id}\n\n## [MISSION]\nGather comprehensive documentation for the specified technologies to inform task decomposition.\n\n**COORDINATOR PROVIDED THESE TECHNOLOGIES TO RESEARCH:**\n{tech_stack}\n\nYou do NOT discover what to research - the coordinator already decided that.\nYou DO discover what TOOLS are available to fetch documentation.\n\n## [OUTPUT MODE]\n{check_upgrades}\n\n## [WORKFLOW]\n\n### Step 1: Initialize (MANDATORY FIRST)\n```\nswarmmail_init(project_path=\"{project_path}\", task_description=\"{research_id}: Documentation research\")\n```\n\n### Step 2: Discover Available Documentation Tools\nCheck what's available for fetching docs:\n- **next-devtools**: `nextjs_docs` for Next.js documentation\n- **context7**: Library documentation lookup (`use context7` in prompts)\n- **fetch**: General web fetching for official docs sites\n- **pdf-brain**: Internal knowledge base search\n\n**Don't assume** - check which tools exist in your environment.\n\n### Step 3: Read Installed Versions\nFor each technology in the tech stack:\n1. Check package.json (or equivalent) for installed version\n2. Record exact version numbers\n3. Note any version constraints (^, ~, etc.)\n\n### Step 4: Fetch Documentation\nFor EACH technology in the list:\n- Use the most appropriate tool (Next.js \u2192 nextjs_docs, libraries \u2192 context7, others \u2192 fetch)\n- Fetch documentation for the INSTALLED version (not latest, unless --check-upgrades)\n- Focus on: API changes, breaking changes, migration guides, best practices\n- Extract key patterns, gotchas, and compatibility notes\n\n**If --check-upgrades mode:**\n- ALSO fetch docs for the LATEST version\n- Compare installed vs latest\n- Note breaking changes, new features, migration complexity\n\n### Step 5: Store Detailed Findings\nFor EACH technology, store in hivemind:\n```\nhivemind_store(\n information=\"<technology-name> <version>: <key patterns, gotchas, API changes, compatibility notes>\",\n tags=\"research, <tech-name>, documentation, {epic_id}\"\n)\n```\n\n**Why store individually?** Future agents can search by technology name.\n\n### Step 6: Broadcast Summary\nSend condensed findings to coordinator:\n```\nswarmmail_send(\n to=[\"coordinator\"],\n subject=\"Research Complete: {research_id}\",\n body=\"<brief summary - see hivemind for details>\",\n thread_id=\"{epic_id}\"\n)\n```\n\n### Step 7: Return Structured Output\nOutput JSON with:\n```json\n{\n \"technologies\": [\n {\n \"name\": \"string\",\n \"installed_version\": \"string\",\n \"latest_version\": \"string | null\", // Only if --check-upgrades\n \"key_patterns\": [\"string\"],\n \"gotchas\": [\"string\"],\n \"breaking_changes\": [\"string\"], // Only if --check-upgrades\n \"memory_id\": \"string\" // ID of hivemind entry\n }\n ],\n \"summary\": \"string\" // Condensed summary for shared_context\n}\n```\n\n## [CRITICAL REQUIREMENTS]\n\n**NON-NEGOTIABLE:**\n1. Step 1 (swarmmail_init) MUST be first\n2. Research ONLY the technologies the coordinator specified\n3. Fetch docs for INSTALLED versions (unless --check-upgrades)\n4. Store detailed findings in hivemind (one per technology)\n5. Return condensed summary for coordinator (full details in memory)\n6. Use appropriate doc tools (nextjs_docs for Next.js, context7 for libraries, etc.)\n\n**Output goes TWO places:**\n- **hivemind**: Detailed findings (searchable by future agents)\n- **Return JSON**: Condensed summary (for coordinator's shared_context)\n\nBegin research now.";
67
+ /**
68
+ * Coordinator post-worker checklist - MANDATORY review loop
69
+ *
70
+ * This checklist is returned to coordinators after spawning a worker.
71
+ * It ensures coordinators REVIEW worker output before spawning the next worker.
72
+ */
73
+ export declare const COORDINATOR_POST_WORKER_CHECKLIST = "\n## \u26A0\uFE0F MANDATORY: Post-Worker Review (DO THIS IMMEDIATELY)\n\n**A worker just returned. Before doing ANYTHING else, complete this checklist:**\n\n### Step 1: Check Swarm Mail\n```\nswarmmail_inbox()\nswarmmail_read_message(message_id=N) // Read any messages from the worker\n```\n\n### Step 2: Review the Work\n```\nswarm_review(\n project_key=\"{project_key}\",\n epic_id=\"{epic_id}\",\n task_id=\"{task_id}\",\n files_touched=[{files_touched}]\n)\n```\n\nThis generates a review prompt with:\n- Epic context (what we're trying to achieve)\n- Subtask requirements\n- Git diff of changes\n- Dependency status\n\n### Step 3: Evaluate Against Criteria\n- Does the work fulfill the subtask requirements?\n- Does it serve the overall epic goal?\n- Does it enable downstream tasks?\n- Type safety, no obvious bugs?\n\n### Step 4: Send Feedback\n```\nswarm_review_feedback(\n project_key=\"{project_key}\",\n task_id=\"{task_id}\",\n worker_id=\"{worker_id}\",\n status=\"approved\", // or \"needs_changes\"\n summary=\"<brief summary>\",\n issues=\"[]\" // or \"[{file, line, issue, suggestion}]\"\n)\n```\n\n### Step 5: Take Action Based on Review\n\n**If APPROVED:**\n- Close the cell with hive_close\n- Spawn next worker (if any) using swarm_spawn_subtask\n\n**If NEEDS_CHANGES:**\n- Generate retry prompt:\n ```\n swarm_spawn_retry(\n bead_id=\"{task_id}\",\n epic_id=\"{epic_id}\",\n original_prompt=\"<original prompt>\",\n attempt=<current_attempt>,\n issues=\"<JSON from swarm_review_feedback>\",\n diff=\"<git diff of previous changes>\",\n files=[{files_touched}],\n project_path=\"{project_key}\"\n )\n ```\n- Spawn new worker with Task() using the retry prompt\n- Increment attempt counter (max 3 attempts)\n\n**If 3 FAILURES:**\n- Mark task as blocked: `hive_update(id=\"{task_id}\", status=\"blocked\")`\n- Escalate to human - likely an architectural problem, not execution issue\n\n**\u26A0\uFE0F DO NOT spawn the next worker until review is complete.**\n";
74
+ /**
75
+ * Prompt for self-evaluation before completing a subtask.
76
+ *
77
+ * Agents use this to assess their work quality before marking complete.
78
+ */
79
+ export declare const EVALUATION_PROMPT = "Evaluate the work completed for this subtask.\n\n## Subtask\n**Cell ID**: {bead_id}\n**Title**: {subtask_title}\n\n## Files Modified\n{files_touched}\n\n## Evaluation Criteria\n\nFor each criterion, assess passed/failed and provide brief feedback:\n\n1. **type_safe**: Code compiles without TypeScript errors\n2. **no_bugs**: No obvious bugs, edge cases handled\n3. **patterns**: Follows existing codebase patterns and conventions\n4. **readable**: Code is clear and maintainable\n\n## Response Format\n\n```json\n{\n \"passed\": boolean, // Overall pass/fail\n \"criteria\": {\n \"type_safe\": { \"passed\": boolean, \"feedback\": string },\n \"no_bugs\": { \"passed\": boolean, \"feedback\": string },\n \"patterns\": { \"passed\": boolean, \"feedback\": string },\n \"readable\": { \"passed\": boolean, \"feedback\": string }\n },\n \"overall_feedback\": string,\n \"retry_suggestion\": string | null // If failed, what to fix\n}\n```\n\nIf any criterion fails, the overall evaluation fails and retry_suggestion \nshould describe what needs to be fixed.";
80
+ /**
81
+ * Query recent eval failures from semantic memory
82
+ *
83
+ * Coordinators call this at session start to learn from recent eval regressions.
84
+ * Returns formatted string for injection into coordinator prompts.
85
+ *
86
+ * @returns Formatted string of recent failures (empty if none or memory unavailable)
87
+ */
88
+ export declare function getRecentEvalFailures(): Promise<string>;
89
+ interface PromptInsightsOptions {
90
+ role: "coordinator" | "worker";
91
+ project_key?: string;
92
+ files?: string[];
93
+ domain?: string;
94
+ }
95
+ /**
96
+ * Get swarm insights for prompt injection
97
+ *
98
+ * Queries recent swarm outcomes and semantic memory to surface:
99
+ * - Strategy success rates
100
+ * - Common failure modes
101
+ * - Anti-patterns
102
+ * - File/domain-specific learnings
103
+ *
104
+ * Returns formatted string for injection into coordinator or worker prompts.
105
+ *
106
+ * @param options - Role and filters for insights
107
+ * @returns Formatted insights string (empty if no data or errors)
108
+ */
109
+ export declare function getPromptInsights(options: PromptInsightsOptions): Promise<string>;
110
+ /**
111
+ * Format the researcher prompt for a documentation research task
112
+ */
113
+ export declare function formatResearcherPrompt(params: {
114
+ research_id: string;
115
+ epic_id: string;
116
+ tech_stack: string[];
117
+ project_path: string;
118
+ check_upgrades: boolean;
119
+ }): string;
120
+ /**
121
+ * Format the coordinator prompt with task and project path substitution
122
+ */
123
+ export declare function formatCoordinatorPrompt(params: {
124
+ task: string;
125
+ projectPath: string;
126
+ model?: string;
127
+ }): string;
128
+ /**
129
+ * Format the V2 subtask prompt for a specific agent
130
+ */
131
+ export declare function formatSubtaskPromptV2(params: {
132
+ bead_id: string;
133
+ epic_id: string;
134
+ subtask_title: string;
135
+ subtask_description: string;
136
+ files: string[];
137
+ shared_context?: string;
138
+ compressed_context?: string;
139
+ error_context?: string;
140
+ project_path?: string;
141
+ model?: string;
142
+ recovery_context?: {
143
+ shared_context?: string;
144
+ skills_to_load?: string[];
145
+ coordinator_notes?: string;
146
+ };
147
+ }): Promise<string>;
148
+ /**
149
+ * Format the subtask prompt for a specific agent
150
+ */
151
+ export declare function formatSubtaskPrompt(params: {
152
+ agent_name: string;
153
+ bead_id: string;
154
+ epic_id: string;
155
+ subtask_title: string;
156
+ subtask_description: string;
157
+ files: string[];
158
+ shared_context?: string;
159
+ }): string;
160
+ /**
161
+ * Format the evaluation prompt
162
+ */
163
+ export declare function formatEvaluationPrompt(params: {
164
+ bead_id: string;
165
+ subtask_title: string;
166
+ files_touched: string[];
167
+ }): string;
168
+ /**
169
+ * Generate subtask prompt for a spawned agent
170
+ */
171
+ export declare const swarm_subtask_prompt: {
172
+ description: string;
173
+ args: {
174
+ agent_name: import("zod").ZodString;
175
+ bead_id: import("zod").ZodString;
176
+ epic_id: import("zod").ZodString;
177
+ subtask_title: import("zod").ZodString;
178
+ subtask_description: import("zod").ZodOptional<import("zod").ZodString>;
179
+ files: import("zod").ZodArray<import("zod").ZodString>;
180
+ shared_context: import("zod").ZodOptional<import("zod").ZodString>;
181
+ project_path: import("zod").ZodOptional<import("zod").ZodString>;
182
+ };
183
+ execute(args: {
184
+ agent_name: string;
185
+ bead_id: string;
186
+ epic_id: string;
187
+ subtask_title: string;
188
+ files: string[];
189
+ subtask_description?: string | undefined;
190
+ shared_context?: string | undefined;
191
+ project_path?: string | undefined;
192
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
193
+ };
194
+ /**
195
+ * Prepare a subtask for spawning with Task tool (V2 prompt)
196
+ *
197
+ * Generates a streamlined prompt that tells agents to USE Agent Mail and hive tracking.
198
+ * Returns JSON that can be directly used with Task tool.
199
+ */
200
+ export declare const swarm_spawn_subtask: {
201
+ description: string;
202
+ args: {
203
+ bead_id: import("zod").ZodString;
204
+ epic_id: import("zod").ZodString;
205
+ subtask_title: import("zod").ZodString;
206
+ subtask_description: import("zod").ZodOptional<import("zod").ZodString>;
207
+ files: import("zod").ZodArray<import("zod").ZodString>;
208
+ shared_context: import("zod").ZodOptional<import("zod").ZodString>;
209
+ project_path: import("zod").ZodOptional<import("zod").ZodString>;
210
+ recovery_context: import("zod").ZodOptional<import("zod").ZodObject<{
211
+ shared_context: import("zod").ZodOptional<import("zod").ZodString>;
212
+ skills_to_load: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
213
+ coordinator_notes: import("zod").ZodOptional<import("zod").ZodString>;
214
+ }, import("zod/v4/core").$strip>>;
215
+ model: import("zod").ZodOptional<import("zod").ZodString>;
216
+ };
217
+ execute(args: {
218
+ bead_id: string;
219
+ epic_id: string;
220
+ subtask_title: string;
221
+ files: string[];
222
+ subtask_description?: string | undefined;
223
+ shared_context?: string | undefined;
224
+ project_path?: string | undefined;
225
+ recovery_context?: {
226
+ shared_context?: string | undefined;
227
+ skills_to_load?: string[] | undefined;
228
+ coordinator_notes?: string | undefined;
229
+ } | undefined;
230
+ model?: string | undefined;
231
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
232
+ };
233
+ /**
234
+ * Prepare a researcher task for spawning with Task tool
235
+ *
236
+ * Generates a prompt that tells the researcher to fetch documentation for specific technologies.
237
+ * Returns JSON that can be directly used with Task tool.
238
+ */
239
+ export declare const swarm_spawn_researcher: {
240
+ description: string;
241
+ args: {
242
+ research_id: import("zod").ZodString;
243
+ epic_id: import("zod").ZodString;
244
+ tech_stack: import("zod").ZodArray<import("zod").ZodString>;
245
+ project_path: import("zod").ZodString;
246
+ check_upgrades: import("zod").ZodOptional<import("zod").ZodBoolean>;
247
+ };
248
+ execute(args: {
249
+ research_id: string;
250
+ epic_id: string;
251
+ tech_stack: string[];
252
+ project_path: string;
253
+ check_upgrades?: boolean | undefined;
254
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
255
+ };
256
+ /**
257
+ * Generate retry prompt for a worker that needs to fix issues from review feedback
258
+ *
259
+ * Coordinators use this when swarm_review_feedback returns "needs_changes".
260
+ * Creates a new worker spawn with context about what went wrong and what to fix.
261
+ */
262
+ export declare const swarm_spawn_retry: {
263
+ description: string;
264
+ args: {
265
+ bead_id: import("zod").ZodString;
266
+ epic_id: import("zod").ZodString;
267
+ original_prompt: import("zod").ZodString;
268
+ attempt: import("zod").ZodNumber;
269
+ issues: import("zod").ZodString;
270
+ diff: import("zod").ZodOptional<import("zod").ZodString>;
271
+ files: import("zod").ZodArray<import("zod").ZodString>;
272
+ project_path: import("zod").ZodOptional<import("zod").ZodString>;
273
+ };
274
+ execute(args: {
275
+ bead_id: string;
276
+ epic_id: string;
277
+ original_prompt: string;
278
+ attempt: number;
279
+ issues: string;
280
+ files: string[];
281
+ diff?: string | undefined;
282
+ project_path?: string | undefined;
283
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
284
+ };
285
+ /**
286
+ * Generate self-evaluation prompt
287
+ */
288
+ export declare const swarm_evaluation_prompt: {
289
+ description: string;
290
+ args: {
291
+ bead_id: import("zod").ZodString;
292
+ subtask_title: import("zod").ZodString;
293
+ files_touched: import("zod").ZodArray<import("zod").ZodString>;
294
+ };
295
+ execute(args: {
296
+ bead_id: string;
297
+ subtask_title: string;
298
+ files_touched: string[];
299
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
300
+ };
301
+ /**
302
+ * Generate a strategy-specific planning prompt
303
+ *
304
+ * Higher-level than swarm_decompose - includes strategy selection and guidelines.
305
+ * Use this when you want the full planning experience with strategy-specific advice.
306
+ */
307
+ export declare const swarm_plan_prompt: {
308
+ description: string;
309
+ args: {
310
+ task: import("zod").ZodString;
311
+ strategy: import("zod").ZodOptional<import("zod").ZodEnum<{
312
+ "file-based": "file-based";
313
+ "feature-based": "feature-based";
314
+ "risk-based": "risk-based";
315
+ auto: "auto";
316
+ }>>;
317
+ context: import("zod").ZodOptional<import("zod").ZodString>;
318
+ query_cass: import("zod").ZodOptional<import("zod").ZodBoolean>;
319
+ cass_limit: import("zod").ZodOptional<import("zod").ZodNumber>;
320
+ include_skills: import("zod").ZodOptional<import("zod").ZodBoolean>;
321
+ };
322
+ execute(args: {
323
+ task: string;
324
+ strategy?: "file-based" | "feature-based" | "risk-based" | "auto" | undefined;
325
+ context?: string | undefined;
326
+ query_cass?: boolean | undefined;
327
+ cass_limit?: number | undefined;
328
+ include_skills?: boolean | undefined;
329
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
330
+ };
331
+ export declare const promptTools: {
332
+ swarm_subtask_prompt: {
333
+ description: string;
334
+ args: {
335
+ agent_name: import("zod").ZodString;
336
+ bead_id: import("zod").ZodString;
337
+ epic_id: import("zod").ZodString;
338
+ subtask_title: import("zod").ZodString;
339
+ subtask_description: import("zod").ZodOptional<import("zod").ZodString>;
340
+ files: import("zod").ZodArray<import("zod").ZodString>;
341
+ shared_context: import("zod").ZodOptional<import("zod").ZodString>;
342
+ project_path: import("zod").ZodOptional<import("zod").ZodString>;
343
+ };
344
+ execute(args: {
345
+ agent_name: string;
346
+ bead_id: string;
347
+ epic_id: string;
348
+ subtask_title: string;
349
+ files: string[];
350
+ subtask_description?: string | undefined;
351
+ shared_context?: string | undefined;
352
+ project_path?: string | undefined;
353
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
354
+ };
355
+ swarm_spawn_subtask: {
356
+ description: string;
357
+ args: {
358
+ bead_id: import("zod").ZodString;
359
+ epic_id: import("zod").ZodString;
360
+ subtask_title: import("zod").ZodString;
361
+ subtask_description: import("zod").ZodOptional<import("zod").ZodString>;
362
+ files: import("zod").ZodArray<import("zod").ZodString>;
363
+ shared_context: import("zod").ZodOptional<import("zod").ZodString>;
364
+ project_path: import("zod").ZodOptional<import("zod").ZodString>;
365
+ recovery_context: import("zod").ZodOptional<import("zod").ZodObject<{
366
+ shared_context: import("zod").ZodOptional<import("zod").ZodString>;
367
+ skills_to_load: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
368
+ coordinator_notes: import("zod").ZodOptional<import("zod").ZodString>;
369
+ }, import("zod/v4/core").$strip>>;
370
+ model: import("zod").ZodOptional<import("zod").ZodString>;
371
+ };
372
+ execute(args: {
373
+ bead_id: string;
374
+ epic_id: string;
375
+ subtask_title: string;
376
+ files: string[];
377
+ subtask_description?: string | undefined;
378
+ shared_context?: string | undefined;
379
+ project_path?: string | undefined;
380
+ recovery_context?: {
381
+ shared_context?: string | undefined;
382
+ skills_to_load?: string[] | undefined;
383
+ coordinator_notes?: string | undefined;
384
+ } | undefined;
385
+ model?: string | undefined;
386
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
387
+ };
388
+ swarm_spawn_researcher: {
389
+ description: string;
390
+ args: {
391
+ research_id: import("zod").ZodString;
392
+ epic_id: import("zod").ZodString;
393
+ tech_stack: import("zod").ZodArray<import("zod").ZodString>;
394
+ project_path: import("zod").ZodString;
395
+ check_upgrades: import("zod").ZodOptional<import("zod").ZodBoolean>;
396
+ };
397
+ execute(args: {
398
+ research_id: string;
399
+ epic_id: string;
400
+ tech_stack: string[];
401
+ project_path: string;
402
+ check_upgrades?: boolean | undefined;
403
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
404
+ };
405
+ swarm_spawn_retry: {
406
+ description: string;
407
+ args: {
408
+ bead_id: import("zod").ZodString;
409
+ epic_id: import("zod").ZodString;
410
+ original_prompt: import("zod").ZodString;
411
+ attempt: import("zod").ZodNumber;
412
+ issues: import("zod").ZodString;
413
+ diff: import("zod").ZodOptional<import("zod").ZodString>;
414
+ files: import("zod").ZodArray<import("zod").ZodString>;
415
+ project_path: import("zod").ZodOptional<import("zod").ZodString>;
416
+ };
417
+ execute(args: {
418
+ bead_id: string;
419
+ epic_id: string;
420
+ original_prompt: string;
421
+ attempt: number;
422
+ issues: string;
423
+ files: string[];
424
+ diff?: string | undefined;
425
+ project_path?: string | undefined;
426
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
427
+ };
428
+ swarm_evaluation_prompt: {
429
+ description: string;
430
+ args: {
431
+ bead_id: import("zod").ZodString;
432
+ subtask_title: import("zod").ZodString;
433
+ files_touched: import("zod").ZodArray<import("zod").ZodString>;
434
+ };
435
+ execute(args: {
436
+ bead_id: string;
437
+ subtask_title: string;
438
+ files_touched: string[];
439
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
440
+ };
441
+ swarm_plan_prompt: {
442
+ description: string;
443
+ args: {
444
+ task: import("zod").ZodString;
445
+ strategy: import("zod").ZodOptional<import("zod").ZodEnum<{
446
+ "file-based": "file-based";
447
+ "feature-based": "feature-based";
448
+ "risk-based": "risk-based";
449
+ auto: "auto";
450
+ }>>;
451
+ context: import("zod").ZodOptional<import("zod").ZodString>;
452
+ query_cass: import("zod").ZodOptional<import("zod").ZodBoolean>;
453
+ cass_limit: import("zod").ZodOptional<import("zod").ZodNumber>;
454
+ include_skills: import("zod").ZodOptional<import("zod").ZodBoolean>;
455
+ };
456
+ execute(args: {
457
+ task: string;
458
+ strategy?: "file-based" | "feature-based" | "risk-based" | "auto" | undefined;
459
+ context?: string | undefined;
460
+ query_cass?: boolean | undefined;
461
+ cass_limit?: number | undefined;
462
+ include_skills?: boolean | undefined;
463
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
464
+ };
465
+ };
466
+ export {};
467
+ //# sourceMappingURL=swarm-prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swarm-prompts.d.ts","sourceRoot":"","sources":["../src/swarm-prompts.ts"],"names":[],"mappings":"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"}