@openspoon/subtask2 0.1.7 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,108 +1,166 @@
1
- # @openspoon/subtask2
2
-
3
- OpenCode plugin that controls what happens **after** a subtask completes.
1
+ # @openspoon/subtask2 - an opencode plugin
4
2
 
5
3
  ## The Problem
6
4
 
7
- When a subtask (subagent) finishes, OpenCode injects a generic prompt: `"Summarize the task tool output above and continue with your task."`
5
+ When a subtask command completes, OpenCode tells the main agent to "summarize the findings." The main agent reports back to you and no further action is taken on the subtask results. The agentic loop dies.
8
6
 
9
- This often leads to the main agent just relaying the response:
7
+ This plugin replaces that "summarize" message with the instructions you want to give it, sending the main agent off on a mission given the subtask results.
10
8
 
11
- > "Here's what the subagent found: [result]" — *end of turn*
9
+ ## Prerequisites
12
10
 
13
- The main agent becomes a passive messenger rather than an active participant.
11
+ **This plugin ONLY works with commands that have `subtask: true` in their frontmatter.**
14
12
 
15
- ## The Solution
13
+ ```markdown
14
+ ---
15
+ subtask: true ← REQUIRED for this plugin to do anything
16
+ ---
17
+ ```
16
18
 
17
- This plugin intercepts OpenCode's synthetic message and replaces it with something better:
19
+ ## Features
18
20
 
19
- 1. **Per-command `return` prompt** Give specific instructions for what the main agent should do with the subtask result
20
- 2. **Global fallback** — Even without `return`, replace the generic prompt with one that encourages critical thinking
21
- 3. **`chain`** — Queue follow-up prompts that execute sequentially after the subtask completes
21
+ ### 1. `return` — Per-command instructions
22
22
 
23
- ## Installation
23
+ Tell the main agent exactly what to do after THIS specific subtask:
24
24
 
