@aotter/mantle 0.1.3-alpha.1 → 0.1.3-alpha.2
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 +7 -7
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.js +1 -1
- package/docs/agent-prompts.md +2 -2
- package/docs/handbook/concepts/mcp-and-agents.md +2 -2
- package/docs/handbook/start/project-and-cli.md +5 -5
- package/docs/release-process.md +44 -7
- package/docs/spec-only-host-adoption.md +1 -1
- package/package.json +17 -17
- package/skills/README.md +4 -4
package/README.md
CHANGED
|
@@ -12,11 +12,11 @@ where agents write config and the runtime carries the complexity.
|
|
|
12
12
|
Cold start for a new application is the pinned skill, not a bare npm add:
|
|
13
13
|
|
|
14
14
|
```sh
|
|
15
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
15
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
To depend on this package in an existing project, pin the exact version
|
|
19
|
-
from `package.json` (currently `0.1.3-alpha.
|
|
19
|
+
from `package.json` (currently `0.1.3-alpha.2`):
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
npm install @aotter/mantle
|
|
@@ -197,7 +197,7 @@ internals or rebuilding Mantle's adapters.
|
|
|
197
197
|
Cold start from GitHub or a marketplace host:
|
|
198
198
|
|
|
199
199
|
```sh
|
|
200
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
200
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
201
201
|
```
|
|
202
202
|
|
|
203
203
|
That skill interviews, pins this package, then uses the CLI and the
|
|
@@ -215,25 +215,25 @@ Install the Mantle Core skill bundle before authoring or maintaining a
|
|
|
215
215
|
consumer application. The canonical command is:
|
|
216
216
|
|
|
217
217
|
```sh
|
|
218
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
218
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
219
219
|
```
|
|
220
220
|
|
|
221
221
|
Claude Code and Codex can install the same pinned plugin, then run that skill:
|
|
222
222
|
|
|
223
223
|
```bash
|
|
224
224
|
# Claude Code
|
|
225
|
-
/plugin marketplace add aotter/mantle@v0.1.3-alpha.
|
|
225
|
+
/plugin marketplace add aotter/mantle@v0.1.3-alpha.2
|
|
226
226
|
/plugin install mantle@mantle
|
|
227
227
|
|
|
228
228
|
# Codex
|
|
229
|
-
codex plugin marketplace add aotter/mantle --ref v0.1.3-alpha.
|
|
229
|
+
codex plugin marketplace add aotter/mantle --ref v0.1.3-alpha.2
|
|
230
230
|
codex plugin add mantle@mantle
|
|
231
231
|
```
|
|
232
232
|
|
|
233
233
|
Cursor and VS Code Copilot can auto-discover the GitHub repo through
|
|
234
234
|
`.cursor-plugin/plugin.json` and `.copilot-plugin/plugin.json` after the repo
|
|
235
235
|
is cloned or opened. Still start from the `npx skills add` sentence (or open
|
|
236
|
-
`skills/install/SKILL.md` at tag `v0.1.3-alpha.
|
|
236
|
+
`skills/install/SKILL.md` at tag `v0.1.3-alpha.2`). Do not point a versioned consumer
|
|
237
237
|
at a mutable branch.
|
|
238
238
|
|
|
239
239
|
## Marketplace capability installs
|
package/dist/cli/main.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
export declare const MANTLE_OVERVIEW = "mantle \u2014 compile manifests into a RuntimePlan and typed binding\n\nOverview\n Optional surfaces \u2014 take only what you need. Admin is opt-in. You can ship a\n complete service with no Dev UI, no visitor frontend, and no extra packages.\n\n Minimal \u2014 Spec + generate\n validate + generate compile manifests into a sealed plan and typed binding.\n Embed that binding in an existing host. No Admin, no visitor UI.\n\n Runtime / adapter\n Bind Runtime through an adapter (Cloudflare Worker, Bun, Vercel, or yours).\n HTTP Views, MCP, and Auth work without Admin.\n See docs/examples/host-minimal-worker or\n node_modules/@aotter/mantle/docs/examples/host-minimal-worker.\n\n Opt-in \u2014 Admin / Dev UI\n Add @aotter/mantle-admin and @aotter/mantle-admin-ui only when humans need\n a console. Then re-run generate, bind wrangler ASSETS, and open\n /admin/sign-in (local email OTP via ConsoleEmailSender).\n See docs/examples/host-local-admin-otp or\n node_modules/@aotter/mantle/docs/examples/host-local-admin-otp.\n\n Further (ask the subcommand for details)\n skills project version-matched agent instructions\n emit-openapi OpenAPI 3.1 from HTTP Triggers and Views\n mantle-harness measure indexes and live HTTP (separate binary)\n\nUsage: mantle <subcommand> [options]\n\nSubcommands:\n generate Compile manifests into a typed runtime binding\n validate Static manifest and handler-source validation\n skills Project version-matched Core skills\n emit-openapi Emit OpenAPI 3.1 from Triggers and Views\n\nDocumentation:\n Handbook: node_modules/@aotter/mantle/docs/handbook/ (or docs/handbook/)\n Online: https://mantle.tools/\n Install skill: npx skills add aotter/mantle@v0.1.3-alpha.
|
|
2
|
+
export declare const MANTLE_OVERVIEW = "mantle \u2014 compile manifests into a RuntimePlan and typed binding\n\nOverview\n Optional surfaces \u2014 take only what you need. Admin is opt-in. You can ship a\n complete service with no Dev UI, no visitor frontend, and no extra packages.\n\n Minimal \u2014 Spec + generate\n validate + generate compile manifests into a sealed plan and typed binding.\n Embed that binding in an existing host. No Admin, no visitor UI.\n\n Runtime / adapter\n Bind Runtime through an adapter (Cloudflare Worker, Bun, Vercel, or yours).\n HTTP Views, MCP, and Auth work without Admin.\n See docs/examples/host-minimal-worker or\n node_modules/@aotter/mantle/docs/examples/host-minimal-worker.\n\n Opt-in \u2014 Admin / Dev UI\n Add @aotter/mantle-admin and @aotter/mantle-admin-ui only when humans need\n a console. Then re-run generate, bind wrangler ASSETS, and open\n /admin/sign-in (local email OTP via ConsoleEmailSender).\n See docs/examples/host-local-admin-otp or\n node_modules/@aotter/mantle/docs/examples/host-local-admin-otp.\n\n Further (ask the subcommand for details)\n skills project version-matched agent instructions\n emit-openapi OpenAPI 3.1 from HTTP Triggers and Views\n mantle-harness measure indexes and live HTTP (separate binary)\n\nUsage: mantle <subcommand> [options]\n\nSubcommands:\n generate Compile manifests into a typed runtime binding\n validate Static manifest and handler-source validation\n skills Project version-matched Core skills\n emit-openapi Emit OpenAPI 3.1 from Triggers and Views\n\nDocumentation:\n Handbook: node_modules/@aotter/mantle/docs/handbook/ (or docs/handbook/)\n Online: https://mantle.tools/\n Install skill: npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install\n";
|
|
3
3
|
//# sourceMappingURL=main.d.ts.map
|
package/dist/cli/main.js
CHANGED
|
@@ -64,7 +64,7 @@ Subcommands:
|
|
|
64
64
|
Documentation:
|
|
65
65
|
Handbook: node_modules/@aotter/mantle/docs/handbook/ (or docs/handbook/)
|
|
66
66
|
Online: https://mantle.tools/
|
|
67
|
-
Install skill: npx skills add aotter/mantle@v0.1.3-alpha.
|
|
67
|
+
Install skill: npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
68
68
|
`;
|
|
69
69
|
main().then((code) => {
|
|
70
70
|
process.exitCode = code;
|
package/docs/agent-prompts.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Cold start from GitHub or a marketplace host is one pinned skill:
|
|
4
4
|
|
|
5
5
|
```sh
|
|
6
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
6
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
7
7
|
```
|
|
8
8
|
|
|
9
9
|
Copy one block into a coding agent after that skill is present. Paths below
|
|
@@ -20,7 +20,7 @@ manifests exist. Admin is opt-in.
|
|
|
20
20
|
```text
|
|
21
21
|
Interview me about the service: host, who uses it, whether humans need a
|
|
22
22
|
Dev UI, and whether we only embed Spec/Runtime. If the install skill is
|
|
23
|
-
missing, run npx skills add aotter/mantle@v0.1.3-alpha.
|
|
23
|
+
missing, run npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install. Read the
|
|
24
24
|
install skill and npx --no-install mantle --help, then
|
|
25
25
|
handbook/start/project-and-cli.md.
|
|
26
26
|
Use examples/README.md as the examples index; copy builtin-* Manifests only
|
|
@@ -95,10 +95,10 @@ For Claude Code, the same bundle is installable from the plugin marketplace at t
|
|
|
95
95
|
|
|
96
96
|
```sh
|
|
97
97
|
# Canonical
|
|
98
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
98
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
99
99
|
|
|
100
100
|
# Claude Code — two separate prompts
|
|
101
|
-
/plugin marketplace add aotter/mantle@v0.1.3-alpha.
|
|
101
|
+
/plugin marketplace add aotter/mantle@v0.1.3-alpha.2
|
|
102
102
|
/plugin install mantle@mantle
|
|
103
103
|
```
|
|
104
104
|
|
|
@@ -8,7 +8,7 @@ This page describes a directly authored Mantle project: which files are yours, w
|
|
|
8
8
|
Cold start from GitHub or a marketplace host is the pinned install skill, not this page:
|
|
9
9
|
|
|
10
10
|
```sh
|
|
11
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
11
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## You own the project
|
|
@@ -100,18 +100,18 @@ Run the harness after any change to a Schema index, View filter or ordering, or
|
|
|
100
100
|
|
|
101
101
|
Install the version-matched plugin bundle in the agent host. Cold start uses
|
|
102
102
|
the published pin; an already-installed project uses the exact version from
|
|
103
|
-
`package.json` (currently `0.1.3-alpha.
|
|
103
|
+
`package.json` (currently `0.1.3-alpha.2`):
|
|
104
104
|
|
|
105
105
|
```sh
|
|
106
106
|
# Canonical
|
|
107
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
107
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
108
108
|
|
|
109
109
|
# Claude Code — two separate prompts
|
|
110
|
-
/plugin marketplace add aotter/mantle@v0.1.3-alpha.
|
|
110
|
+
/plugin marketplace add aotter/mantle@v0.1.3-alpha.2
|
|
111
111
|
/plugin install mantle@mantle
|
|
112
112
|
|
|
113
113
|
# Codex
|
|
114
|
-
codex plugin marketplace add aotter/mantle --ref v0.1.3-alpha.
|
|
114
|
+
codex plugin marketplace add aotter/mantle --ref v0.1.3-alpha.2
|
|
115
115
|
codex plugin add mantle@mantle
|
|
116
116
|
```
|
|
117
117
|
|
package/docs/release-process.md
CHANGED
|
@@ -15,9 +15,9 @@ No task implicitly authorizes publication; no manual package/tag writer exists.
|
|
|
15
15
|
|---|---|---|
|
|
16
16
|
| Reviewed source; unused version | Core source/packed-consumer gates, then immutable Core tag | Exact canonical merged PR SHA and version required |
|
|
17
17
|
| Tag exists; registry candidates partial | Existing npm/GPR publication steps | Verify existing artifact identity; publish missing versions only |
|
|
18
|
-
| Registry candidates verified | Public-registry reference consumer gate | No mutation; failure leaves public channels unchanged |
|
|
19
|
-
| Consumer passes |
|
|
20
|
-
| Channels promoted
|
|
18
|
+
| Registry candidates verified | Public-registry reference consumer gate | No mutation; failure leaves public channels and `mantle-release` unchanged |
|
|
19
|
+
| Consumer passes | That registry's promote step: monotonic channel add, then `dist-tag rm` of `mantle-release` only | Same version is a no-op; older runs cannot move a channel backward. Removal runs only after that package's promote loop, and only when `mantle-release` points at this version. A missing tag is a no-op. A tag pointing at another version is left for that version's promote step. `alpha` / `beta` / `rc` / `latest` are never removed |
|
|
20
|
+
| Channels promoted or preserved, and the temp tag cleared or left | GitHub release step | Existing release identity or fail |
|
|
21
21
|
|
|
22
22
|
The public-registry gate uses a disposable copy of the directly authored
|
|
23
23
|
`docs/examples/host-minimal-worker` reference, installs the exact candidate, then
|
|
@@ -39,9 +39,41 @@ foundational blocker returns to the state table and the user for a scope
|
|
|
39
39
|
decision instead of starting another local redesign loop.
|
|
40
40
|
|
|
41
41
|
Invariants: immutable versions/tags retain their identity; registry integrity
|
|
42
|
-
and the published-consumer gate precede public channel promotion
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
and the published-consumer gate precede public channel promotion and any
|
|
43
|
+
removal of `mantle-release` by the release controller; retries cannot move
|
|
44
|
+
channels backward. No downstream mutation, unpublish or rollback is
|
|
45
|
+
introduced. The runnable release-order check guards these transitions.
|
|
46
|
+
|
|
47
|
+
Mutation boundaries during a release: `Publish to npmjs` and `Mirror to
|
|
48
|
+
GitHub Packages` may attach `mantle-release` while publishing a version.
|
|
49
|
+
`Promote npmjs channel tags` is the only release step that moves npmjs
|
|
50
|
+
channels or removes that tag for the version being released. `Promote
|
|
51
|
+
GitHub Packages channel tags` is the only release step that does the same
|
|
52
|
+
for GitHub Packages. Recovery of a partial release reruns that same
|
|
53
|
+
controller and version. It does not call the cleanup workflow.
|
|
54
|
+
|
|
55
|
+
The cleanup workflow is a separate writer for one case the controller
|
|
56
|
+
cannot cover: a release commit that predates temp-tag removal still leaves
|
|
57
|
+
`mantle-release` behind, and a personal npm token that is `read-write` on
|
|
58
|
+
`npm access` can still receive 403 on dist-tag DELETE.
|
|
59
|
+
`.github/workflows/remove-mantle-release-dist-tag.yml` uses the Actions
|
|
60
|
+
`NPM_TOKEN` and `GITHUB_TOKEN`. It is not a release controller and not a
|
|
61
|
+
recovery path.
|
|
62
|
+
|
|
63
|
+
| State | Sole next writer | Retry / invariant |
|
|
64
|
+
|---|---|---|
|
|
65
|
+
| Leftover `mantle-release` after `alpha`, `beta`, `rc`, or `latest` already points at that version | `remove-mantle-release-dist-tag`, only when `confirm` is `remove-mantle-release` | Missing tag is a no-op. Only `mantle-release` is removed. Before and after dist-tags are printed and compared; every other tag is unchanged |
|
|
66
|
+
| `mantle-release` points at a version no consumer channel has | No deletion | The job fails and leaves the tag. Channel moves stay on the release promote step |
|
|
67
|
+
| Confirm string is anything else | No registry call | The job fails before reading or editing tags |
|
|
68
|
+
|
|
69
|
+
It shares the `release-controller` concurrency group with
|
|
70
|
+
`cancel-in-progress: false`, so it waits out an in-progress release instead
|
|
71
|
+
of deleting `mantle-release` between publish and channel promotion. After
|
|
72
|
+
this file is on `develop`:
|
|
73
|
+
|
|
74
|
+
```sh
|
|
75
|
+
gh workflow run remove-mantle-release-dist-tag --ref develop -f confirm=remove-mantle-release
|
|
76
|
+
```
|
|
45
77
|
|
|
46
78
|
## Branches and channels
|
|
47
79
|
|
|
@@ -63,6 +95,10 @@ is introduced. The runnable release-order check guards these transitions.
|
|
|
63
95
|
approval, resolved threads and a current-base `Typecheck + tests` check.
|
|
64
96
|
- Stable is the only release that moves `latest`. A prerelease channel keeps
|
|
65
97
|
its last version when a later stable publishes.
|
|
98
|
+
- Publish uses `--tag mantle-release`, so publication does not move
|
|
99
|
+
`alpha`, `beta`, `rc`, or `latest`. After the public-registry consumer
|
|
100
|
+
gate, each registry's promote step moves the real channel and then removes
|
|
101
|
+
`mantle-release` when that tag points at this version.
|
|
66
102
|
|
|
67
103
|
## Prepare and run
|
|
68
104
|
|
|
@@ -176,7 +212,8 @@ registries. Existing artifacts on retry must have matching integrity.
|
|
|
176
212
|
|
|
177
213
|
Completion requires the Core tag SHA, all eleven npmjs/GPR packages, exact
|
|
178
214
|
integrity, no workspace dependencies, a passing public-registry Worker gate,
|
|
179
|
-
correct channel tags
|
|
215
|
+
correct channel tags, no `mantle-release` tag left on this version, and the
|
|
216
|
+
GitHub release. Retain run links and gate evidence.
|
|
180
217
|
This does not prove stable production soak or upgrade safety; the version's
|
|
181
218
|
release-gate issue owns those acceptance requirements. An agent acceptance run
|
|
182
219
|
uses only the version-matched authoring instructions, not an SDK checkout or
|
|
@@ -6,7 +6,7 @@ Runtime. This Spec-only path is allowed by
|
|
|
6
6
|
[ADR-0019](adr/0019-sealed-manifest-runtime-pipeline.md), not a new adapter,
|
|
7
7
|
manifest grammar, or fork of Core.
|
|
8
8
|
|
|
9
|
-
This recipe targets `0.1.3-alpha.
|
|
9
|
+
This recipe targets `0.1.3-alpha.2`. Pin the package, record the tested version, and
|
|
10
10
|
rerun compatibility checks when upgrading.
|
|
11
11
|
|
|
12
12
|
## What stays with the host
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aotter/mantle",
|
|
3
|
-
"version": "0.1.3-alpha.
|
|
3
|
+
"version": "0.1.3-alpha.2",
|
|
4
4
|
"description": "Embeddable Mantle Core umbrella with Spec and Runtime; Web, Admin, Auth, Bun, Vercel, Cloudflare, and Admin UI are optional peer packages.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://mantle.tools/",
|
|
@@ -83,8 +83,8 @@
|
|
|
83
83
|
"README.md"
|
|
84
84
|
],
|
|
85
85
|
"dependencies": {
|
|
86
|
-
"@aotter/mantle-runtime": "0.1.3-alpha.
|
|
87
|
-
"@aotter/mantle-spec": "0.1.3-alpha.
|
|
86
|
+
"@aotter/mantle-runtime": "0.1.3-alpha.2",
|
|
87
|
+
"@aotter/mantle-spec": "0.1.3-alpha.2"
|
|
88
88
|
},
|
|
89
89
|
"peerDependencies": {
|
|
90
90
|
"aws4fetch": "^1.0.20",
|
|
@@ -92,13 +92,13 @@
|
|
|
92
92
|
"hono": "^4.12.0",
|
|
93
93
|
"@libsql/client": "^0.17.4",
|
|
94
94
|
"zod": "^4.5.0",
|
|
95
|
-
"@aotter/mantle-
|
|
96
|
-
"@aotter/mantle-
|
|
97
|
-
"@aotter/mantle-
|
|
98
|
-
"@aotter/mantle-
|
|
99
|
-
"@aotter/mantle-
|
|
100
|
-
"@aotter/mantle-
|
|
101
|
-
"@aotter/mantle-
|
|
95
|
+
"@aotter/mantle-auth": "0.1.3-alpha.2",
|
|
96
|
+
"@aotter/mantle-admin": "0.1.3-alpha.2",
|
|
97
|
+
"@aotter/mantle-cloudflare": "0.1.3-alpha.2",
|
|
98
|
+
"@aotter/mantle-admin-ui": "0.1.3-alpha.2",
|
|
99
|
+
"@aotter/mantle-bun": "0.1.3-alpha.2",
|
|
100
|
+
"@aotter/mantle-web": "0.1.3-alpha.2",
|
|
101
|
+
"@aotter/mantle-vercel": "0.1.3-alpha.2"
|
|
102
102
|
},
|
|
103
103
|
"peerDependenciesMeta": {
|
|
104
104
|
"@aotter/mantle-admin": {
|
|
@@ -144,13 +144,13 @@
|
|
|
144
144
|
"typescript": "^6.0.3",
|
|
145
145
|
"vitest": "^4.1.11",
|
|
146
146
|
"zod": "^4.5.4",
|
|
147
|
-
"@aotter/mantle-admin": "0.1.3-alpha.
|
|
148
|
-
"@aotter/mantle-
|
|
149
|
-
"@aotter/mantle-
|
|
150
|
-
"@aotter/mantle-admin-ui": "0.1.3-alpha.
|
|
151
|
-
"@aotter/mantle-
|
|
152
|
-
"@aotter/mantle-
|
|
153
|
-
"@aotter/mantle-
|
|
147
|
+
"@aotter/mantle-admin": "0.1.3-alpha.2",
|
|
148
|
+
"@aotter/mantle-auth": "0.1.3-alpha.2",
|
|
149
|
+
"@aotter/mantle-bun": "0.1.3-alpha.2",
|
|
150
|
+
"@aotter/mantle-admin-ui": "0.1.3-alpha.2",
|
|
151
|
+
"@aotter/mantle-web": "0.1.3-alpha.2",
|
|
152
|
+
"@aotter/mantle-cloudflare": "0.1.3-alpha.2",
|
|
153
|
+
"@aotter/mantle-vercel": "0.1.3-alpha.2"
|
|
154
154
|
},
|
|
155
155
|
"engines": {
|
|
156
156
|
"node": ">=22"
|
package/skills/README.md
CHANGED
|
@@ -62,16 +62,16 @@ Cold start is the pinned install skill. Other marketplace hosts are pointers
|
|
|
62
62
|
to the same pin:
|
|
63
63
|
|
|
64
64
|
```sh
|
|
65
|
-
npx skills add aotter/mantle@v0.1.3-alpha.
|
|
65
|
+
npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
```bash
|
|
69
69
|
# Claude Code — two separate prompts
|
|
70
|
-
/plugin marketplace add aotter/mantle@v0.1.3-alpha.
|
|
70
|
+
/plugin marketplace add aotter/mantle@v0.1.3-alpha.2
|
|
71
71
|
/plugin install mantle@mantle
|
|
72
72
|
|
|
73
73
|
# Codex
|
|
74
|
-
codex plugin marketplace add aotter/mantle --ref v0.1.3-alpha.
|
|
74
|
+
codex plugin marketplace add aotter/mantle --ref v0.1.3-alpha.2
|
|
75
75
|
codex plugin add mantle@mantle
|
|
76
76
|
```
|
|
77
77
|
|
|
@@ -97,7 +97,7 @@ package. Two audiences, two artifacts.
|
|
|
97
97
|
|
|
98
98
|
## Discoverability
|
|
99
99
|
|
|
100
|
-
The skills target ADR-0007's "AI as primary author" thesis: agents reach these files by URL when the user invokes them by intent ("install mantle", "develop my Mantle site", "deploy"). Official cold start is `npx skills add aotter/mantle@v0.1.3-alpha.
|
|
100
|
+
The skills target ADR-0007's "AI as primary author" thesis: agents reach these files by URL when the user invokes them by intent ("install mantle", "develop my Mantle site", "deploy"). Official cold start is `npx skills add aotter/mantle@v0.1.3-alpha.2 --skill install`. Point the agent at tag `v0.1.3-alpha.2` or pass the version-matched markdown content directly.
|
|
101
101
|
|
|
102
102
|
## Conventions
|
|
103
103
|
|