mcp-subagents-opencode 1.0.0 → 1.2.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 (159) hide show
  1. package/build/helpers.d.ts +43 -0
  2. package/build/helpers.d.ts.map +1 -1
  3. package/build/helpers.js +99 -8
  4. package/build/helpers.js.map +1 -1
  5. package/build/index.js +17 -3
  6. package/build/index.js.map +1 -1
  7. package/build/models.d.ts +27 -14
  8. package/build/models.d.ts.map +1 -1
  9. package/build/models.js +78 -39
  10. package/build/models.js.map +1 -1
  11. package/build/server/register-notifications.d.ts +5 -0
  12. package/build/server/register-notifications.d.ts.map +1 -1
  13. package/build/server/register-notifications.js +28 -3
  14. package/build/server/register-notifications.js.map +1 -1
  15. package/build/server/register-resources.d.ts.map +1 -1
  16. package/build/server/register-resources.js +9 -4
  17. package/build/server/register-resources.js.map +1 -1
  18. package/build/server/register-tasks.d.ts.map +1 -1
  19. package/build/server/register-tasks.js +13 -6
  20. package/build/server/register-tasks.js.map +1 -1
  21. package/build/server/register-tools.d.ts.map +1 -1
  22. package/build/server/register-tools.js +4 -3
  23. package/build/server/register-tools.js.map +1 -1
  24. package/build/services/model-discovery.d.ts +56 -0
  25. package/build/services/model-discovery.d.ts.map +1 -0
  26. package/build/services/model-discovery.js +259 -0
  27. package/build/services/model-discovery.js.map +1 -0
  28. package/build/services/opencode-client.d.ts +15 -1
  29. package/build/services/opencode-client.d.ts.map +1 -1
  30. package/build/services/opencode-client.js +229 -8
  31. package/build/services/opencode-client.js.map +1 -1
  32. package/build/services/opencode-spawner.d.ts +8 -2
  33. package/build/services/opencode-spawner.d.ts.map +1 -1
  34. package/build/services/opencode-spawner.js +331 -28
  35. package/build/services/opencode-spawner.js.map +1 -1
  36. package/build/services/output-file.d.ts +7 -5
  37. package/build/services/output-file.d.ts.map +1 -1
  38. package/build/services/output-file.js +28 -31
  39. package/build/services/output-file.js.map +1 -1
  40. package/build/services/task-manager.d.ts +6 -2
  41. package/build/services/task-manager.d.ts.map +1 -1
  42. package/build/services/task-manager.js +34 -5
  43. package/build/services/task-manager.js.map +1 -1
  44. package/build/services/task-persistence.d.ts +3 -3
  45. package/build/services/task-persistence.d.ts.map +1 -1
  46. package/build/services/task-persistence.js +15 -13
  47. package/build/services/task-persistence.js.map +1 -1
  48. package/build/services/template-home.d.ts +25 -0
  49. package/build/services/template-home.d.ts.map +1 -0
  50. package/build/services/template-home.js +105 -0
  51. package/build/services/template-home.js.map +1 -0
  52. package/build/templates/index.d.ts +1 -0
  53. package/build/templates/index.d.ts.map +1 -1
  54. package/build/templates/index.js +34 -7
  55. package/build/templates/index.js.map +1 -1
  56. package/build/templates/overlays/coder-csharp.mdx +6 -0
  57. package/build/templates/overlays/coder-go.mdx +6 -0
  58. package/build/templates/overlays/coder-java.mdx +6 -0
  59. package/build/templates/overlays/coder-kotlin.mdx +6 -0
  60. package/build/templates/overlays/coder-nextjs.mdx +6 -0
  61. package/build/templates/overlays/coder-python.mdx +6 -0
  62. package/build/templates/overlays/coder-react.mdx +6 -0
  63. package/build/templates/overlays/coder-ruby.mdx +6 -0
  64. package/build/templates/overlays/coder-rust.mdx +6 -0
  65. package/build/templates/overlays/coder-supabase.mdx +6 -0
  66. package/build/templates/overlays/coder-supastarter.mdx +6 -0
  67. package/build/templates/overlays/coder-swift.mdx +6 -0
  68. package/build/templates/overlays/coder-tauri.mdx +6 -0
  69. package/build/templates/overlays/coder-triggerdev.mdx +6 -0
  70. package/build/templates/overlays/coder-typescript.mdx +6 -0
  71. package/build/templates/overlays/coder-vue.mdx +6 -0
  72. package/build/templates/overlays/planner-architecture.mdx +6 -0
  73. package/build/templates/overlays/planner-bugfix.mdx +6 -0
  74. package/build/templates/overlays/planner-feature.mdx +6 -0
  75. package/build/templates/overlays/planner-migration.mdx +6 -0
  76. package/build/templates/overlays/planner-refactor.mdx +6 -0
  77. package/build/templates/overlays/researcher-library.mdx +6 -0
  78. package/build/templates/overlays/researcher-performance.mdx +6 -0
  79. package/build/templates/overlays/researcher-security.mdx +6 -0
  80. package/build/templates/overlays/tester-graphql.mdx +6 -0
  81. package/build/templates/overlays/tester-playwright.mdx +6 -0
  82. package/build/templates/overlays/tester-rest.mdx +6 -0
  83. package/build/templates/overlays/tester-suite.mdx +6 -0
  84. package/build/templates/super-coder.mdx +21 -0
  85. package/build/templates/super-planner.mdx +21 -0
  86. package/build/templates/super-researcher.mdx +21 -0
  87. package/build/templates/super-tester.mdx +21 -0
  88. package/build/tools/answer-question.d.ts.map +1 -1
  89. package/build/tools/answer-question.js +4 -3
  90. package/build/tools/answer-question.js.map +1 -1
  91. package/build/tools/cancel-task.d.ts.map +1 -1
  92. package/build/tools/cancel-task.js +6 -2
  93. package/build/tools/cancel-task.js.map +1 -1
  94. package/build/tools/send-message.d.ts.map +1 -1
  95. package/build/tools/send-message.js +13 -2
  96. package/build/tools/send-message.js.map +1 -1
  97. package/build/tools/shared-spawn.d.ts.map +1 -1
  98. package/build/tools/shared-spawn.js +19 -2
  99. package/build/tools/shared-spawn.js.map +1 -1
  100. package/build/tools/spawn-agent.d.ts +1 -1
  101. package/build/tools/spawn-agent.js +5 -5
  102. package/build/tools/spawn-agent.js.map +1 -1
  103. package/package.json +1 -1
  104. package/build/services/account-manager.d.ts +0 -88
  105. package/build/services/account-manager.d.ts.map +0 -1
  106. package/build/services/account-manager.js +0 -239
  107. package/build/services/account-manager.js.map +0 -1
  108. package/build/services/claude-code-runner.d.ts +0 -15
  109. package/build/services/claude-code-runner.d.ts.map +0 -1
  110. package/build/services/claude-code-runner.js +0 -475
  111. package/build/services/claude-code-runner.js.map +0 -1
  112. package/build/services/exhaustion-fallback.d.ts +0 -27
  113. package/build/services/exhaustion-fallback.d.ts.map +0 -1
  114. package/build/services/exhaustion-fallback.js +0 -30
  115. package/build/services/exhaustion-fallback.js.map +0 -1
  116. package/build/services/fallback-orchestrator.d.ts +0 -16
  117. package/build/services/fallback-orchestrator.d.ts.map +0 -1
  118. package/build/services/fallback-orchestrator.js +0 -48
  119. package/build/services/fallback-orchestrator.js.map +0 -1
  120. package/build/services/sdk-client-manager.d.ts +0 -149
  121. package/build/services/sdk-client-manager.d.ts.map +0 -1
  122. package/build/services/sdk-client-manager.js +0 -632
  123. package/build/services/sdk-client-manager.js.map +0 -1
  124. package/build/services/sdk-session-adapter.d.ts +0 -203
  125. package/build/services/sdk-session-adapter.d.ts.map +0 -1
  126. package/build/services/sdk-session-adapter.js +0 -1088
  127. package/build/services/sdk-session-adapter.js.map +0 -1
  128. package/build/services/sdk-spawner.d.ts +0 -42
  129. package/build/services/sdk-spawner.d.ts.map +0 -1
  130. package/build/services/sdk-spawner.js +0 -488
  131. package/build/services/sdk-spawner.js.map +0 -1
  132. package/build/services/session-hooks.d.ts +0 -24
  133. package/build/services/session-hooks.d.ts.map +0 -1
  134. package/build/services/session-hooks.js +0 -130
  135. package/build/services/session-hooks.js.map +0 -1
  136. package/build/services/session-snapshot.d.ts +0 -19
  137. package/build/services/session-snapshot.d.ts.map +0 -1
  138. package/build/services/session-snapshot.js +0 -203
  139. package/build/services/session-snapshot.js.map +0 -1
  140. package/build/tools/spawn-coder.d.ts +0 -70
  141. package/build/tools/spawn-coder.d.ts.map +0 -1
  142. package/build/tools/spawn-coder.js +0 -71
  143. package/build/tools/spawn-coder.js.map +0 -1
  144. package/build/tools/spawn-planner.d.ts +0 -70
  145. package/build/tools/spawn-planner.d.ts.map +0 -1
  146. package/build/tools/spawn-planner.js +0 -71
  147. package/build/tools/spawn-planner.js.map +0 -1
  148. package/build/tools/spawn-researcher.d.ts +0 -70
  149. package/build/tools/spawn-researcher.d.ts.map +0 -1
  150. package/build/tools/spawn-researcher.js +0 -70
  151. package/build/tools/spawn-researcher.js.map +0 -1
  152. package/build/tools/spawn-task.d.ts +0 -74
  153. package/build/tools/spawn-task.d.ts.map +0 -1
  154. package/build/tools/spawn-task.js +0 -107
  155. package/build/tools/spawn-task.js.map +0 -1
  156. package/build/tools/spawn-tester.d.ts +0 -70
  157. package/build/tools/spawn-tester.d.ts.map +0 -1
  158. package/build/tools/spawn-tester.js +0 -69
  159. package/build/tools/spawn-tester.js.map +0 -1
