gm-skill 2.0.2336 → 2.0.2338
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/AGENTS.md +1 -1
- package/README.md +1 -1
- package/gm-plugkit/AGENTS.md +43 -0
- package/gm-plugkit/package.json +1 -1
- package/gm.json +1 -1
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -50,7 +50,7 @@ Dispatch = Write `.gm/exec-spool/in/<verb>/<N>.txt`, Read `.gm/exec-spool/out/<v
|
|
|
50
50
|
- **Wasm-direct verbs**: fs/kv/exec/fetch/env, recall, codesearch, memorize(+prune), health, filter, full git verb family. Enumeration in the recall store (`recall: wasm-direct plugkit verbs full list`).
|
|
51
51
|
- **Host-native verb**: `background-convert` (`{verb, task}`) detaches an already-in-flight dispatch so the daemon worker stops waiting on it -- agent-initiated only, never routed to gm.wasm. Detail: `.gm/daemon-config-reference.md`.
|
|
52
52
|
- **memorize-prune**: prune bad/superseded memories; two-mode spec (key-remove vs query-review) in the recall store (`recall: memorize-prune verb two-mode spec`).
|
|
53
|
-
- **git verbs**: git is a first-class spool surface, never a shell command; `git_finalize {message}` is the bundled COMPLETE-phase push surface, `git_push` the only admissible raw push (porcelain-gated, rebase-retry). A git-dominant `bash`/`powershell` body is gated (`deviation.bash-git-bypass`). Per-verb shapes + host_git `.exe` resolution in the recall store (`recall: git verbs rs-plugkit spool surface`).
|
|
53
|
+
- **git verbs**: git is a first-class spool surface, never a shell command; `git_finalize {message}` is the bundled COMPLETE-phase push surface, `git_push` the only admissible raw push (porcelain-gated, rebase-retry). A git-dominant `bash`/`powershell` body is gated (`deviation.bash-git-bypass`). Per-verb shapes + host_git `.exe` resolution in the recall store (`recall: git verbs rs-plugkit spool surface`). `git_finalize` also runs `ci-status` inline right after push and auto-writes `.gm/exec-spool/.ci-validated` on a green result -- no separate poll-then-marker dispatch needed. The `ci-validated-fresh` COMPLETE gate compares that marker's `head_sha` against current HEAD and names `ci-status` as its `next_dispatch` on denial.
|
|
54
54
|
- **filter**: pure stdout -> compact-stdout transform, in-wasm. Spec + usage (pipe raw command output through it before context) in the recall store (`recall: filter verb rs-plugkit spool spec`).
|
|
55
55
|
|
|
56
56
|
## Documentation Policy
|
package/README.md
CHANGED
|
@@ -27,7 +27,7 @@ npx gm-skill install
|
|
|
27
27
|
|
|
28
28
|
**The COMPLETE gate is code, not a prompt.** Nine conditions guard the last transition -- PRD closed, mutables resolved, worktree clean, residual scan fired, CI green against the current HEAD sha, browser witness coverage, submodules in sync, every claimed commit hash resolves against real git log, no hedge language in the diff. They are a `Vec<String>` on an edge in `fsm.rs`, evaluated in Rust. A failed gate refuses the transition. The agent cannot narrate its way to done.
|
|
29
29
|
|
|
30
|
-
**A refused transition tells the agent what to do next.** Gate denials carry the recovery verb: `worktree-clean` returns `git_finalize`, `ci-validated-fresh` returns `
|
|
30
|
+
**A refused transition tells the agent what to do next.** Gate denials carry the recovery verb: `worktree-clean` returns `git_finalize`, `ci-validated-fresh` returns `ci-status`. You get an instruction, not an error.
|
|
31
31
|
|
|
32
32
|
**Repeat the same failure and it stops you.** After the same denial fires repeatedly, the response stops restating the refusal and instructs the agent to record the stuck state and switch to a bounded-retry discipline. Loops end.
|
|
33
33
|
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# AGENTS.md
|
|
2
|
+
|
|
3
|
+
`gm-plugkit` is the thin launcher-edge npm package (`npx gm-plugkit@latest spool` /
|
|
4
|
+
`bun x gm-plugkit@latest spool`). It downloads the sha256-verified
|
|
5
|
+
`plugkit.wasm`/`plugkit-slim.wasm` for the host platform, then re-execs into
|
|
6
|
+
the staged `agentplug-runner` native binary at `~/.gm-tools/agentplug-runner`
|
|
7
|
+
(`cli.js::tryDelegateToRunner`) and exits -- `agentplug-runner` is the sole
|
|
8
|
+
spool loader; this package never loads the wasm itself.
|
|
9
|
+
|
|
10
|
+
## Files
|
|
11
|
+
|
|
12
|
+
- `cli.js` -- entry point, delegates to the staged runner
|
|
13
|
+
- `bootstrap.js` / `bootstrap-shared.js` / `bootstrap-wasm-core.js` -- wasm
|
|
14
|
+
download, sha256 verification, version resolution
|
|
15
|
+
- `index.js` -- programmatic entry point
|
|
16
|
+
- `gm-log.js` / `gm-process.js` -- shared logging/process helpers
|
|
17
|
+
- `plugkit.version` / `plugkit.sha256` / `plugkit-slim.wasm.sha256` -- pinned
|
|
18
|
+
version + sha sidecars, always re-verified against the freshly-resolved
|
|
19
|
+
remote release rather than trusted as a standing pin (see gm's own
|
|
20
|
+
`AGENTS.md`, cascade pin-toil design)
|
|
21
|
+
|
|
22
|
+
## Runtime state, two separate directories
|
|
23
|
+
|
|
24
|
+
`~/.gm-tools/` is this package's own launcher-edge install/staging directory
|
|
25
|
+
(where the downloaded wasm and the staged `agentplug-runner` executable
|
|
26
|
+
land). `~/.agentplug/` is `agentplug-runner`'s own runtime-state directory
|
|
27
|
+
(daemon status, logs, plugin content hashes). Check
|
|
28
|
+
`~/.agentplug/plugins/gm.version` for what is actually being served -- never
|
|
29
|
+
`~/.gm-tools/` -- since the two directories track different things.
|
|
30
|
+
|
|
31
|
+
## Code style
|
|
32
|
+
|
|
33
|
+
Same discipline as gm's own `AGENTS.md` (parent repo): no comments unless
|
|
34
|
+
the WHY is genuinely non-obvious, no synthetic test files or frameworks,
|
|
35
|
+
no decorative Unicode/emoji, no UTF-8 BOM. Verification is a real
|
|
36
|
+
`bun x gm-plugkit@latest spool` invocation against a live project, reading
|
|
37
|
+
the actual `.gm/exec-spool/.status.json` it produces -- never a mock.
|
|
38
|
+
|
|
39
|
+
## Pull requests
|
|
40
|
+
|
|
41
|
+
No branches or PRs -- every change pushes straight to `main` (gm's own
|
|
42
|
+
`AGENTS.md`, direct-push-to-main rule). This package ships as part of the
|
|
43
|
+
same `publish.yml` run that ships `gm-skill` from the gm repo root.
|
package/gm-plugkit/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm-plugkit",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.2338",
|
|
4
4
|
"description": "Bootstrap and daemon-spawn tool for gm plugkit binary. Downloads the correct platform wasm, verifies SHA256, and launches agentplug-runner (the native wasm host) as the spool watcher daemon.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
package/gm.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gm-skill",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.2338",
|
|
4
4
|
"description": "Canonical universal harness — AI-native software engineering via skill-driven orchestration; bootstraps plugkit for task execution and session isolation. Install in any AI coding agent host.",
|
|
5
5
|
"author": "AnEntrypoint",
|
|
6
6
|
"license": "MIT",
|