@webpresso/plugin-opencode 0.0.11 → 0.0.12
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/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"host": "opencode",
|
|
4
4
|
"packageName": "@webpresso/plugin-opencode",
|
|
5
|
-
"packageVersion": "0.0.
|
|
5
|
+
"packageVersion": "0.0.12",
|
|
6
6
|
"runtimeDirs": [],
|
|
7
7
|
"skills": {
|
|
8
8
|
"ai-deslop": {
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"digest": "sha256:306355888da0827e3523022077f731845726bbaaf595ca12515cc91d8605b5e6"
|
|
43
43
|
},
|
|
44
44
|
"fix": {
|
|
45
|
-
"digest": "sha256:
|
|
45
|
+
"digest": "sha256:4804c546291316439aad3ea05fb7d3f043bc191abd8b9c180eb1d349f19f64cf"
|
|
46
46
|
},
|
|
47
47
|
"grok": {
|
|
48
48
|
"digest": "sha256:1a6bf596fde9ce50a06ea767c06e65d4845c52d5af085644c958964385363b1e"
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"digest": "sha256:a80fbacc765e8b886437b9fdf7dd71e1ceb1b98b939078ec90fc88d06a8b4c69"
|
|
61
61
|
},
|
|
62
62
|
"opencode-go": {
|
|
63
|
-
"digest": "sha256:
|
|
63
|
+
"digest": "sha256:f9c2085cc35b6e63e230dbcf1d95eb88e65543a9aec53f707c42d631f8b62052"
|
|
64
64
|
},
|
|
65
65
|
"plan-ceo-review": {
|
|
66
66
|
"digest": "sha256:4d426158518dd71f8998770e8d4037bcbfa3c65d7265a93a4a78a9b015ba881e"
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"digest": "sha256:23fdad944b089de3cfcd13957a5ac10c37bd3d136b192029af69368bca1470db"
|
|
91
91
|
},
|
|
92
92
|
"tooling-friction": {
|
|
93
|
-
"digest": "sha256:
|
|
93
|
+
"digest": "sha256:7e1ff82147559624c39b1e4e1837d6bde0f102ecd65ec01358987d92ff42f7ad"
|
|
94
94
|
},
|
|
95
95
|
"tph": {
|
|
96
96
|
"digest": "sha256:bed3684a850651534f315d355cdeae50d951c429817df0f105cccdb7f4e1561b"
|
package/skills/fix/SKILL.md
CHANGED
|
@@ -61,7 +61,7 @@ the blast radius is broader than a local fix.
|
|
|
61
61
|
- **Tooling / harness findings** ("fix inefficiency you come across", MCP vs shell,
|
|
62
62
|
hook thrash) honor the same budget. Excess → record via the `tech-debt` skill
|
|
63
63
|
(or backlog handoff); do not expand the current epic unbounded.
|
|
64
|
-
- Prefer MCP `wp_*` and session-memory tools over `
|
|
64
|
+
- Prefer MCP `wp_*` and session-memory tools over the `wp` CLI / raw shell for
|
|
65
65
|
quality and discovery paths (see tooling map).
|
|
66
66
|
|
|
67
67
|
## Protocol
|
|
@@ -156,6 +156,24 @@ Escalate to `/verify <target>` (local) or `/verify <target> --merge-ready` when
|
|
|
156
156
|
If the repaired behavior is already green but the diff still needs a bounded
|
|
157
157
|
cleanup pass, use `ai-deslop` before the final verify handoff.
|
|
158
158
|
|
|
159
|
+
### Tool recovery and delivery intent
|
|
160
|
+
|
|
161
|
+
- Discover the managed owner's current identity with `wp_blueprint_projects`
|
|
162
|
+
using its absolute `cwd`; pass the returned project ID and matching checkout
|
|
163
|
+
to session tools. A blueprint ID is not a project ID.
|
|
164
|
+
- If quality tooling refuses stale or cross-checkout execution, follow its
|
|
165
|
+
checkout-local recovery. Attach the escape to the actual command:
|
|
166
|
+
`cd <owner> && WP_MCP_UNAVAILABLE=1 wp test --files <test>`.
|
|
167
|
+
Attaching it to `cd` does not set it for `wp`.
|
|
168
|
+
- For external tools whose schema requires exactly one of command or WebSocket
|
|
169
|
+
input, omit the unused option entirely; an empty object still supplies it.
|
|
170
|
+
- When the request includes merge/landing, continue through verification,
|
|
171
|
+
exact-head delivery, PR merge, and managed-owner cleanup. A handoff or
|
|
172
|
+
continuation summary does not satisfy that request. If a required gate is
|
|
173
|
+
blocked, report its concrete evidence and remaining action; preserve the
|
|
174
|
+
persisted completion requirements. Run additional named stages only when
|
|
175
|
+
the user's request actually includes them.
|
|
176
|
+
|
|
159
177
|
### Step 6 — Report with evidence
|
|
160
178
|
|
|
161
179
|
Keep it short:
|
|
@@ -26,7 +26,7 @@ until independently verified.
|
|
|
26
26
|
"base_ref": "<full-base-sha>",
|
|
27
27
|
"authority_ref": "<full-head-sha>",
|
|
28
28
|
"provider": "opencode",
|
|
29
|
-
"model": "opencode-go/deepseek-v4-
|
|
29
|
+
"model": "opencode-go/deepseek-v4.1-flash",
|
|
30
30
|
"repository_access": "none",
|
|
31
31
|
"mode": "advisory",
|
|
32
32
|
}
|
|
@@ -36,10 +36,11 @@ Use authoritative mode only when formal plan or delivery approval is requested.
|
|
|
36
36
|
|
|
37
37
|
## Model policy
|
|
38
38
|
|
|
39
|
-
Default exact model: `opencode-go/deepseek-v4-
|
|
40
|
-
Committed exact options: `opencode-go/deepseek-v4-
|
|
39
|
+
Default exact model: `opencode-go/deepseek-v4.1-flash`.
|
|
40
|
+
Committed exact options: `opencode-go/deepseek-v4.1-flash`, `opencode-go/glm-5.3-flash`, `opencode-go/deepseek-v4-pro`, `opencode-go/kimi-k2.7-code`, `opencode-go/qwen3.8-max`, `opencode-go/minimax-m3`, `opencode-go/muse-spark-1.3-contributor`, `opencode-go/mimo-v2.5-pro`, `opencode-go/muse-spark-1.2-contributor`, `opencode-go/union-alpha`, `opencode-go/qwen3.8-flash`, `opencode-go/mimo-v2.5`, `opencode-go/qwen3.7-plus`, `opencode-go/qwen3.7-max`, `opencode-go/qwen3.6-plus`, `opencode-go/minimax-m2.7`, `opencode-go/gpt-5.6-luna`, `opencode-go/longcat-2.0`, `opencode-go/kimi-k3`, `opencode-go/deepseek-v4-flash`, `opencode-go/deepseek-v4-flash-vision-exp`, `opencode-go/kimi-k2.6`, `opencode-go/hy4-preview`, `opencode-go/hy3`, `opencode-go/grok-4.6`, `opencode-go/glm-5.3`, `opencode-go/glm-5.2`, `opencode-go/glm-5.1`.
|
|
41
41
|
Use a named exact option when requested; otherwise use the default. Provider catalog discovery
|
|
42
|
-
belongs to the snapshot drift workflow, never to a skill invocation
|
|
42
|
+
belongs to the snapshot drift workflow, never to a skill invocation; reading the box-local
|
|
43
|
+
credential store at gate time is a local file read, not catalog discovery.
|
|
43
44
|
|
|
44
45
|
## Review quality
|
|
45
46
|
|
|
@@ -44,34 +44,44 @@ Optional post-land **product signal** for MCP/CLI/hooks/CI pain so Webpresso too
|
|
|
44
44
|
1. **Recall only** — do not re-ingest full CI logs or transcripts.
|
|
45
45
|
2. If zero medium+ findings → stop: `skipped: no tooling friction`.
|
|
46
46
|
3. Emit **1–3** findings (hard cap 8 for schema headroom; prefer ≤3).
|
|
47
|
-
4. Write
|
|
47
|
+
4. Write the capture with the validating verb — it is the only writer, and it
|
|
48
|
+
puts the document at the central, repo-scoped desktop state surface:
|
|
48
49
|
|
|
49
|
-
```
|
|
50
|
-
|
|
50
|
+
```bash
|
|
51
|
+
printf '%s' "$CAPTURE_JSON" | wp tooling-friction write --file YYYY-MM-DD-<slug|pr|session>.json
|
|
51
52
|
```
|
|
52
53
|
|
|
53
|
-
|
|
54
|
-
|
|
54
|
+
The verb parses the document through the shared schema helper **before** it
|
|
55
|
+
touches disk, so a capture that violates v1 is refused (non-zero exit,
|
|
56
|
+
naming every failing field path) and nothing is written. It prints the
|
|
57
|
+
absolute path it wrote, creates parent dirs, and refuses to overwrite an
|
|
58
|
+
existing capture — pick a unique session/HHMM suffix instead.
|
|
59
|
+
|
|
60
|
+
**Path SSOT (required):** that target is the same location the read-only MCP
|
|
61
|
+
resolver reports, so call the resolver and **copy the absolute path from its
|
|
62
|
+
summary text** (hosts often omit structured details), then confirm the
|
|
63
|
+
verb's printed path matches:
|
|
55
64
|
|
|
56
65
|
```text
|
|
57
66
|
wp_tooling_friction_path({"file":"YYYY-MM-DD-<slug|pr|session>.json"})
|
|
58
67
|
→ summary: tooling-friction path: <absolute-path>
|
|
59
68
|
```
|
|
60
69
|
|
|
61
|
-
|
|
70
|
+
Never write the capture to a hand-constructed path — not to a fleet folder
|
|
71
|
+
slug (`github.com-org-repo-*`), not to worktree-keyed desktop-state, not
|
|
72
|
+
under `Application Support` or `~/.webpresso`.
|
|
62
73
|
|
|
63
74
|
- `repo-key` is a **16-hex** `repoIdentityV1(git-common-dir)` segment from
|
|
64
75
|
`repoIdentityV1` under the pure preferred state root — **not** a fleet worktree folder slug such
|
|
65
76
|
as `github.com-org-repo-<hash>` under `~/.webpresso/worktrees/repos/`.
|
|
66
77
|
- Scope is always **repo** (shared by every worktree of that git common
|
|
67
78
|
dir). Never use a worktree-keyed desktop-state surface for captures.
|
|
68
|
-
- Human CLI
|
|
69
|
-
|
|
79
|
+
- Human CLI surface: `wp tooling-friction path --file <file>` prints that
|
|
80
|
+
absolute path; `wp tooling-friction write --file <file>` writes it.
|
|
70
81
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
and stop; never fall back to a worktree or `.agent/` path.
|
|
82
|
+
If the surface cannot be resolved or written, report
|
|
83
|
+
`tooling-friction: skipped: no state surface` and stop; never fall back to a
|
|
84
|
+
worktree or `.agent/` path.
|
|
75
85
|
|
|
76
86
|
5. Optional `--promote` or severity `high`/`critical`:
|
|
77
87
|
`wp tech-debt new "<short title>" --severity <s> --category tooling --status accepted`
|