25
- Add to your `opencode.json`:
25
+ ```markdown
26
+ ---
27
+ subtask: true
28
+ return: Assess the code review. Challenge the findings, then implement the valid fixes.
29
+ ---
26
30
 
27
- ```json
28
- {
29
- "plugins": ["@openspoon/subtask2"]
30
- }
31
+ Review this PR for bugs.
31
32
  ```
32
33
 
33
- ## Configuration
34
+ ### 2. `parallel` — Run multiple subtasks concurrently ⚠️ **PENDING PR** (ignored for now)
34
35
 
35
- On first run, the plugin creates `~/.config/opencode/subtask2.jsonc`:
36
+ Spawn additional command subtasks alongside the main one:
36
37
 
37
- ```jsonc
38
- {
39
- // Replace OpenCode's generic "Summarize..." prompt when no return is specified
40
- "replace_generic": true
38
+ ```markdown
39
+ ---
40
+ subtask: true
41
+ parallel: security-review, perf-review
42
+ return: Synthesize all review results and create a unified action plan.
43
+ ---
41
44
 
42
- // Custom prompt to use (uses built-in default if not set)
43
- // "prompt": "Your custom prompt here"
44
- }
45
+ Review this code for correctness.
45
46
  ```
46
47
 
47
- **Options:**
48
-
49
- | Option | Type | Default | Description |
50
- |--------|------|---------|-------------|
51
- | `replace_generic` | boolean | `true` | Replace the generic prompt for subtasks without a `return` param |
52
- | `prompt` | string | (built-in) | Custom replacement prompt. Default: "Challenge and validate the task output above. Verify assumptions, identify gaps or errors, then continue with the next logical step." |
48
+ This runs 3 subtasks in parallel:
53
49
 
54
- **Priority:**
50
+ 1. The main command (correctness review)
51
+ 2. `security-review` command
52
+ 3. `perf-review` command
55
53
 
56
- 1. Command `return` param → always wins
57
- 2. Config `prompt` → used when no `return` and `replace_generic: true`
58
- 3. Built-in default → used when no `return`, `replace_generic: true`, and no custom `prompt`
59
- 4. OpenCode's original → only if `replace_generic: false`
54
+ When ALL complete, the main agent gets the `return` prompt.
60
55
 
61
- ## Usage
56
+ **Note:** Parallel commands must be other command files. Their own `return`/`chain` are ignored — only the parent's `return` applies.
62
57
 
63
- Add `return` and/or `chain` to your command frontmatter:
58
+ **Requires:** OpenCode with `command.execute.before` hook (pending PR).
64
59
 
65
- ### Example: Code Review Command
60
+ ### 3. `chain` Sequential follow-up prompts
66
61
 
67
- `.opencode/command/review.md`
62
+ Queue user messages that fire after the subtask completes:
68
63
 
69
64
  ```markdown
70
65
  ---
71
- description: subtask2 return and chain prompt example
72
- agent: general
73
66
  subtask: true
74
- return: You are the agent in charge of assessing the bug review, challenge, verify and validate it, then discard it or implement it.
67
+ return: Implement the fix.
75
68
  chain:
76
- - Let's now rinse and repeat with PR#356, use the task tool to review it for bugs etc... then assess, challenge, validate -> discard or implement.
77
- - Rinse and repeat, with next PR.
69
+ - Now write tests for the fix.
70
+ - Run the tests and fix any failures.
78
71
  ---
79
72
 
80
- Review PR#355 for bugs, security issues, and code style problems.
73
+ Find the bug in auth.ts
81
74
  ```
82
75
 
83
- ## How It Works
76
+ Flow: Subtask return prompt → LLM works → chain[0] fires → LLM works → chain[1] fires → ...
84
77
 
85
- **Without this plugin:**
78
+ ### 4. Global fallback — Better default for all subtasks
86
79
 
80
+ Even without `return`, this plugin will replace OpenCode's generic "summarize" injected message with something "better".
81
+ By default it uses: "Challenge and validate the task tool output above. Verify assumptions, identify gaps or errors, then continue with the next logical step."
82
+
83
+ Configure in `~/.config/opencode/subtask2.jsonc`:
84
+
85
+ ```jsonc
86
+ {
87
+ // Replace generic prompt when no 'return' is specified
88
+ "replace_generic": true,
89
+
90
+ // Custom fallback (optional - has built-in default)
91
+ "generic_return": "your custom return prompt here"
92
+ }
87
93
  ```
88
- Subagent → "Found 3 bugs" → OpenCode adds "Summarize..." → Main agent → "The subagent found 3 bugs" → END
89
- ```
90
94
 
91
- **With `return`:**
95
+ ## Priority Order
96
+
97
+ When a subtask completes, what message does the main agent see?
98
+
99
+ 1. **`return` param** → Your specific instructions (highest priority)
100
+ 2. **Config `generic_return`** → Your custom fallback (if `replace_generic: true`)
101
+ 3. **Built-in default** → "Challenge and validate..." (if `replace_generic: true`)
102
+ 4. **OpenCode original** → "Summarize..." (if `replace_generic: false`)
92
103
 
104
+ ## Installation
105
+
106
+ ```json
107
+ {
108
+ "plugins": ["@openspoon/subtask2"]
109
+ }
93
110
  ```
94
- Subagent → "Found 3 bugs" → Plugin replaces with "Assess and implement fixes" → Main agent → *starts working on fixes*
111
+
112
+ ## Quick Examples
113
+
114
+ **Simple: Make the agent act on results**
115
+
116
+ ```markdown
117
+ ---
118
+ subtask: true
119
+ return: Implement the suggested improvements.
120
+ ---
121
+
122
+ Analyze this function for performance issues.
95
123
  ```
96
124
 
97
- **Without `return` but `replace_generic: true`:**
125
+ **Parallel: Multiple perspectives at once**
126
+
127
+ ```markdown
128
+ ---
129
+ subtask: true
130
+ parallel: brainstorm-solutions, research-prior-art
131
+ return: Evaluate all ideas and create an implementation plan.
132
+ ---
98
133
 
134
+ Identify the core problem in our auth flow.
99
135
  ```
100
- Subagent → "Found 3 bugs" → Plugin replaces with "Challenge and validate..." → Main agent → *critically evaluates and acts*
136
+
137
+ **Chain: Multi-step workflow**
138
+
139
+ ```markdown
140
+ ---
141
+ subtask: true
142
+ return: Create the component.
143
+ chain:
144
+ - Add unit tests.
145
+ - Update the documentation.
146
+ ---
147
+
148
+ Design a React modal component.
101
149
  ```
102
150
 
103
- The plugin intercepts OpenCode's synthetic user message and replaces it, so the main agent receives instructions from the "user" rather than just being told to summarize.
151
+ ## FAQ
152
+
153
+ **Q: Why doesn't this work with my command?**
154
+ A: Check that you have `subtask: true` in the frontmatter.
155
+
156
+ **Q: Why doesn't this affect Task tool calls the LLM makes?**
157
+ A: OpenCode only injects the "summarize" message after `subtask: true` commands, not regular task tool usage. This plugin can only replace what OpenCode injects.
158
+
159
+ **Q: Can I use `return` with regular (non-subtask) commands?**
160
+ A: No. Without `subtask: true`, there's no injected message to replace.
104
161
 
105
- `chain` allows you to queue additional prompts that fire sequentially after each completion, enabling multi-step automated workflows.
162
+ **Q: How do I pass arguments to parallel commands?**
163
+ A: Currently, parallel commands use their own template as-is. Argument passing is planned for a future version.
106
164
 
107
165
  ## License
108
166
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,qBAAqB,CAAC;AA6HhD,QAAA,MAAM,MAAM,EAAE,MA2Db,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,qBAAqB,CAAC;AAkKhD,QAAA,MAAM,MAAM,EAAE,MAiFb,CAAC;AAEF,eAAe,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ function isValidConfig(obj) {
6
6
  const cfg = obj;
7
7
  if (typeof cfg.replace_generic !== "boolean")
8
8
  return false;
9
- if (cfg.prompt !== undefined && typeof cfg.prompt !== "string")
9
+ if (cfg.generic_return !== undefined && typeof cfg.generic_return !== "string")
10
10
  return false;
11
11
  return true;
12
12
  }
@@ -33,7 +33,7 @@ async function loadConfig() {
33
33
  "replace_generic": true
34
34
 
35
35
  // Custom prompt to use (uses subtask2 substitution prompt by default)
36
- // "prompt": "Challenge and validate the task tool output above. Verify assumptions, identify gaps or errors, then continue with the next logical step."
36
+ // "generic_return": "Challenge and validate the task tool output above. Verify assumptions, identify gaps or errors, then continue with the next logical step."
37
37
  }
38
38
  `);