@@ -50,7 +50,7 @@ export async function handleAnswerQuestion(args) {
50
50
  // Check if task exists
51
51
  const task = taskManager.getTask(taskId);
52
52
  if (!task) {
53
- return mcpError('Task not found', 'Read resource `task:///all` to find valid task IDs.');
53
+ return mcpError(`Task "${taskId}" not found`, 'It may have expired (TTL) or never existed. Read resource `task:///all` to find valid task IDs.');
54
54
  }
55
55
  // Check if there's a pending question
56
56
  if (!questionRegistry.hasPendingQuestion(taskId)) {
@@ -100,9 +100,10 @@ export async function handleAnswerQuestion(args) {
100
100
  }
101
101
  catch (error) {
102
102
  if (error instanceof z.ZodError) {
103
- return mcpError('Invalid input', 'Required: task_id (string), answer (string)');
103
+ const issues = error.issues.map(i => `${i.path.join('.')}: ${i.message}`).join('; ');
104
+ return mcpError(`Invalid input: ${issues}`, 'Required: task_id (string), answer (string). Answer can be a choice number (1, 2, 3...), exact choice text, or "CUSTOM: your answer".');
104
105
  }
105
- return mcpError(error instanceof Error ? error.message : 'Unknown error', 'Check task_id is valid and task has a pending question.');
106
+ return mcpError(error instanceof Error ? error.message : 'Unknown error', 'Verify that task_id is valid and the task has a pending question. Read resource `task:///all` to check.');
106
107
  }
107
108
  }
108
109
  //# sourceMappingURL=answer-question.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"answer-question.js","sourceRoot":"","sources":["../../src/tools/answer-question.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"answer-question.js","sourceRoot":"","sources":["../../src/tools/answer-question.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cancel-task.d.ts","sourceRoot":"","sources":["../../src/tools/cancel-task.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgC1B,CAAC;AASF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CAsHjI"}
1
+ {"version":3,"file":"cancel-task.d.ts","sourceRoot":"","sources":["../../src/tools/cancel-task.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgC1B,CAAC;AASF,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CA6HjI"}
@@ -76,7 +76,7 @@ export async function handleCancelTask(args) {
76
76
  for (const taskId of taskIds) {
77
77
  const task = taskManager.getTask(taskId);
78
78
  if (!task) {
79
- results.push({ task_id: taskId, success: false, error: 'Not found' });
79
+ results.push({ task_id: taskId, success: false, error: `Task "${taskId}" not found. Read resource \`task:///all\` for valid IDs.` });
80
80
  continue;
81
81
  }
82
82
  const previousStatus = task.status;
@@ -138,7 +138,11 @@ export async function handleCancelTask(args) {
138
138
  return mcpText(parts.join('\n'));
139
139
  }
140
140
  catch (error) {
141
- return mcpError(error instanceof Error ? error.message : 'Unknown error', 'Provide task_id as string, array, or "all". Check task:///all for valid IDs.');
141
+ if (error instanceof z.ZodError) {
142
+ const issues = error.issues.map(i => `${i.path.join('.')}: ${i.message}`).join('; ');
143
+ return mcpError(`Invalid input: ${issues}`, 'Required: task_id (string, array, or "all"). Optional: clear (boolean), confirm (boolean).');
144
+ }
145
+ return mcpError(error instanceof Error ? error.message : 'Unknown error', 'Provide task_id as string, array, or "all". Read resource `task:///all` for valid IDs.');
142
146
  }
143
147
  }
144
148
  //# sourceMappingURL=cancel-task.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cancel-task.js","sourceRoot":"","sources":["../../src/tools/cancel-task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cancel-task.js","sourceRoot":"","sources":["../../src/tools/cancel-task.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"send-message.d.ts","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAW/C,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CAsC3B,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,OAAO,EACb,GAAG,CAAC,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CA6F7E"}
1
+ {"version":3,"file":"send-message.d.ts","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAY/C,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CAsC3B,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,OAAO,EACb,GAAG,CAAC,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CAuG7E"}
@@ -4,10 +4,11 @@
4
4
  */
5
5
  import { z } from 'zod';
6
6
  import { taskManager } from '../services/task-manager.js';
7
- import { spawnOpenCodeTask } from '../services/opencode-spawner.js';
7
+ import { spawnOpenCodeTask, diagnoseConnection } from '../services/opencode-spawner.js';
8
8
  import { progressRegistry } from '../services/progress-registry.js';
9
9
  import { TaskStatus } from '../types.js';
10
10
  import { mcpText, mcpError } from '../utils/format.js';
11
+ import { OpenCodeError } from '../services/opencode-client.js';
11
12
  import { TASK_TIMEOUT_MAX_MS, TASK_TIMEOUT_MIN_MS } from '../config/timeouts.js';
12
13
  const SendMessageSchema = z.object({
13
14
  task_id: z.string().min(1),
@@ -118,7 +119,17 @@ export async function handleSendMessage(args, ctx) {
118
119
  return mcpText(parts.filter(Boolean).join('\n'));
119
120
  }
120
121
  catch (error) {
121
- return mcpError(error instanceof Error ? error.message : 'Failed to send message', 'Check that the task session is still valid. Try creating a new task with `spawn_agent` instead.');
122
+ if (error instanceof OpenCodeError) {
123
+ const parts = [error.message, '', `**Diagnosis:** ${error.guidance}`];
124
+ if (error.category === 'connection_refused') {
125
+ const diagnosis = await diagnoseConnection().catch(() => '');
126
+ if (diagnosis)
127
+ parts.push(`**Server status:** ${diagnosis}`);
128
+ }
129
+ return mcpError(parts.join('\n'));
130
+ }
131
+ const msg = error instanceof Error ? error.message : 'Failed to send message';
132
+ return mcpError(msg, 'Check that the OpenCode server is running (`opencode serve`) and the task session is still valid. Try creating a new task with `spawn_agent` instead.');
122
133
  }
123
134
  }
124
135
  //# sourceMappingURL=send-message.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"send-message.js","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"send-message.js","sourceRoot":"","sources":["../../src/tools/send-message.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"shared-spawn.d.ts","sourceRoot":"","sources":["../../src/tools/shared-spawn.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkC,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtF,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE3D,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,6BAA6B,CAAC;AAErC,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CAAC;AAE7G,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,MAAM,EAAE;QAAE,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,CAAA;KAAE,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IAC7C,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,QAAQ,GAAG,SAAS,CAAC;CACnD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAC5D,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC5B,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,WAAW,KAAK,kBAAkB,CA8B1D;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,eAAe,EACvB,GAAG,CAAC,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CAiF7E"}
1
+ {"version":3,"file":"shared-spawn.d.ts","sourceRoot":"","sources":["../../src/tools/shared-spawn.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkC,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtF,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAG3D,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,6BAA6B,CAAC;AAErC,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CAAC;AAE7G,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,MAAM,EAAE;QAAE,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,CAAA;KAAE,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC;IAC7C,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,QAAQ,GAAG,SAAS,CAAC;CACnD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAC5D,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC5B,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,WAAW,KAAK,kBAAkB,CA8B1D;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,eAAe,EACvB,GAAG,CAAC,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC,CAoG7E"}
@@ -2,12 +2,13 @@
2
2
  * Shared spawn logic used by all spawn tool handlers.
3
3
  * Ported from mcp-supersubagents, adapted for OpenCode.
4
4
  */
5
- import { spawnOpenCodeTask } from '../services/opencode-spawner.js';
5
+ import { spawnOpenCodeTask, diagnoseConnection } from '../services/opencode-spawner.js';
6
6
  import { taskManager } from '../services/task-manager.js';
7
7
  import { applyTemplate, isValidTaskType } from '../templates/index.js';
8
8
  import { progressRegistry } from '../services/progress-registry.js';
9
9
  import { TaskStatus } from '../types.js';
10
10
  import { mcpText, mcpValidationError } from '../utils/format.js';
11
+ import { OpenCodeError } from '../services/opencode-client.js';
11
12
  import { validateBrief, formatValidationError, assemblePromptWithContext, } from '../utils/brief-validator.js';
12
13
  /**
13
14
  * Generic factory that creates a spawn tool handler.
@@ -108,7 +109,23 @@ export async function handleSharedSpawn(params, config, ctx) {
108
109
  return mcpText(parts.join('\n'));
109
110
  }
110
111
  catch (error) {
111
- return mcpValidationError(`**SPAWN ERROR:** ${error instanceof Error ? error.message : 'Unknown error'}\n\nCheck that all parameters are valid and try again.`);
112
+ // Provide specific, actionable guidance based on error type
113
+ if (error instanceof OpenCodeError) {
114
+ const parts = [`**SPAWN ERROR:** ${error.message}`, '', `**Diagnosis:** ${error.guidance}`];
115
+ if (error.category === 'connection_refused' || error.category === 'dns_resolution') {
116
+ const diagnosis = await diagnoseConnection().catch(() => '');
117
+ if (diagnosis)
118
+ parts.push('', `**Server status:** ${diagnosis}`);
119
+ }
120
+ return mcpValidationError(parts.join('\n'));
121
+ }
122
+ const msg = error instanceof Error ? error.message : 'Unknown error';
123
+ // Check if it looks like a connection error even without OpenCodeError type
124
+ if (msg.includes('ECONNREFUSED') || msg.includes('fetch failed')) {
125
+ const diagnosis = await diagnoseConnection().catch(() => 'Unable to diagnose');
126
+ return mcpValidationError(`**SPAWN ERROR:** Cannot connect to OpenCode server.\n\n**Diagnosis:** ${diagnosis}\n\nEnsure \`opencode serve\` is running and OPENCODE_BASE_URL is correct.`);
127
+ }
128
+ return mcpValidationError(`**SPAWN ERROR:** ${msg}\n\nCheck that all parameters are valid and try again. Read resource \`system:///status\` for server connectivity info.`);
112
129
  }
113
130
  }
114
131
  //# sourceMappingURL=shared-spawn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared-spawn.js","sourceRoot":"","sources":["../../src/tools/shared-spawn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared-spawn.js","sourceRoot":"","sources":["../../src/tools/shared-spawn.ts"],"names":[],"mappings":"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"}
@@ -42,7 +42,7 @@ export declare const spawnAgentTool: {
42
42
  };
43
43
  model: {
44
44
  type: string;
45
- enum: ("claude-sonnet-4.5" | "claude-opus-4.6" | "claude-haiku-4.5")[];
45
+ enum: string[];
46
46
  description: string;
47
47
  };
48
48
  cwd: {
@@ -3,7 +3,7 @@
3
3
  * Ported from mcp-supersubagents, adapted for OpenCode.
4
4
  */
5
5
  import { z } from 'zod';
6
- import { ALL_ACCEPTED_MODELS, MODEL_IDS, DEFAULT_MODEL, OPUS_MODEL } from '../models.js';
6
+ import { ALL_ACCEPTED_MODELS, MODEL_IDS, getPlannerModel } from '../models.js';
7
7
  import { handleSharedSpawn } from './shared-spawn.js';
8
8
  import { mcpValidationError } from '../utils/format.js';
9
9
  import { TASK_TIMEOUT_DEFAULT_MS, TASK_TIMEOUT_MAX_MS, TASK_TIMEOUT_MIN_MS, } from '../config/timeouts.js';
@@ -39,7 +39,7 @@ export const spawnAgentTool = {
39
39
 
40
40
  **Roles:**
41
41
  - coder: Implementation. Min 1000-char prompt + min 1 .md context file. Include: OBJECTIVE, FILES, CRITERIA, CONSTRAINTS, PATTERNS.
42
- - planner: Architecture/planning. Min 300-char prompt. Always uses opus. Include: PROBLEM, CONSTRAINTS, SCOPE, OUTPUT.
42
+ - planner: Architecture/planning. Min 300-char prompt. Always uses best available model. Include: PROBLEM, CONSTRAINTS, SCOPE, OUTPUT.
43
43
  - tester: QA/testing. Min 300-char prompt + min 1 context file. Include: WHAT BUILT, FILES, CRITERIA, TESTS, EDGE CASES.
44
44
  - researcher: Investigation. Min 200-char prompt. Include: TOPIC, QUESTIONS, HANDOFF TARGET.
45
45
 
@@ -76,7 +76,7 @@ export const spawnAgentTool = {
76
76
  model: {
77
77
  type: 'string',
78
78
  enum: MODEL_IDS,
79
- description: `Model. Default: ${DEFAULT_MODEL}. Planner always uses ${OPUS_MODEL} regardless.`,
79
+ description: `Model. Default: github-copilot/claude-opus-4.6. Additional models discovered from \`opencode models\` at startup.`,
80
80
  },
81
81
  cwd: { type: 'string', description: 'Working directory (absolute path).' },
82
82
  timeout: { type: 'number', description: `Max duration in ms. Default: ${TASK_TIMEOUT_DEFAULT_MS}. Max: ${TASK_TIMEOUT_MAX_MS}.` },
@@ -106,8 +106,8 @@ export async function handleSpawnAgent(args, ctx) {
106
106
  }
107
107
  const role = parsed.role;
108
108
  const taskType = ROLE_TO_TASK_TYPE[role];
109
- // Planner always uses opus regardless of user input
110
- const model = role === 'planner' ? OPUS_MODEL : parsed.model;
109
+ // Planner always uses the best available model regardless of user input
110
+ const model = role === 'planner' ? getPlannerModel() : parsed.model;
111
111
  const params = {
112
112
  prompt: parsed.prompt,
113
113
  context_files: parsed.context_files,
@@ -1 +1 @@
1
- {"version":3,"file":"spawn-agent.js","sourceRoot":"","sources":["../../src/tools/spawn-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spawn-agent.js","sourceRoot":"","sources":["../../src/tools/spawn-agent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-subagents-opencode",
3
- "version": "1.0.0",
3
+ "version": "1.2.0",
4
4
  "description": "MCP server for spawning and managing OpenCode AI sub-agents — parallel task execution with planner, coder, researcher & tester specialists",
5
5
  "type": "module",
6
6
  "main": "build/index.js",
@@ -1,88 +0,0 @@
1
- /**
2
- * Multi-Account Manager - In-memory round-robin rotation for GitHub PAT tokens.
3
- *
4
- * Supports up to 100 GitHub PAT tokens for failover on rate limits and errors.
5
- * Key features:
6
- * - Round-robin rotation through configured tokens
7
- * - Automatic failover on rate limit (429) or server errors (5xx)
8
- * - Reset to first token on MCP reconnect
9
- * - Track failed tokens to skip them temporarily
10
- */
11
- interface AccountRotationResult {
12
- success: boolean;
13
- token?: string;
14
- tokenIndex?: number;
15
- allExhausted?: boolean;
16
- error?: string;
17
- }
18
- declare class AccountManager {
19
- private tokens;
20
- private currentIndex;
21
- private rotationCount;
22
- private lastRotationTime?;
23
- private initialized;
24
- /**
25
- * Initialize the account manager with GitHub PAT tokens.
26
- * Tokens can be provided via:
27
- * - GITHUB_PAT_TOKENS env var (comma-separated)
28
- * - GITHUB_PAT_TOKEN_1, GITHUB_PAT_TOKEN_2, ... env vars
29
- * - Direct configuration via setTokens()
30
- */
31
- initialize(): void;
32
- /**
33
- * Set tokens directly (useful for testing or programmatic configuration).
34
- */
35
- setTokens(tokens: string[]): void;
36
- /**
37
- * Get the current active token.
38
- * Returns undefined if no tokens configured.
39
- */
40
- getCurrentToken(): string | undefined;
41
- /**
42
- * Get the current token index.
43
- */
44
- getCurrentIndex(): number;
45
- /**
46
- * Get total number of configured tokens.
47
- */
48
- getTokenCount(): number;
49
- /**
50
- * Check if multi-account mode is enabled (more than 1 token).
51
- */
52
- isMultiAccountEnabled(): boolean;
53
- /**
54
- * Reset to the first token (called on MCP reconnect).
55
- */
56
- reset(): void;
57
- /**
58
- * Rotate to the next available token.
59
- * Called when current token encounters rate limit or error.
60
- *
61
- * @param reason - Reason for rotation (e.g., 'rate_limit', 'server_error')
62
- * @returns Result with new token or exhausted status
63
- */
64
- rotateToNext(reason?: string): AccountRotationResult;
65
- /**
66
- * Check if rotation should happen based on error type.
67
- * Returns true for rate limits (429) and server errors (5xx).
68
- */
69
- shouldRotate(statusCode?: number, errorMessage?: string): boolean;
70
- /**
71
- * Get statistics about token usage.
72
- */
73
- getStats(): {
74
- totalTokens: number;
75
- currentIndex: number;
76
- rotationCount: number;
77
- lastRotation?: string;
78
- failedTokens: number;
79
- availableTokens: number;
80
- };
81
- /**
82
- * Get a masked version of the current token for logging.
83
- */
84
- getMaskedCurrentToken(): string;
85
- }
86
- export declare const accountManager: AccountManager;
87
- export {};
88
- //# sourceMappingURL=account-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"account-manager.d.ts","sourceRoot":"","sources":["../../src/services/account-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAaH,UAAU,qBAAqB;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,cAAM,cAAc;IAClB,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,gBAAgB,CAAC,CAAO;IAChC,OAAO,CAAC,WAAW,CAAS;IAE5B;;;;;;OAMG;IACH,UAAU,IAAI,IAAI;IA2ClB;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI;IAejC;;;OAGG;IACH,eAAe,IAAI,MAAM,GAAG,SAAS;IAOrC;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,aAAa,IAAI,MAAM;IAIvB;;OAEG;IACH,qBAAqB,IAAI,OAAO;IAIhC;;OAEG;IACH,KAAK,IAAI,IAAI;IAeb;;;;;;OAMG;IACH,YAAY,CAAC,MAAM,GAAE,MAAkB,GAAG,qBAAqB;IAqE/D;;;OAGG;IACH,YAAY,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO;IA6BjE;;OAEG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;KACzB;IAgBD;;OAEG;IACH,qBAAqB,IAAI,MAAM;CAMhC;AAED,eAAO,MAAM,cAAc,gBAAuB,CAAC"}