arkgate 4.7.0 → 4.7.1
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 +33 -2
- package/README.md +3 -3
- package/bin/lib/agent-skills-package.mjs +29 -0
- package/bin/lib/check-args.mjs +1 -0
- package/bin/lib/doctor-next-actions.mjs +5 -1
- package/bin/lib/first-run-help.mjs +2 -2
- package/bin/lib/install-migrate.mjs +29 -57
- package/bin/lib/managed-upgrade.mjs +2 -7
- package/bin/lib/skill-catalog-apply.mjs +126 -0
- package/bin/lib/skill-install.mjs +264 -33
- package/bin/lib/skill-write.mjs +3 -0
- package/dist/index.cjs +25 -25
- package/dist/index.d.ts +19 -2
- package/dist/index.js +19 -19
- package/docs/README.md +3 -4
- package/docs/agent-guide.md +1 -1
- package/docs/ai-gates.md +2 -2
- package/docs/enthusiast/how-to-agent-gates.md +1 -1
- package/docs/package-surface.md +2 -2
- package/package.json +1 -1
- package/server.json +2 -2
- package/templates/agent-skills/README.md +1 -1
- package/templates/agent-skills/ark-contract/SKILL.md +8 -7
- package/templates/skills/ark-contract.md +8 -7
package/docs/README.md
CHANGED
|
@@ -53,14 +53,13 @@ These are **not** the day-to-day product path. They stay in the repo for evidenc
|
|
|
53
53
|
| Area | Path |
|
|
54
54
|
|------|------|
|
|
55
55
|
| Release notes (by version) | [releases/](releases/) · npm [CHANGELOG.md](../CHANGELOG.md) (Unreleased + 4.6.x) · [pre-4.6 archive](archive/CHANGELOG-pre-4.6.md) |
|
|
56
|
-
| Epic plans | [plans/](plans/) — maintainer seeds, not required to use the package. Live: [alive-in-six-months](plans/alive-in-six-months/README.md) (`AL01`–`AL04` done; `AL05` parked). [arkrun](plans/arkrun/README.md) (Phase RN; `RN01`–`
|
|
56
|
+
| Epic plans | [plans/](plans/) — maintainer seeds, not required to use the package. Live: [alive-in-six-months](plans/alive-in-six-months/README.md) (`AL01`–`AL04` done; `AL05` parked). [arkrun](plans/arkrun/README.md) (Phase RN; `RN01`–`RN16` done; shipped **4.7.0**; ADRs [0020](adr/0020-arkrun-gated-extra-plane.md)–[0024](adr/0024-arkrun-transport-ports.md) accepted). |
|
|
57
57
|
| Claims audit | [audit/claims-matrix.md](audit/claims-matrix.md) |
|
|
58
58
|
| Field adoption kit (scaffolding, not closed) | [field/](field/) |
|
|
59
59
|
| Runtime hardening (experimental) | [production-hardening.md](production-hardening.md) |
|
|
60
60
|
|
|
61
|
-
Current
|
|
62
|
-
|
|
63
|
-
Prior: [releases/4.6.6.md](releases/4.6.6.md) · [4.6.5](releases/4.6.5.md) · [4.6.4](releases/4.6.4.md) · [4.6.3](releases/4.6.3.md) · [4.6.2](releases/4.6.2.md) · [4.6.1](releases/4.6.1.md) · [4.6.0](releases/4.6.0.md).
|
|
61
|
+
Current published: [releases/4.7.0.md](releases/4.7.0.md) (`arkgate@4.7.0` on npm `latest`).
|
|
62
|
+
Prior: [releases/4.6.7.md](releases/4.6.7.md) · [4.6.6](releases/4.6.6.md) · [4.6.5](releases/4.6.5.md) · [4.6.4](releases/4.6.4.md) · [4.6.3](releases/4.6.3.md) · [4.6.2](releases/4.6.2.md) · [4.6.1](releases/4.6.1.md) · [4.6.0](releases/4.6.0.md).
|
|
64
63
|
Older notes: [releases/](releases/). Config: [configuration.md](configuration.md).
|
|
65
64
|
|
|
66
65
|
---
|
package/docs/agent-guide.md
CHANGED
|
@@ -626,7 +626,7 @@ npx arkgate-check --install-agent-gates --tools claude,cursor,codex,grok,antigra
|
|
|
626
626
|
| Host | Installed paths | Skills path |
|
|
627
627
|
|------|-----------------|-------------|
|
|
628
628
|
| Claude Code | `.claude/settings.json` hook + `.mcp.json` / `claude mcp add` | **Repo:** `.claude/skills/<name>/SKILL.md`; **home:** `$CLAUDE_HOME/skills` (default `~/.claude/skills`, `--claude-home`) |
|
|
629
|
-
| Cursor | `.cursor/mcp.json` + `.cursor/rules/ark.mdc` | `.
|
|
629
|
+
| Cursor | `.cursor/mcp.json` + `.cursor/rules/ark.mdc` | **Repo:** `.agents/skills/<name>/SKILL.md` (same catalog as Codex). Do not also copy into `.cursor/commands/` or `$CODEX_HOME/skills` — Cursor lists every path it scans. |
|
|
630
630
|
| OpenAI Codex | `.codex/config.toml` (project primary, relative `--root .`; configured on disk is not runtime-active until restart + `ark_identity` match); optional legacy `$CODEX_HOME/config.toml` fallback uses absolute roots and scoped secondaries — see [ai-gates.md](ai-gates.md) | **Repo:** `.agents/skills/<name>/SKILL.md`; **home:** `$CODEX_HOME/skills/<name>/SKILL.md` (`--codex-home`) |
|
|
631
631
|
| **Grok Build** | `.grok/hooks/ark-write-gate.json` + `.grok/config.toml` / `.mcp.json` | **Repo:** `.grok/skills/<name>/SKILL.md`; **home:** `$GROK_HOME/skills` (default `~/.grok/skills`, `--grok-home`) |
|
|
632
632
|
| Google Antigravity | `.agents/hooks.json` (+ `GEMINI.md` for shared Gemini consumers) | `.agents/skills/<name>/SKILL.md` |
|
package/docs/ai-gates.md
CHANGED
|
@@ -449,7 +449,7 @@ writes a scoped secondary table:
|
|
|
449
449
|
| Add B to the legacy home fallback | `ark-check --install-agent-gates --codex-home` |
|
|
450
450
|
| Make B the legacy home primary | `ark-check --install-agent-gates --codex-home --force` |
|
|
451
451
|
| Doctor: primary points at another permanent project | gap id `codex-home-multi-project` (warn if no secondary yet and session host is unknown/Codex; **info + `deferred`** when the session host is known and not Codex — e.g. Grok/Claude/Cursor; info if a scoped secondary is already present) |
|
|
452
|
-
| When using Codex: refresh home skills | `ark-check --install-agent-gates --skills-only --codex-home
|
|
452
|
+
| When using Codex: refresh home skills | Prefer project `.agents/skills`. If Codex lists `/ark-*` twice, prune home copies: `ark-check --install-agent-gates --skills-only --prune-home-duplicates`. `--codex-home` skips when the project catalog exists. |
|
|
453
453
|
|
|
454
454
|
When a valid project `.codex/config.toml` exists, it is the expected binding, but files alone
|
|
455
455
|
cannot prove which already-running process answered. Doctor therefore keeps an unrelated home
|
|
@@ -488,7 +488,7 @@ Codex discovers skills as directories containing `SKILL.md` (Agent Skills standa
|
|
|
488
488
|
| Scope | Path |
|
|
489
489
|
|-------|------|
|
|
490
490
|
| **Repo** (written by `--tools codex`) | `.agents/skills/<name>/SKILL.md` |
|
|
491
|
-
| **Home** (optional `--codex-home`) | `$CODEX_HOME/skills/<name>/SKILL.md` |
|
|
491
|
+
| **Home** (optional `--codex-home`) | `$CODEX_HOME/skills/<name>/SKILL.md` — skipped when the project catalog exists; Codex lists both otherwise |
|
|
492
492
|
|
|
493
493
|
Flat `.codex/prompts/*.md` files are **not** the invocable skill catalog. Install writes the
|
|
494
494
|
repo catalog above so AGENTS.md `/ark-*` references match what Codex can load. After install,
|
|
@@ -21,7 +21,7 @@ Installs:
|
|
|
21
21
|
| Host | Extra paths |
|
|
22
22
|
|------|-------------|
|
|
23
23
|
| Claude Code | `.claude/settings.json`, `.claude/skills/` |
|
|
24
|
-
| Cursor | `.cursor/mcp.json`, `.cursor/hooks.json`, `.cursor/rules/ark.mdc`, `.
|
|
24
|
+
| Cursor | `.cursor/mcp.json`, `.cursor/hooks.json`, `.cursor/rules/ark.mdc`, `.agents/skills/` |
|
|
25
25
|
| Codex | `.codex/hooks.json`, `.codex/config.toml`, `.agents/skills/` |
|
|
26
26
|
| **Grok Build** | `.grok/config.toml`, `.grok/hooks/`, `.grok/skills/` |
|
|
27
27
|
|
package/docs/package-surface.md
CHANGED
|
@@ -213,8 +213,8 @@ production deployment would need to satisfy; it is not a readiness certification
|
|
|
213
213
|
## Release notes (maintainers)
|
|
214
214
|
|
|
215
215
|
Ship notes for a version live under [releases/](https://github.com/pedroknigge/arkgate/tree/main/docs/releases)
|
|
216
|
-
(current
|
|
217
|
-
|
|
216
|
+
(current published: [4.7.0.md](https://github.com/pedroknigge/arkgate/blob/main/docs/releases/4.7.0.md);
|
|
217
|
+
prior published: [4.6.7.md](https://github.com/pedroknigge/arkgate/blob/main/docs/releases/4.6.7.md);
|
|
218
218
|
prior published: [4.6.6.md](https://github.com/pedroknigge/arkgate/blob/main/docs/releases/4.6.6.md);
|
|
219
219
|
prior published: [4.6.5.md](https://github.com/pedroknigge/arkgate/blob/main/docs/releases/4.6.5.md);
|
|
220
220
|
prior published: [4.6.4.md](https://github.com/pedroknigge/arkgate/blob/main/docs/releases/4.6.4.md);
|
package/package.json
CHANGED
package/server.json
CHANGED
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
"url": "https://github.com/pedroknigge/arkgate",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "4.7.
|
|
9
|
+
"version": "4.7.1",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"identifier": "arkgate",
|
|
14
|
-
"version": "4.7.
|
|
14
|
+
"version": "4.7.1",
|
|
15
15
|
"runtimeHint": "npx",
|
|
16
16
|
"transport": {
|
|
17
17
|
"type": "stdio"
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
This directory is the **Agent Skills–compatible** packaging of the same **13**
|
|
8
8
|
`/ark-*` skills shipped as flat templates for Ark install. **No new skill names.**
|
|
9
9
|
|
|
10
|
-
Package version when last generated context: **arkgate@4.7.
|
|
10
|
+
Package version when last generated context: **arkgate@4.7.1**
|
|
11
11
|
Schema: agent-skills package contract `1.0`
|
|
12
12
|
|
|
13
13
|
## Skills (frozen catalog)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ark-contract
|
|
3
|
-
description: Shortcut to /ark-adopt (session 0) or /ark-autopilot (later config tighten). Deprecated as a first-class door.
|
|
3
|
+
description: Shortcut to /ark-adopt (session 0) or /ark-autopilot (later config tighten). Edit layers, ArkRules, or the ArkRun extra. Deprecated as a first-class door.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# /ark-contract — Shortcut to adopt / autopilot
|
|
@@ -17,8 +17,9 @@ preview-only. Never weaken the architecture config.
|
|
|
17
17
|
|
|
18
18
|
| Use this leftover name when… | Prefer instead |
|
|
19
19
|
|------------------------------|----------------|
|
|
20
|
-
| Layers / include / ArkRules need an edit | **`/ark-adopt`** (path) or **`/ark-autopilot`** (tighten) |
|
|
20
|
+
| Layers / include / ArkRules / **ArkRun extra** need an edit | **`/ark-adopt`** (path, first `arkRun`) or **`/ark-autopilot`** (tighten) |
|
|
21
21
|
| False-green / concentrated edge | **`/ark-adopt`** — write the honest config |
|
|
22
|
+
| Companion install / one kernel candidate | **`/ark-runtime`** — this leftover name does not wire `@arkgate/runtime` |
|
|
22
23
|
|
|
23
24
|
## Dual engine (mandatory)
|
|
24
25
|
|
|
@@ -40,7 +41,7 @@ restart/retargeting is required. `ark://manifest` never satisfies this preflight
|
|
|
40
41
|
|
|
41
42
|
## Dual plane — layers + ArkRules (mandatory, except /ark-runtime)
|
|
42
43
|
|
|
43
|
-
Label findings **`[Layer]`** vs **`[ArkRules]`**. Absence of `arkRules` is valid.
|
|
44
|
+
Label findings **`[Layer]`** vs **`[ArkRules]`** vs **`[ArkRun]`**. Absence of `arkRules` or `arkRun` is valid. First-time extra is **`/ark-adopt`** (advisory). Wire one candidate with **`/ark-runtime`**. New kernel-managed file with **`/ark-place`**. Do not invent `/ark-run`.
|
|
44
45
|
|
|
45
46
|
## Subagent fan-out (optional, host-dependent)
|
|
46
47
|
|
|
@@ -54,9 +55,9 @@ If the host supports **parallel subagents**, fan out read-only scouts; otherwise
|
|
|
54
55
|
|
|
55
56
|
## Steps
|
|
56
57
|
|
|
57
|
-
1. If the path is missing or lying → execute **`/ark-adopt
|
|
58
|
-
2. If the path is honest and you are tightening rules → execute **`/ark-autopilot`**.
|
|
59
|
-
3. `ark-check --strict-config`.
|
|
58
|
+
1. If the path is missing or lying → execute **`/ark-adopt`** (including first advisory `arkRun`).
|
|
59
|
+
2. If the path is honest and you are tightening rules or the ArkRun extra → execute **`/ark-autopilot`**.
|
|
60
|
+
3. Companion / one candidate → **`/ark-runtime`**. `ark-check --strict-config`.
|
|
60
61
|
|
|
61
62
|
## Completion contract (skill incomplete if missing)
|
|
62
63
|
|
|
@@ -66,7 +67,7 @@ Skill incomplete if missing any field below.
|
|
|
66
67
|
- **Sensor:** commands/tools run
|
|
67
68
|
- **Opened:** real paths read (or `n/a` only if pure install/upgrade with no source analysis)
|
|
68
69
|
- **Result:** one-line outcome
|
|
69
|
-
- **Planes:** one-line split of residual **[Layer]** vs **[ArkRules]** (or `n/a` if unused)
|
|
70
|
+
- **Planes:** one-line split of residual **[Layer]** vs **[ArkRules]** vs **[ArkRun]** (or `n/a` if unused)
|
|
70
71
|
- **Compass:** top residual lenses | `n/a`
|
|
71
72
|
- **Handoff:** `/ark-adopt` / `/ark-autopilot` / `none`
|
|
72
73
|
- **Incomplete?** `no` | `yes — <what is missing>`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ark-contract
|
|
3
|
-
description: Shortcut to /ark-adopt (session 0) or /ark-autopilot (later config tighten). Deprecated as a first-class door.
|
|
3
|
+
description: Shortcut to /ark-adopt (session 0) or /ark-autopilot (later config tighten). Edit layers, ArkRules, or the ArkRun extra. Deprecated as a first-class door.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# /ark-contract — Shortcut to adopt / autopilot
|
|
@@ -17,8 +17,9 @@ preview-only. Never weaken the architecture config.
|
|
|
17
17
|
|
|
18
18
|
| Use this leftover name when… | Prefer instead |
|
|
19
19
|
|------------------------------|----------------|
|
|
20
|
-
| Layers / include / ArkRules need an edit | **`/ark-adopt`** (path) or **`/ark-autopilot`** (tighten) |
|
|
20
|
+
| Layers / include / ArkRules / **ArkRun extra** need an edit | **`/ark-adopt`** (path, first `arkRun`) or **`/ark-autopilot`** (tighten) |
|
|
21
21
|
| False-green / concentrated edge | **`/ark-adopt`** — write the honest config |
|
|
22
|
+
| Companion install / one kernel candidate | **`/ark-runtime`** — this leftover name does not wire `@arkgate/runtime` |
|
|
22
23
|
|
|
23
24
|
## Dual engine (mandatory)
|
|
24
25
|
|
|
@@ -40,7 +41,7 @@ restart/retargeting is required. `ark://manifest` never satisfies this preflight
|
|
|
40
41
|
|
|
41
42
|
## Dual plane — layers + ArkRules (mandatory, except /ark-runtime)
|
|
42
43
|
|
|
43
|
-
Label findings **`[Layer]`** vs **`[ArkRules]`**. Absence of `arkRules` is valid.
|
|
44
|
+
Label findings **`[Layer]`** vs **`[ArkRules]`** vs **`[ArkRun]`**. Absence of `arkRules` or `arkRun` is valid. First-time extra is **`/ark-adopt`** (advisory). Wire one candidate with **`/ark-runtime`**. New kernel-managed file with **`/ark-place`**. Do not invent `/ark-run`.
|
|
44
45
|
|
|
45
46
|
## Subagent fan-out (optional, host-dependent)
|
|
46
47
|
|
|
@@ -54,9 +55,9 @@ If the host supports **parallel subagents**, fan out read-only scouts; otherwise
|
|
|
54
55
|
|
|
55
56
|
## Steps
|
|
56
57
|
|
|
57
|
-
1. If the path is missing or lying → execute **`/ark-adopt
|
|
58
|
-
2. If the path is honest and you are tightening rules → execute **`/ark-autopilot`**.
|
|
59
|
-
3. `ark-check --strict-config`.
|
|
58
|
+
1. If the path is missing or lying → execute **`/ark-adopt`** (including first advisory `arkRun`).
|
|
59
|
+
2. If the path is honest and you are tightening rules or the ArkRun extra → execute **`/ark-autopilot`**.
|
|
60
|
+
3. Companion / one candidate → **`/ark-runtime`**. `ark-check --strict-config`.
|
|
60
61
|
|
|
61
62
|
## Completion contract (skill incomplete if missing)
|
|
62
63
|
|
|
@@ -66,7 +67,7 @@ Skill incomplete if missing any field below.
|
|
|
66
67
|
- **Sensor:** commands/tools run
|
|
67
68
|
- **Opened:** real paths read (or `n/a` only if pure install/upgrade with no source analysis)
|
|
68
69
|
- **Result:** one-line outcome
|
|
69
|
-
- **Planes:** one-line split of residual **[Layer]** vs **[ArkRules]** (or `n/a` if unused)
|
|
70
|
+
- **Planes:** one-line split of residual **[Layer]** vs **[ArkRules]** vs **[ArkRun]** (or `n/a` if unused)
|
|
70
71
|
- **Compass:** top residual lenses | `n/a`
|
|
71
72
|
- **Handoff:** `/ark-adopt` / `/ark-autopilot` / `none`
|
|
72
73
|
- **Incomplete?** `no` | `yes — <what is missing>`
|