opencode-goal-mode 0.3.2 → 0.3.3
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/CHANGELOG.md +13 -0
- package/README.md +15 -0
- package/docs/sidebar-demo.svg +54 -0
- package/package.json +17 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.3.3
|
|
4
|
+
|
|
5
|
+
- Release notes: the GitHub Release body is now generated from the matching
|
|
6
|
+
`CHANGELOG.md` section (`scripts/release-notes.mjs`), so releases always ship
|
|
7
|
+
real notes instead of an empty auto-summary.
|
|
8
|
+
- Richer repository: README badges (npm version/downloads, CI, release, license,
|
|
9
|
+
node), a quick-links bar, and a terminal-style sidebar demo
|
|
10
|
+
(`docs/sidebar-demo.svg`); a descriptive repo summary and topics; and
|
|
11
|
+
community health files (CONTRIBUTING, SECURITY, CODE_OF_CONDUCT, issue and PR
|
|
12
|
+
templates).
|
|
13
|
+
- Stronger npm discoverability: expanded `keywords` (opencode-plugin,
|
|
14
|
+
opencode-tui-plugin, guardrails, review-gates, completion-enforcement, …).
|
|
15
|
+
|
|
3
16
|
## v0.3.2
|
|
4
17
|
|
|
5
18
|
- Only the `goal` agent is user-selectable. The structural validator now requires
|
package/README.md
CHANGED
|
@@ -1,10 +1,25 @@
|
|
|
1
1
|
# OpenCode Goal Mode
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/opencode-goal-mode)
|
|
4
|
+
[](https://www.npmjs.com/package/opencode-goal-mode)
|
|
5
|
+
[](https://github.com/devinoldenburg/opencode-goal-mode/actions/workflows/ci.yml)
|
|
6
|
+
[](https://github.com/devinoldenburg/opencode-goal-mode/actions/workflows/publish.yml)
|
|
7
|
+
[](LICENSE)
|
|
8
|
+
[](package.json)
|
|
9
|
+
|
|
3
10
|
Strict Goal Mode for OpenCode: a primary `goal` agent, a matrix of specialized
|
|
4
11
|
review subagents, slash commands, and a `goal-guard` plugin that enforces review
|
|
5
12
|
discipline, blocks destructive shell commands, and preserves goal state across
|
|
6
13
|
compaction **and** restarts.
|
|
7
14
|
|
|
15
|
+
```bash
|
|
16
|
+
npm install -g opencode-goal-mode && opencode-goal-mode-install --global
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+

|
|
20
|
+
|
|
21
|
+
**[Install](#install) · [Why it's different](#why-its-different) · [Benchmarks](#benchmarks-honest-edition) · [TUI integration](#tui-integration) · [Configuration](#configuration) · [Releasing](#releasing) · [Architecture](ARCHITECTURE.md)**
|
|
22
|
+
|
|
8
23
|
See [ARCHITECTURE.md](ARCHITECTURE.md) for the design and [research/](research/)
|
|
9
24
|
for the platform reference, comparison, and threat model.
|
|
10
25
|
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="760" height="280" viewBox="0 0 760 280" font-family="ui-monospace, SFMono-Regular, Menlo, Consolas, monospace" role="img" aria-label="OpenCode Goal Mode sidebar banner: the active goal in yellow with a gate-status line, and a grey No goal state.">
|
|
2
|
+
<defs>
|
|
3
|
+
<style>
|
|
4
|
+
.win { fill: #0d1117; stroke: #30363d; stroke-width: 1; }
|
|
5
|
+
.bar { fill: #161b22; }
|
|
6
|
+
.dot { stroke-width: 0; }
|
|
7
|
+
.title { fill: #8b949e; font-size: 12px; }
|
|
8
|
+
.label { fill: #8b949e; font-size: 12px; }
|
|
9
|
+
.goal { fill: #FFD700; font-size: 13px; }
|
|
10
|
+
.goalb { fill: #FFD700; font-size: 13px; font-weight: 700; }
|
|
11
|
+
.status { fill: #FFD700; font-size: 12px; }
|
|
12
|
+
.muted { fill: #808080; font-size: 13px; }
|
|
13
|
+
.chat { fill: #c9d1d9; font-size: 12px; }
|
|
14
|
+
.dim { fill: #6e7681; font-size: 12px; }
|
|
15
|
+
.ok { fill: #2da44e; font-size: 12px; }
|
|
16
|
+
.div { stroke: #30363d; stroke-width: 1; }
|
|
17
|
+
</style>
|
|
18
|
+
</defs>
|
|
19
|
+
|
|
20
|
+
<!-- window -->
|
|
21
|
+
<rect class="win" x="1" y="1" width="758" height="278" rx="8"/>
|
|
22
|
+
<rect class="bar" x="1" y="1" width="758" height="30" rx="8"/>
|
|
23
|
+
<rect class="bar" x="1" y="20" width="758" height="11"/>
|
|
24
|
+
<circle class="dot" cx="20" cy="16" r="5" fill="#ff5f56"/>
|
|
25
|
+
<circle class="dot" cx="38" cy="16" r="5" fill="#ffbd2e"/>
|
|
26
|
+
<circle class="dot" cx="56" cy="16" r="5" fill="#27c93f"/>
|
|
27
|
+
<text class="title" x="86" y="20">opencode — goal mode</text>
|
|
28
|
+
|
|
29
|
+
<!-- vertical divider between chat and sidebar -->
|
|
30
|
+
<line class="div" x1="470" y1="31" x2="470" y2="279"/>
|
|
31
|
+
|
|
32
|
+
<!-- chat pane (left) -->
|
|
33
|
+
<text class="dim" x="20" y="58">▌ goal</text>
|
|
34
|
+
<text class="chat" x="20" y="82">▸ Goal Contract recorded (4 acceptance criteria)</text>
|
|
35
|
+
<text class="chat" x="20" y="104">▸ implementing… running verification</text>
|
|
36
|
+
<text class="ok" x="20" y="126">✓ Security Reviewer → PASS</text>
|
|
37
|
+
<text class="ok" x="20" y="148">✓ Verifier → PASS</text>
|
|
38
|
+
<text class="dim" x="20" y="170">▸ Diff Reviewer running…</text>
|
|
39
|
+
|
|
40
|
+
<!-- sidebar pane (right) -->
|
|
41
|
+
<text class="label" x="490" y="58">SESSION</text>
|
|
42
|
+
<line class="div" x1="490" y1="68" x2="740" y2="68"/>
|
|
43
|
+
|
|
44
|
+
<!-- goal banner (active) -->
|
|
45
|
+
<text x="490" y="98"><tspan class="goal">◆ </tspan><tspan class="goalb">GOAL</tspan><tspan class="goal"> Ship the OAuth</tspan></text>
|
|
46
|
+
<text class="goal" x="490" y="116">refactor</text>
|
|
47
|
+
<text class="status" x="490" y="138">3/5 gates · dirty</text>
|
|
48
|
+
|
|
49
|
+
<line class="div" x1="490" y1="170" x2="740" y2="170"/>
|
|
50
|
+
|
|
51
|
+
<!-- no-goal state -->
|
|
52
|
+
<text class="label" x="490" y="196">when no goal is set</text>
|
|
53
|
+
<text class="muted" x="490" y="222">No goal</text>
|
|
54
|
+
</svg>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-goal-mode",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"description": "Strict Goal Mode agents, commands, and guard plugin for OpenCode.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -48,9 +48,24 @@
|
|
|
48
48
|
},
|
|
49
49
|
"keywords": [
|
|
50
50
|
"opencode",
|
|
51
|
+
"opencode-plugin",
|
|
52
|
+
"opencode-tui-plugin",
|
|
51
53
|
"goal-mode",
|
|
52
54
|
"agents",
|
|
53
|
-
"
|
|
55
|
+
"ai-agents",
|
|
56
|
+
"agentic",
|
|
57
|
+
"subagents",
|
|
58
|
+
"code-review",
|
|
59
|
+
"review-gates",
|
|
60
|
+
"guardrails",
|
|
61
|
+
"completion-enforcement",
|
|
62
|
+
"shell-guard",
|
|
63
|
+
"destructive-command",
|
|
64
|
+
"tui",
|
|
65
|
+
"llm",
|
|
66
|
+
"claude",
|
|
67
|
+
"coding-agent",
|
|
68
|
+
"developer-tools",
|
|
54
69
|
"plugin"
|
|
55
70
|
],
|
|
56
71
|
"repository": {
|