@te-river/opencode-team-mode 1.4.6 → 1.4.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 +101 -86
- package/README.zh-CN.md +84 -71
- package/dist/agents.d.ts +15 -9
- package/dist/agents.d.ts.map +1 -1
- package/dist/agents.js +467 -478
- package/dist/agents.js.map +1 -1
- package/dist/commands.d.ts +3 -0
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +109 -107
- package/dist/commands.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -7
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/agents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
|
package/dist/commands.d.ts
CHANGED
|
@@ -4,6 +4,9 @@
|
|
|
4
4
|
* Each command is injected into the OpenCode config via the plugin's
|
|
5
5
|
* `config` hook. Users invoke them with `/team-plan`, `/team-review`, etc.
|
|
6
6
|
* in both OpenCode Desktop and the TUI.
|
|
7
|
+
*
|
|
8
|
+
* v1.4.7: /team-run mirrors the deterministic routing + approval gate +
|
|
9
|
+
* reply-skeleton workflow; /team-review notes the lead's adaptive depth.
|
|
7
10
|
*/
|
|
8
11
|
import type { CommandConfig } from "./types.js";
|
|
9
12
|
export declare const commands: Record<string, CommandConfig>;
|
package/dist/commands.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AA8J/C,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAOlD,CAAA"}
|
package/dist/commands.js
CHANGED
|
@@ -4,147 +4,149 @@
|
|
|
4
4
|
* Each command is injected into the OpenCode config via the plugin's
|
|
5
5
|
* `config` hook. Users invoke them with `/team-plan`, `/team-review`, etc.
|
|
6
6
|
* in both OpenCode Desktop and the TUI.
|
|
7
|
+
*
|
|
8
|
+
* v1.4.7: /team-run mirrors the deterministic routing + approval gate +
|
|
9
|
+
* reply-skeleton workflow; /team-review notes the lead's adaptive depth.
|
|
7
10
|
*/
|
|
8
11
|
/* ------------------------------------------------------------------ */
|
|
9
12
|
const teamPlan = {
|
|
10
13
|
description: "Create a comprehensive implementation plan — architecture, task breakdown, and risk analysis.",
|
|
11
14
|
agent: "architect",
|
|
12
|
-
template: `Analyze the following task and produce a detailed implementation plan.
|
|
13
|
-
|
|
14
|
-
## Task
|
|
15
|
-
$ARGUMENTS
|
|
16
|
-
|
|
17
|
-
## Required output
|
|
18
|
-
1. **Overview** — What we are building and why.
|
|
19
|
-
2. **Architecture** — Module structure, key interfaces, data flow.
|
|
20
|
-
3. **File manifest** — Every file to create or modify, with a one-line summary.
|
|
21
|
-
4. **Task breakdown** — Ordered steps the implementer can execute, noting dependencies.
|
|
22
|
-
5. **Risks & open questions** — Anything uncertain.
|
|
23
|
-
|
|
24
|
-
Read existing project files as needed to ground your plan in reality.
|
|
15
|
+
template: `Analyze the following task and produce a detailed implementation plan.
|
|
16
|
+
|
|
17
|
+
## Task
|
|
18
|
+
$ARGUMENTS
|
|
19
|
+
|
|
20
|
+
## Required output
|
|
21
|
+
1. **Overview** — What we are building and why.
|
|
22
|
+
2. **Architecture** — Module structure, key interfaces, data flow.
|
|
23
|
+
3. **File manifest** — Every file to create or modify, with a one-line summary.
|
|
24
|
+
4. **Task breakdown** — Ordered steps the implementer can execute, noting dependencies.
|
|
25
|
+
5. **Risks & open questions** — Anything uncertain.
|
|
26
|
+
|
|
27
|
+
Read existing project files as needed to ground your plan in reality.
|
|
25
28
|
Do not write implementation code — only the plan.`,
|
|
26
29
|
};
|
|
27
30
|
/* ------------------------------------------------------------------ */
|
|
28
31
|
const teamImplement = {
|
|
29
32
|
description: "Implement a feature or task — write production code following the project's conventions.",
|
|
30
33
|
agent: "implementer",
|
|
31
|
-
template: `Implement the following task. Follow the project's existing code style and conventions.
|
|
32
|
-
|
|
33
|
-
## Task
|
|
34
|
-
$ARGUMENTS
|
|
35
|
-
|
|
36
|
-
## Rules
|
|
37
|
-
- Read relevant existing files before writing code.
|
|
38
|
-
- Handle errors properly.
|
|
34
|
+
template: `Implement the following task. Follow the project's existing code style and conventions.
|
|
35
|
+
|
|
36
|
+
## Task
|
|
37
|
+
$ARGUMENTS
|
|
38
|
+
|
|
39
|
+
## Rules
|
|
40
|
+
- Read relevant existing files before writing code.
|
|
41
|
+
- Handle errors properly.
|
|
39
42
|
- After finishing, list every file you created or modified.`,
|
|
40
43
|
};
|
|
41
44
|
/* ------------------------------------------------------------------ */
|
|
42
45
|
const teamReview = {
|
|
43
46
|
description: "Review code with a single focused dimension — completeness, correctness, or impact (default: correctness).",
|
|
44
47
|
agent: "reviewer",
|
|
45
|
-
template: `Perform a single-dimension code review on the following scope.
|
|
46
|
-
|
|
47
|
-
## Scope
|
|
48
|
-
$ARGUMENTS
|
|
49
|
-
|
|
50
|
-
## Dimension
|
|
51
|
-
$ARGUMENTS may name one dimension: completeness (requirements coverage),
|
|
52
|
-
correctness (logic & security), or impact (regressions & blast radius).
|
|
53
|
-
If no dimension is named, review correctness. Ignore the other dimensions
|
|
54
|
-
— parallel reviewers own them.
|
|
55
|
-
|
|
56
|
-
If no specific scope is given, review all recently modified files in the project.
|
|
57
|
-
|
|
58
|
-
Use the standard severity scale:
|
|
59
|
-
- 🔴 Critical (must fix)
|
|
60
|
-
- 🟡 Warning (should fix)
|
|
61
|
-
- 🔵 Suggestion (nice to have)
|
|
62
|
-
- ✅ Praise (good patterns)
|
|
63
|
-
|
|
48
|
+
template: `Perform a single-dimension code review on the following scope.
|
|
49
|
+
|
|
50
|
+
## Scope
|
|
51
|
+
$ARGUMENTS
|
|
52
|
+
|
|
53
|
+
## Dimension
|
|
54
|
+
$ARGUMENTS may name one dimension: completeness (requirements coverage),
|
|
55
|
+
correctness (logic & security), or impact (regressions & blast radius).
|
|
56
|
+
If no dimension is named, review correctness. Ignore the other dimensions
|
|
57
|
+
— parallel reviewers own them.
|
|
58
|
+
|
|
59
|
+
If no specific scope is given, review all recently modified files in the project.
|
|
60
|
+
|
|
61
|
+
Use the standard severity scale:
|
|
62
|
+
- 🔴 Critical (must fix)
|
|
63
|
+
- 🟡 Warning (should fix)
|
|
64
|
+
- 🔵 Suggestion (nice to have)
|
|
65
|
+
- ✅ Praise (good patterns)
|
|
66
|
+
|
|
64
67
|
Include file paths, line numbers, and concrete fix suggestions.`,
|
|
65
68
|
};
|
|
66
69
|
/* ------------------------------------------------------------------ */
|
|
67
70
|
const teamTest = {
|
|
68
71
|
description: "Generate comprehensive tests — unit, integration, and edge-case coverage.",
|
|
69
72
|
agent: "tester",
|
|
70
|
-
template: `Write comprehensive tests for the following scope.
|
|
71
|
-
|
|
72
|
-
## Scope
|
|
73
|
-
$ARGUMENTS
|
|
74
|
-
|
|
75
|
-
If no specific scope is given, identify the most recently modified source files and write tests for them.
|
|
76
|
-
|
|
77
|
-
## Requirements
|
|
78
|
-
- Use the project's existing test framework and conventions.
|
|
79
|
-
- Cover happy path, edge cases, and error paths.
|
|
80
|
-
- Each test must be deterministic and test exactly one behavior.
|
|
73
|
+
template: `Write comprehensive tests for the following scope.
|
|
74
|
+
|
|
75
|
+
## Scope
|
|
76
|
+
$ARGUMENTS
|
|
77
|
+
|
|
78
|
+
If no specific scope is given, identify the most recently modified source files and write tests for them.
|
|
79
|
+
|
|
80
|
+
## Requirements
|
|
81
|
+
- Use the project's existing test framework and conventions.
|
|
82
|
+
- Cover happy path, edge cases, and error paths.
|
|
83
|
+
- Each test must be deterministic and test exactly one behavior.
|
|
81
84
|
- Use descriptive test names.`,
|
|
82
85
|
};
|
|
83
86
|
/* ------------------------------------------------------------------ */
|
|
84
87
|
const teamResearch = {
|
|
85
88
|
description: "Research a topic — libraries, APIs, best practices, or documentation.",
|
|
86
89
|
agent: "researcher",
|
|
87
|
-
template: `Research the following topic and provide actionable findings.
|
|
88
|
-
|
|
89
|
-
## Topic
|
|
90
|
-
$ARGUMENTS
|
|
91
|
-
|
|
92
|
-
## Required output
|
|
93
|
-
1. **Summary** — Key findings in 2-3 sentences.
|
|
94
|
-
2. **Details** — Structured findings with sources.
|
|
95
|
-
3. **Recommendation** — What the team should do, with trade-offs.
|
|
96
|
-
4. **Sources** — Links or file paths consulted.
|
|
97
|
-
|
|
90
|
+
template: `Research the following topic and provide actionable findings.
|
|
91
|
+
|
|
92
|
+
## Topic
|
|
93
|
+
$ARGUMENTS
|
|
94
|
+
|
|
95
|
+
## Required output
|
|
96
|
+
1. **Summary** — Key findings in 2-3 sentences.
|
|
97
|
+
2. **Details** — Structured findings with sources.
|
|
98
|
+
3. **Recommendation** — What the team should do, with trade-offs.
|
|
99
|
+
4. **Sources** — Links or file paths consulted.
|
|
100
|
+
|
|
98
101
|
Cite your sources. Do not fabricate URLs or API details.`,
|
|
99
102
|
};
|
|
100
103
|
/* ------------------------------------------------------------------ */
|
|
101
104
|
const teamRun = {
|
|
102
|
-
description: "Full team workflow —
|
|
105
|
+
description: "Full team workflow — deterministic routing, approval gate on >=3 dispatches, structured handoffs.",
|
|
103
106
|
agent: "team",
|
|
104
|
-
template: `Execute the full team workflow for the following task.
|
|
105
|
-
|
|
106
|
-
## Task
|
|
107
|
-
$ARGUMENTS
|
|
108
|
-
|
|
109
|
-
## Workflow
|
|
110
|
-
1. Triage
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
2.
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
3.
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
5.
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
reclaims idle boards; never delete it yourself.`,
|
|
107
|
+
template: `Execute the full team workflow for the following task.
|
|
108
|
+
|
|
109
|
+
## Task
|
|
110
|
+
$ARGUMENTS
|
|
111
|
+
|
|
112
|
+
## Workflow
|
|
113
|
+
1. Triage: a question/consult gets an answer with zero file changes (fixes
|
|
114
|
+
merely proposed, awaiting go-ahead). Explicit action requests continue
|
|
115
|
+
below. Honor and restate user-stated boundaries in every dispatch.
|
|
116
|
+
2. Route via the routing table and COUNT the dispatches. Never shorten a
|
|
117
|
+
product-change pipeline below 3 dispatches; never split one request
|
|
118
|
+
into sub-3-dispatch pieces to dodge the gate.
|
|
119
|
+
3. Research phase: read the project's README yourself (the host does not
|
|
120
|
+
inject it); for AGENTS.md/CLAUDE.md use the copy already in context and
|
|
121
|
+
open the file only when genuinely absent. Then read the relevant
|
|
122
|
+
source; dispatch researcher ONLY for genuinely unknown external tech.
|
|
123
|
+
Blocking uncertainties go to the user IMMEDIATELY, batched into ONE message
|
|
124
|
+
— never drip-feed, never guess.
|
|
125
|
+
4. Approval gate: if the pipeline involves >=2 sub-agent dispatches,
|
|
126
|
+
present the plan (Goal / Root cause or scope with file:line / Change
|
|
127
|
+
list / Pipeline / Assumptions & risks / Open questions — <=30 lines)
|
|
128
|
+
and END TURN. Execute only after approval. 0-1 dispatches: open with
|
|
129
|
+
a 1-2 line notice and proceed. Root cause already verified? Skip
|
|
130
|
+
ceremonial research — the fix spec goes straight to implementer.
|
|
131
|
+
5. Execute the pipeline in routing-table order; batch independent
|
|
132
|
+
dispatches. Relay each specialist's HANDOFF verbatim into the next
|
|
133
|
+
dispatch; enforce the STATUS-skeleton reply contract (missing skeleton
|
|
134
|
+
-> PROTOCOL_VIOLATION: one retry with it inline, then downgrade and
|
|
135
|
+
note it).
|
|
136
|
+
6. Adaptive review: default single reviewer (correctness); escalate to 3
|
|
137
|
+
parallel dimensions only for high-risk profiles (auth/security surface,
|
|
138
|
+
cross-module data contracts, public APIs across >=3 files).
|
|
139
|
+
7. Feedback loop: Critical/Major findings and tester product-bugs become
|
|
140
|
+
fix tasks -> implementer fixes -> re-review affected scope -> re-run
|
|
141
|
+
tests. Max 2 loops, then escalate. A "UI NOT VERIFIED:" line is
|
|
142
|
+
relayed honestly, not hidden.
|
|
143
|
+
8. Present a structured summary: changes, review/test verdict, remaining
|
|
144
|
+
assumptions and risks. Docs sync: append a CHANGELOG.md entry when the
|
|
145
|
+
file exists, and update AGENTS.md when the change alters what it
|
|
146
|
+
records (build/test commands, conventions, structure, agent
|
|
147
|
+
instructions); offer to create either file if missing. Leave any board
|
|
148
|
+
directories in place — the plugin's TTL sweeper reclaims idle boards;
|
|
149
|
+
never delete them yourself.`,
|
|
148
150
|
};
|
|
149
151
|
/* ------------------------------------------------------------------ */
|
|
150
152
|
/* Export all commands keyed by name */
|
package/dist/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,wEAAwE;AACxE,MAAM,QAAQ,GAAkB;IAC9B,WAAW,EACT,+FAA+F;IACjG,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE;;;;;;;;;;;;;kDAasC;CACjD,CAAA;AAED,wEAAwE;AACxE,MAAM,aAAa,GAAkB;IACnC,WAAW,EACT,0FAA0F;IAC5F,KAAK,EAAE,aAAa;IACpB,QAAQ,EAAE;;;;;;;;4DAQgD;CAC3D,CAAA;AAED,wEAAwE;AACxE,MAAM,UAAU,GAAkB;IAChC,WAAW,EACT,4GAA4G;IAC9G,KAAK,EAAE,UAAU;IACjB,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;gEAmBoD;CAC/D,CAAA;AAED,wEAAwE;AACxE,MAAM,QAAQ,GAAkB;IAC9B,WAAW,EACT,2EAA2E;IAC7E,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE;;;;;;;;;;;8BAWkB;CAC7B,CAAA;AAED,wEAAwE;AACxE,MAAM,YAAY,GAAkB;IAClC,WAAW,EACT,uEAAuE;IACzE,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE;;;;;;;;;;;0DAW8C;CACzD,CAAA;AAED,wEAAwE;AACxE,MAAM,OAAO,GAAkB;IAC7B,WAAW,EACT,mGAAmG;IACrG,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA0CmB;CAC9B,CAAA;AAED,wEAAwE;AACxE,wEAAwE;AACxE,wEAAwE;AAExE,MAAM,CAAC,MAAM,QAAQ,GAAkC;IACrD,WAAW,EAAE,QAAQ;IACrB,gBAAgB,EAAE,aAAa;IAC/B,aAAa,EAAE,UAAU;IACzB,WAAW,EAAE,QAAQ;IACrB,eAAe,EAAE,YAAY;IAC7B,UAAU,EAAE,OAAO;CACpB,CAAA"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,YAAY,CAAA;AA6BhE,QAAA,MAAM,MAAM,EAAE,cAyCb,CAAA;AAED,eAAe,MAAM,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -27,19 +27,21 @@
|
|
|
27
27
|
import { agents } from "./agents.js";
|
|
28
28
|
import { commands } from "./commands.js";
|
|
29
29
|
import { startBlackboardMaintenance, resolveTtlMs, DEFAULT_TTL_DAYS, } from "./blackboard.js";
|
|
30
|
-
/** Runtime addendum to the team prompt: concrete board + TTL. */
|
|
30
|
+
/** Runtime addendum to the team prompt: concrete board + TTL (hybrid mode). */
|
|
31
31
|
function blackboardNote(root, ttlDays) {
|
|
32
32
|
return [
|
|
33
33
|
"",
|
|
34
34
|
"",
|
|
35
35
|
"## Team Blackboard — resolved for this workspace",
|
|
36
36
|
`Root directory: \`${root}\``,
|
|
37
|
-
`-
|
|
38
|
-
`
|
|
39
|
-
|
|
40
|
-
`
|
|
41
|
-
`
|
|
42
|
-
|
|
37
|
+
`- Hybrid channel: specialist replies (the STATUS/CHANGES/FINDINGS/EVIDENCE/HANDOFF`,
|
|
38
|
+
` skeleton) are the PRIMARY transport — normal work needs no files at all.`,
|
|
39
|
+
`- Board files exist ONLY for oversized deliverables (>~50 lines):`,
|
|
40
|
+
` \`<root>/<session-key>/<task-slug>/NN-<role>-<topic>[-rN].md\`. On the FIRST`,
|
|
41
|
+
` board write of this conversation create the session folder with a compact clock`,
|
|
42
|
+
` timestamp (PowerShell: \`Get-Date -Format yyyyMMdd-HHmmss\`; POSIX:`,
|
|
43
|
+
` \`date +%Y%m%d-%H%M%S\`) and reuse it; never write into another conversation's`,
|
|
44
|
+
` session folder.`,
|
|
43
45
|
`- Auto-cleanup: the plugin sweeps task directories idle for more than ${ttlDays} days (at startup and hourly).`,
|
|
44
46
|
` This is the ONLY cleanup path — never delete task or session directories yourself.`,
|
|
45
47
|
].join("\n");
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EACL,0BAA0B,EAC1B,YAAY,EACZ,gBAAgB,GACjB,MAAM,iBAAiB,CAAA;AAExB
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@te-river/opencode-team-mode",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.8",
|
|
4
4
|
"description": "Team collaboration mode plugin for OpenCode Desktop — injects specialized agents (architect, reviewer, implementer, tester, researcher) and team workflow commands into your OpenCode workspace.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|