39
39
  return defaultConfig;
@@ -65,6 +65,28 @@ function parseFrontmatter(content) {
65
65
  }
66
66
  return fm;
67
67
  }
68
+ function getTemplateBody(content) {
69
+ const match = content.match(/^---\n[\s\S]*?\n---\n([\s\S]*)$/);
70
+ return match ? match[1].trim() : content.trim();
71
+ }
72
+ async function loadCommandFile(name) {
73
+ const home = Bun.env.HOME ?? "";
74
+ const dirs = [
75
+ `${home}/.config/opencode/command`,
76
+ `${Bun.env.PWD ?? "."}/.opencode/command`,
77
+ ];
78
+ for (const dir of dirs) {
79
+ const path = `${dir}/${name}.md`;
80
+ try {
81
+ const file = Bun.file(path);
82
+ if (await file.exists()) {
83
+ return { content: await file.text(), path };
84
+ }
85
+ }
86
+ catch { }
87
+ }
88
+ return null;
89
+ }
68
90
  async function buildManifest() {
69
91
  const manifest = {};
70
92
  const home = Bun.env.HOME ?? "";
@@ -81,12 +103,20 @@ async function buildManifest() {
81
103
  const fm = parseFrontmatter(content);
82
104
  const chain = fm.chain;
83
105
  const chainArr = chain ? (Array.isArray(chain) ? chain : [chain]) : [];
84
- if (fm.return || chainArr.length) {
85
- manifest[name] = {
86
- return: fm.return,
87
- chain: chainArr,
88
- };
89
- }
106
+ const parallel = fm.parallel;
107
+ const parallelArr = parallel
108
+ ? Array.isArray(parallel)
109
+ ? parallel
110
+ : parallel.split(",").map((s) => s.trim()).filter(Boolean)
111
+ : [];
112
+ manifest[name] = {
113
+ return: fm.return,
114
+ chain: chainArr,
115
+ parallel: parallelArr,
116
+ agent: fm.agent,
117
+ description: fm.description,
118
+ template: getTemplateBody(content),
119
+ };
90
120
  }
91
121
  }
92
122
  catch { }
@@ -106,6 +136,26 @@ const plugin = async (ctx) => {
106
136
  pluginConfig = await loadConfig();
107
137
  client = ctx.client;
108
138
  return {
139
+ "command.execute.before": async (input, output) => {
140
+ const cmd = input.command;
141
+ const config = configs[cmd];
142
+ if (!config?.parallel?.length)
143
+ return;
144
+ for (const parallelCmd of config.parallel) {
145
+ const cmdFile = await loadCommandFile(parallelCmd);
146
+ if (!cmdFile)
147
+ continue;
148
+ const fm = parseFrontmatter(cmdFile.content);
149
+ const template = getTemplateBody(cmdFile.content);
150
+ output.parts.push({
151
+ type: "subtask",
152
+ agent: fm.agent || "general",
153
+ description: fm.description || `Parallel: ${parallelCmd}`,
154
+ command: parallelCmd,
155
+ prompt: template,
156
+ });
157
+ }
158
+ },
109
159
  "tool.execute.before": async (input, output) => {
110
160
  if (input.tool !== "task")
111
161
  return;
@@ -138,7 +188,7 @@ const plugin = async (ctx) => {
138
188
  return;
139
189
  }
140
190
  if (hasActiveSubtask && pluginConfig.replace_generic) {
141
- part.text = pluginConfig.prompt ?? DEFAULT_PROMPT;
191
+ part.text = pluginConfig.generic_return ?? DEFAULT_PROMPT;
142
192
  hasActiveSubtask = false;
143
193
  return;
144
194
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@openspoon/subtask2",
4
- "version": "0.1.7",
4
+ "version": "0.1.8",
5
5
  "type": "module",
6
6
  "description": "Opencode plugin for enhanced subtask control with return context and prompt chaining",
7
7
  "main": "./dist/index.js",