@skill-map/cli 0.68.1 → 0.69.0
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/dist/cli/tutorial/sm-tutorial/references/_core.md +15 -6
- package/dist/cli/tutorial/sm-tutorial/references/_manifest.json +70 -70
- package/dist/cli/tutorial/sm-tutorial/references/_manifest.yml +38 -38
- package/dist/cli/tutorial/sm-tutorial/references/fixtures.md +3 -3
- package/dist/cli/tutorial/sm-tutorial/references/part-authoring.md +25 -8
- package/dist/cli/tutorial/sm-tutorial/references/part-basic-daily.md +77 -29
- package/dist/cli/tutorial/sm-tutorial/references/part-basic-fundamentals.md +1 -1
- package/dist/cli/tutorial/sm-tutorial/references/part-basic-kickoff.md +1 -1
- package/dist/cli/tutorial/sm-tutorial/references/part-cli.md +1 -1
- package/dist/cli/tutorial/sm-tutorial/references/part-daily-loop.md +77 -31
- package/dist/cli/tutorial/sm-tutorial/references/part-fundamentals.md +3 -3
- package/dist/cli/tutorial/sm-tutorial/references/part-plugins.md +1 -1
- package/dist/cli/tutorial/sm-tutorial/references/part-project-kickoff.md +2 -2
- package/dist/cli/tutorial/sm-tutorial/references/part-settings.md +2 -2
- package/dist/cli.js +699 -326
- package/dist/conformance/index.js +3 -3
- package/dist/index.js +11 -10
- package/dist/kernel/index.d.ts +27 -17
- package/dist/kernel/index.js +11 -10
- package/dist/migrations/001_initial.sql +7 -3
- package/dist/ui/chunk-E7GLGHVY.js +1 -0
- package/dist/ui/chunk-RLRSNHYG.js +3 -0
- package/dist/ui/{chunk-22EQLC23.js → chunk-RRRXQNG6.js} +1 -1
- package/dist/ui/{chunk-K3ZRQNN5.js → chunk-SI4MGFOW.js} +1 -1
- package/dist/ui/index.html +1 -1
- package/dist/ui/{main-R7BIU4HU.js → main-23NGLEUB.js} +3 -3
- package/migrations/001_initial.sql +7 -3
- package/package.json +2 -2
- package/dist/ui/chunk-PU5OP5RN.js +0 -1
- package/dist/ui/chunk-TLMV4LOQ.js +0 -3
- /package/dist/ui/{chunk-KMHXNOFZ.js → chunk-SXSNTF26.js} +0 -0
|
@@ -101,6 +101,9 @@ inside the `> ` blockquote):
|
|
|
101
101
|
> output; the harness on the canvas is Layer 1. Your nodes are not a diagram,
|
|
102
102
|
> they are runnable, and you just ran one.
|
|
103
103
|
>
|
|
104
|
+
> If the new page is not showing, refresh the browser with F5, the site does
|
|
105
|
+
> not reload on its own.
|
|
106
|
+
>
|
|
104
107
|
> See the new page on the site, and the Map unchanged?
|
|
105
108
|
|
|
106
109
|
Wait for confirmation. Mark `add-page`: done. Auto-advance to `broken-ref`.
|
|
@@ -146,30 +149,30 @@ Wait for confirmation. The harness MUST be clean again before Act C. Mark
|
|
|
146
149
|
|
|
147
150
|
## Chapter `reserved` - A reserved name collides (~2 min)
|
|
148
151
|
|
|
149
|
-
**Preparation**: `Write` `<provider_dir>/
|
|
152
|
+
**Preparation**: `Write` `<provider_dir>/model/SKILL.md`:
|
|
150
153
|
```markdown
|
|
151
154
|
---
|
|
152
|
-
name:
|
|
155
|
+
name: model
|
|
153
156
|
description: |
|
|
154
157
|
Scaffolds a new empty page in public/ from the shared template.
|
|
155
158
|
---
|
|
156
159
|
|
|
157
|
-
#
|
|
160
|
+
# model
|
|
158
161
|
|
|
159
162
|
Creates a blank page so you can start writing.
|
|
160
163
|
```
|
|
161
164
|
|
|
162
165
|
The watcher picks up the new skill. Tell the tester:
|
|
163
166
|
|
|
164
|
-
> I added a skill named `
|
|
167
|
+
> I added a skill named `model`. Watch the **Map**: the new `model` skill node
|
|
165
168
|
> appears, but flagged with a **warning** marker. Open its inspector: it reads
|
|
166
|
-
> `name-reserved`, `
|
|
167
|
-
> (like `help`, `clear`, `
|
|
169
|
+
> `name-reserved`, `model` shadows one of the agent runtime's own built-in verbs
|
|
170
|
+
> (like `help`, `clear`, `config`), so the runtime would silently ignore your
|
|
168
171
|
> skill, it never runs. The fix is a name the runtime does not own.
|
|
169
172
|
>
|
|
170
|
-
> Rename it to `new-page`: first rename the folder `<provider_dir>/
|
|
173
|
+
> Rename it to `new-page`: first rename the folder `<provider_dir>/model/` to
|
|
171
174
|
> `<provider_dir>/new-page/`. Then open `new-page/SKILL.md` and, at the top where
|
|
172
|
-
> the frontmatter says `name:
|
|
175
|
+
> the frontmatter says `name: model`, change it to `name: new-page`. Save.
|
|
173
176
|
>
|
|
174
177
|
> Watch the **Map** again: the warning clears and the node is now `new-page`, all
|
|
175
178
|
> live. What cleared it was changing `frontmatter.name` (which for a skill must
|
|
@@ -186,37 +189,82 @@ Wait for confirmation. Mark `reserved`: done. Auto-advance to `publish`.
|
|
|
186
189
|
|
|
187
190
|
## Chapter `publish` - Ship it: run the publish skill for real (~4 min)
|
|
188
191
|
|
|
189
|
-
**
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
under `public/` (does each internal `href` resolve to a file that exists?); if
|
|
193
|
-
any link is broken, hand it to the `content-editor` and re-run; then walk the
|
|
194
|
-
deploy runbook. Do not role-play it.
|
|
192
|
+
**Context**: the publish flow only earns its keep when something is actually
|
|
193
|
+
wrong, so first you plant a real bug in the site, then watch the publish skill
|
|
194
|
+
catch and fix it for real.
|
|
195
195
|
|
|
196
|
-
|
|
196
|
+
**Preparation**: make sure the pages exist (`index`, `about`, `projects`).
|
|
197
|
+
|
|
198
|
+
This chapter has two beats: the tester breaks a link in the HTML first, then runs
|
|
199
|
+
the publish skill so `check-links` catches the break. The split is required, the
|
|
200
|
+
publish run cannot demonstrate the catch until the break is in place.
|
|
201
|
+
|
|
202
|
+
**Beat 1, plant the bug (the tester breaks the HTML, their file).** Tell the
|
|
203
|
+
tester:
|
|
204
|
+
|
|
205
|
+
> Before we ship, let's break something on purpose. Open `public/index.html` in
|
|
206
|
+
> your editor and find the **About** link in the top nav:
|
|
207
|
+
>
|
|
208
|
+
> ```html
|
|
209
|
+
> <a href="/about.html">About</a>
|
|
210
|
+
> ```
|
|
211
|
+
>
|
|
212
|
+
> Change the target to a typo that points at a page that does not exist, then
|
|
213
|
+
> save:
|
|
214
|
+
>
|
|
215
|
+
> ```html
|
|
216
|
+
> <a href="/abuot.html">About</a>
|
|
217
|
+
> ```
|
|
218
|
+
>
|
|
219
|
+
> Now watch the **Map**. Nothing happens: no arrow moves, no red marker. Back in
|
|
220
|
+
> the `broken-ref` chapter, breaking a link between your `.md` files lit up the
|
|
221
|
+
> graph the instant you saved. This break is invisible to it, and that is
|
|
222
|
+
> correct: skill-map maps your **harness** (the `.md` files, Layer 1), not the
|
|
223
|
+
> HTML pages it produces (Layer 2, your `public/` folder, which is even in
|
|
224
|
+
> `.skillmapignore`). A broken link inside your actual site never shows on the
|
|
225
|
+
> graph. The one thing that catches it is your `check-links` skill, which is
|
|
226
|
+
> exactly what the publish skill runs as its first step.
|
|
227
|
+
>
|
|
228
|
+
> Saved the typo, and the Map stayed unchanged?
|
|
229
|
+
|
|
230
|
+
Wait for confirmation. The Map MUST stay unchanged; if a marker appeared they
|
|
231
|
+
edited a `.md` by mistake, point them back at `public/index.html`.
|
|
232
|
+
|
|
233
|
+
**Beat 2, run the publish skill for real.** Tell the tester:
|
|
234
|
+
|
|
235
|
+
> Now ship it. Tell me to publish and I'll run your `publish` skill for real,
|
|
236
|
+
> exactly as written. (You can read the skill anytime by clicking the `publish`
|
|
237
|
+
> node on the Map, then opening its **Body** section.)
|
|
197
238
|
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
239
|
+
When the tester asks to publish, **execute the publish flow for real** by
|
|
240
|
+
following `<provider_dir>/publish/SKILL.md`: run the `check-links` logic over
|
|
241
|
+
every `.html` under `public/` (does each internal `href` resolve to a file that
|
|
242
|
+
exists?), which now finds the planted typo; per step 2, hand it to the
|
|
243
|
+
`content-editor` to fix (point the link back at `/about.html`), re-run the check
|
|
244
|
+
until it is clean, then walk the deploy runbook. Do not role-play it; `Read`
|
|
245
|
+
`public/index.html` before and after the fix so the report is honest.
|
|
203
246
|
|
|
204
|
-
After running the flow, report what actually happened
|
|
205
|
-
on the real result):
|
|
247
|
+
After running the flow, report what actually happened:
|
|
206
248
|
|
|
207
249
|
> Here is what just ran, for real:
|
|
208
250
|
>
|
|
209
251
|
> - **check-links** walked every page under `public/` and followed each internal
|
|
210
|
-
> link.
|
|
211
|
-
>
|
|
252
|
+
> link. It caught **1 broken link**: `/abuot.html` on `index.html`, the typo
|
|
253
|
+
> you planted. The graph never flagged it, but the skill did, because the skill
|
|
254
|
+
> reads your real pages.
|
|
255
|
+
> - **step 2 kicked in**: I handed it to your `content-editor` to fix. It pointed
|
|
256
|
+
> the link back at `/about.html`, and a re-run of **check-links** came back
|
|
257
|
+
> clean: 0 broken links.
|
|
212
258
|
> - the **deploy runbook** (`docs/DEPLOYMENT.md`) lists the ship steps:
|
|
213
|
-
> regenerate the pages (done), run the link check (done), start the
|
|
214
|
-
> (next chapter).
|
|
259
|
+
> regenerate the pages (done), run the link check (done, now clean), start the
|
|
260
|
+
> server (next chapter).
|
|
215
261
|
>
|
|
216
|
-
>
|
|
217
|
-
>
|
|
262
|
+
> That is the whole point of the harness: you broke the site, the graph stayed
|
|
263
|
+
> quiet because the HTML is its output and not its map, and your own publish
|
|
264
|
+
> skill caught the break and fixed it before it shipped. Shall we continue?
|
|
218
265
|
|
|
219
|
-
Wait for confirmation.
|
|
266
|
+
Wait for confirmation. The site MUST be clean again (the typo fixed) before
|
|
267
|
+
`golive`. Mark `publish`: done. Auto-advance to `stability`.
|
|
220
268
|
|
|
221
269
|
## Chapter `stability` - Set a node's stability (and the `.sm` sidecar) (~3 min)
|
|
222
270
|
|
|
@@ -315,7 +315,7 @@ host-dependent rendering rule. Per Inviolable rule #2, the agent does NOT touch
|
|
|
315
315
|
├── .agents/skills/
|
|
316
316
|
│ ├── demo-skill/SKILL.md
|
|
317
317
|
│ └── sm-tutorial/SKILL.md ← the tutorial you loaded
|
|
318
|
-
├── .skill-map/ ← project DB + settings
|
|
318
|
+
├── .skill-map/ ← project DB + settings
|
|
319
319
|
├── .skillmapignore ← the file we're about to edit
|
|
320
320
|
└── notes/
|
|
321
321
|
├── todo.md
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Part 1 (basic track): The
|
|
1
|
+
# Part 1 (basic track): The harness from zero (step library, `kickoff-*` ids)
|
|
2
2
|
|
|
3
3
|
The campaign turns real here for the **basic track** (the open-standard family:
|
|
4
4
|
`agent-skills`, `antigravity`). After the abstract prologue, the tester starts an
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Part
|
|
1
|
+
# Part 3: The CLI for you and your agent - step library
|
|
2
2
|
|
|
3
3
|
The deep-dive into the rest of the CLI: browsing verbs, ASCII graph + export, broken-ref issues, the `.sm` annotation consent prompt, and validating links to folders outside the scan scope. `pace: auto-advance` (walk straight into the next chapter's Announcement once one is marked done) and `preflight: seed` with the `prologue-built` snapshot: it self-seeds its own copy of the Part 0 demo fixture, so it works even if the campaign already replaced that fixture with the portfolio (see SKILL.md §Entering a part, the `cli` case). Shared conventions (tone, provider detection / substitution, the `> ` rendering rule, the per-step cycle) live in `_core.md`; do not restate them here.
|
|
4
4
|
|
|
@@ -31,7 +31,7 @@ kind of those two nodes changes. Per chapter:
|
|
|
31
31
|
- `broken-ref`: the deploy link that breaks lives in the `publish` SKILL; fix it
|
|
32
32
|
in `.agents/skills/publish/SKILL.md` (not a `.claude/commands/` file).
|
|
33
33
|
- `reserved`: Codex has no command, so create a SKILL with a reserved name
|
|
34
|
-
instead, `Write` `.agents/skills/
|
|
34
|
+
instead, `Write` `.agents/skills/model/SKILL.md` named `model` (it shadows
|
|
35
35
|
the open-standard `COMMONS_RESERVED_NAMES`); clear it by renaming the folder +
|
|
36
36
|
`frontmatter.name` to `new-page`, exactly like the basic track's `reserved`
|
|
37
37
|
chapter, on a skill.
|
|
@@ -249,6 +249,9 @@ the `> ` blockquote, do NOT drop the bar when you personalise it.
|
|
|
249
249
|
> output; the harness on the canvas is Layer 1. Your nodes are not a diagram,
|
|
250
250
|
> they are runnable, and you just ran one.
|
|
251
251
|
>
|
|
252
|
+
> If the new page is not showing, refresh the browser with F5, the site does
|
|
253
|
+
> not reload on its own.
|
|
254
|
+
>
|
|
252
255
|
> See the new page on the site, and the Map unchanged?
|
|
253
256
|
|
|
254
257
|
Wait for confirmation. Mark `add-page`: done. Auto-advance to `broken-ref`.
|
|
@@ -297,30 +300,30 @@ done. Auto-advance to `reserved`.
|
|
|
297
300
|
|
|
298
301
|
## Chapter `reserved` - A reserved name collides (~2 min)
|
|
299
302
|
|
|
300
|
-
**Preparation**: `Write` `.claude/commands/
|
|
303
|
+
**Preparation**: `Write` `.claude/commands/model.md`:
|
|
301
304
|
```markdown
|
|
302
305
|
---
|
|
303
|
-
name:
|
|
306
|
+
name: model
|
|
304
307
|
description: |
|
|
305
308
|
Scaffolds a new empty page in public/ from the shared template.
|
|
306
309
|
---
|
|
307
310
|
|
|
308
|
-
#
|
|
311
|
+
# model
|
|
309
312
|
|
|
310
313
|
Creates a blank page so you can start writing.
|
|
311
314
|
```
|
|
312
315
|
|
|
313
316
|
The watcher picks up the new command. Tell the tester:
|
|
314
317
|
|
|
315
|
-
> I added a command named `
|
|
318
|
+
> I added a command named `model`. Watch the **Map**: the new `model` command node
|
|
316
319
|
> appears, but flagged with a **warning** marker. Open its inspector: it reads
|
|
317
|
-
> `name-reserved`, `
|
|
320
|
+
> `name-reserved`, `model` shadows one of Claude Code's own slash commands (like
|
|
318
321
|
> `/help`, `/clear`, `/config`), so the runtime would silently ignore your file,
|
|
319
322
|
> it never runs. The fix is a name the runtime does not own.
|
|
320
323
|
>
|
|
321
|
-
> Rename it to `new-page`: first rename the file `.claude/commands/
|
|
324
|
+
> Rename it to `new-page`: first rename the file `.claude/commands/model.md` to
|
|
322
325
|
> `.claude/commands/new-page.md`. Then open it in your text editor / IDE and, at
|
|
323
|
-
> the top, where the frontmatter says `name:
|
|
326
|
+
> the top, where the frontmatter says `name: model`, change it to
|
|
324
327
|
> `name: new-page`. Save.
|
|
325
328
|
>
|
|
326
329
|
> Watch the **Map** again: the warning clears and the node is now `new-page`,
|
|
@@ -338,40 +341,83 @@ Wait for confirmation. Mark `reserved`: done. Auto-advance to `publish`.
|
|
|
338
341
|
|
|
339
342
|
## Chapter `publish` - Ship it: run /publish for real (~4 min)
|
|
340
343
|
|
|
344
|
+
**Context**: the publish flow only earns its keep when something is actually
|
|
345
|
+
wrong, so first you plant a real bug in the site, then watch `/publish` catch and
|
|
346
|
+
fix it for real.
|
|
347
|
+
|
|
341
348
|
**Preparation**: make sure the pages exist (`index`, `about`, `projects` from the
|
|
342
|
-
earlier chapters; lay any that are missing from the templates in `setup`).
|
|
343
|
-
by following `.claude/commands/publish.md`: run the `check-links` logic over
|
|
344
|
-
every `.html` under `public/` (does each internal `href` resolve to a file that
|
|
345
|
-
exists?); if any link is broken, brief the `content-editor` to fix it and
|
|
346
|
-
re-run the check; then walk the deploy runbook steps. Do not role-play it.
|
|
349
|
+
earlier chapters; lay any that are missing from the templates in `setup`).
|
|
347
350
|
|
|
348
|
-
|
|
351
|
+
This chapter has two beats: the tester breaks a link in the HTML first, then runs
|
|
352
|
+
`/publish` so the skill catches the break. The split is required, the publish run
|
|
353
|
+
cannot demonstrate the catch until the break is in place.
|
|
354
|
+
|
|
355
|
+
**Beat 1, plant the bug (the tester breaks the HTML, their file).** Tell the
|
|
356
|
+
tester:
|
|
357
|
+
|
|
358
|
+
> Before we ship, let's break something on purpose. Open `public/index.html` in
|
|
359
|
+
> your editor and find the **About** link in the top nav:
|
|
360
|
+
>
|
|
361
|
+
> ```html
|
|
362
|
+
> <a href="/about.html">About</a>
|
|
363
|
+
> ```
|
|
364
|
+
>
|
|
365
|
+
> Change the target to a typo that points at a page that does not exist, then
|
|
366
|
+
> save:
|
|
367
|
+
>
|
|
368
|
+
> ```html
|
|
369
|
+
> <a href="/abuot.html">About</a>
|
|
370
|
+
> ```
|
|
371
|
+
>
|
|
372
|
+
> Now watch the **Map**. Nothing happens: no arrow moves, no red marker. Back in
|
|
373
|
+
> the `broken-ref` chapter, breaking a link between your `.md` files lit up the
|
|
374
|
+
> graph the instant you saved. This break is invisible to it, and that is
|
|
375
|
+
> correct: skill-map maps your **harness** (the `.md` files, Layer 1), not the
|
|
376
|
+
> HTML pages it produces (Layer 2, your `public/` folder, which is even in
|
|
377
|
+
> `.skillmapignore`). A broken link inside your actual site never shows on the
|
|
378
|
+
> graph. The one thing that catches it is your `check-links` skill, which is
|
|
379
|
+
> exactly what `/publish` runs as its first step.
|
|
380
|
+
>
|
|
381
|
+
> Saved the typo, and the Map stayed unchanged?
|
|
382
|
+
|
|
383
|
+
Wait for confirmation. The Map MUST stay unchanged; if a marker appeared they
|
|
384
|
+
edited a `.md` by mistake, point them back at `public/index.html`.
|
|
385
|
+
|
|
386
|
+
**Beat 2, run /publish for real.** Tell the tester:
|
|
387
|
+
|
|
388
|
+
> Now ship it. Tell me to publish (or type `/publish`) and I'll run your publish
|
|
389
|
+
> command for real, exactly as written. (You can read the command anytime by
|
|
390
|
+
> clicking the `publish` node on the Map, then opening its **Body** section.)
|
|
349
391
|
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
392
|
+
When the tester asks to publish, **execute the publish flow for real** by
|
|
393
|
+
following `.claude/commands/publish.md`: run the `check-links` logic over every
|
|
394
|
+
`.html` under `public/` (does each internal `href` resolve to a file that
|
|
395
|
+
exists?), which now finds the planted typo; per step 2, brief the
|
|
396
|
+
`content-editor` to fix it (point the link back at `/about.html`), re-run the
|
|
397
|
+
check until it is clean, then walk the deploy runbook. Do not role-play it;
|
|
398
|
+
`Read` `public/index.html` before and after the fix so the report is honest.
|
|
356
399
|
|
|
357
|
-
After running the flow, report what actually happened
|
|
358
|
-
conditional on the real result):
|
|
400
|
+
After running the flow, report what actually happened:
|
|
359
401
|
|
|
360
402
|
> Here is what just ran, for real:
|
|
361
403
|
>
|
|
362
404
|
> - **check-links** walked every page under `public/` and followed each internal
|
|
363
|
-
> link.
|
|
364
|
-
>
|
|
365
|
-
>
|
|
405
|
+
> link. It caught **1 broken link**: `/abuot.html` on `index.html`, the typo
|
|
406
|
+
> you planted. The graph never flagged it, but the skill did, because the skill
|
|
407
|
+
> reads your real pages.
|
|
408
|
+
> - **step 2 kicked in**: I briefed your `content-editor` to fix it. It pointed
|
|
409
|
+
> the link back at `/about.html`, and a re-run of **check-links** came back
|
|
410
|
+
> clean: 0 broken links.
|
|
366
411
|
> - the **deploy runbook** (`docs/DEPLOYMENT.md`) lists the ship steps:
|
|
367
|
-
> regenerate the pages (done), run the link check (done), start the
|
|
368
|
-
> (next chapter).
|
|
412
|
+
> regenerate the pages (done), run the link check (done, now clean), start the
|
|
413
|
+
> server (next chapter).
|
|
369
414
|
>
|
|
370
|
-
>
|
|
371
|
-
>
|
|
372
|
-
> Shall we continue?
|
|
415
|
+
> That is the whole point of the harness: you broke the site, the graph stayed
|
|
416
|
+
> quiet because the HTML is its output and not its map, and your own publish
|
|
417
|
+
> command caught the break and fixed it before it shipped. Shall we continue?
|
|
373
418
|
|
|
374
|
-
Wait for confirmation.
|
|
419
|
+
Wait for confirmation. The site MUST be clean again (the typo fixed) before
|
|
420
|
+
`golive`. Mark `publish`: done. Auto-advance to `stability`.
|
|
375
421
|
|
|
376
422
|
## Chapter `stability` - Set a node's stability (and the `.sm` sidecar) (~3 min)
|
|
377
423
|
|
|
@@ -5,7 +5,7 @@ The live-UI prologue: the tester runs `sm init`, opens the browser, and watches
|
|
|
5
5
|
**Codex deltas (rich track).** When `tutorial.provider == codex` the lay commands are unchanged (the `--only` ids match the Codex overlay), but the on-disk shapes differ; substitute in the tester-facing prose:
|
|
6
6
|
|
|
7
7
|
- `init`: the boot node `demo-agent` is a **TOML agent** at `.codex/agents/demo-agent.toml`.
|
|
8
|
-
- `kinds`: the node list reads `.codex/agents/demo-agent.toml` (agent), `.agents/skills/demo-command/SKILL.md` (
|
|
8
|
+
- `kinds`: the node list reads `.codex/agents/demo-agent.toml` (agent), `.agents/skills/demo-command/SKILL.md` (skill), `.agents/skills/demo-skill/SKILL.md` (skill), and the `notes/*.md`. Name the kinds as agent + skill + markdown (two new kinds this step: skill + markdown). Present `demo-command` as a plain skill: do NOT tell the tester it "is a command" or narrate any command-to-skill substitution. Codex has no `command` kind, so on this track `demo-command` is simply one of the two skills, nothing to explain.
|
|
9
9
|
- `first-edit`: the description to edit lives in `.codex/agents/demo-agent.toml` (the `description = "…"` TOML field, not YAML frontmatter).
|
|
10
10
|
- `connectors` onward: identical, the `@`/`/` bullets resolve the same on Codex; only the `ignore` chapter's directory tree shows `.codex/agents/` + `.agents/skills/` instead of `.claude/`.
|
|
11
11
|
|
|
@@ -177,7 +177,7 @@ The canvas only draws the resolved arrows; the full per-link breakdown, includin
|
|
|
177
177
|
> confidence: the numeric value. Here you'll see the contrast, the
|
|
178
178
|
> `references` to `demo-guideline2` reads `1.00` (resolved), while the
|
|
179
179
|
> `mentions` to `demo-guideline` reads `0.50` and is marked broken,
|
|
180
|
-
> that 0.5 is the broken-reference penalty,
|
|
180
|
+
> that 0.5 is the broken-reference penalty, it's a "half sure".
|
|
181
181
|
>
|
|
182
182
|
> Now open the Inspector for a couple of the nodes to read their
|
|
183
183
|
> Incoming count. The four resolved nodes (`demo-agent`,
|
|
@@ -313,7 +313,7 @@ Give the tester a mental map of the folder so they know where the file lives, th
|
|
|
313
313
|
│ └── skills/
|
|
314
314
|
│ ├── demo-skill/SKILL.md
|
|
315
315
|
│ └── sm-tutorial/SKILL.md ← the tutorial you loaded
|
|
316
|
-
├── .skill-map/ ← project DB + settings
|
|
316
|
+
├── .skill-map/ ← project DB + settings
|
|
317
317
|
├── .skillmapignore ← the file we're about to edit
|
|
318
318
|
└── notes/
|
|
319
319
|
├── todo.md
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Part
|
|
1
|
+
# Part 4 (b): Extend skill-map - plugins (step library, `tour-*` ids)
|
|
2
2
|
|
|
3
3
|
Guided tour of the **built-in plugins** that ship with `sm`. Three
|
|
4
4
|
steps: a quick mental model of what plugins are plus a peek at
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Part 1: The
|
|
1
|
+
# Part 1: The harness from zero (step library, `kickoff-*` ids)
|
|
2
2
|
|
|
3
3
|
The campaign turns real here. After the abstract prologue, the tester
|
|
4
4
|
starts an actual project: a tiny personal **portfolio website**,
|
|
@@ -38,7 +38,7 @@ The chapters grow the harness from there.
|
|
|
38
38
|
no `command`. Lay only `docs/DEPLOY.md` here (STYLE landed in `first-agent`),
|
|
39
39
|
and name the kinds as agent + skill + markdown (the skill + the publish piece
|
|
40
40
|
arrive later in this part as skills).
|
|
41
|
-
- `publish`: Codex has no `command` kind, so the tester creates a **skill** at `.agents/skills/publish/SKILL.md` instead of `.claude/commands/publish.md`. The body is the Codex one (same `/check-links` + `@content-editor` + deploy reference); fetch it with `fixtures.js cat harness --file "__PROVIDER__/skills/publish/SKILL.md" --provider codex --lang <lang>`. Tell the tester they are creating a `skill` (one node, three connectors
|
|
41
|
+
- `publish`: Codex has no `command` kind, so the tester creates a **skill** at `.agents/skills/publish/SKILL.md` instead of `.claude/commands/publish.md`. The body is the Codex one (same `/check-links` + `@content-editor` + deploy reference); fetch it with `fixtures.js cat harness --file "__PROVIDER__/skills/publish/SKILL.md" --provider codex --lang <lang>`. Tell the tester they are creating a `skill` (one node, three connectors); present it plainly as a skill, with no mention of a command or a substitution (per _core.md §Rendering the rich book on Codex, silent substitution). The fixture lays no `publish` for codex in this chapter (the tester authors it), so the `cat` is the source.
|
|
42
42
|
- `links`: the `content-editor-style` reference is baked into the Codex content-editor's TOML (`developer_instructions`) at lay time, so the `edit content-editor-style` step is a no-op on Codex, the `content-editor -> docs/STYLE.md` arrow is already drawn from earlier in this part. Run only `edit agents-hub` and narrate the two `AGENTS.md` arrows; mention the style-guide arrow as already present.
|
|
43
43
|
|
|
44
44
|
## Chapter `kickoff` - Start the portfolio (~2 min)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# Part
|
|
1
|
+
# Part 4 (a): Extend skill-map - settings (step library, `settings-*` ids)
|
|
2
2
|
|
|
3
|
-
Step bodies for the settings chapters of Part
|
|
3
|
+
Step bodies for the settings chapters of Part 4 (config layers, the
|
|
4
4
|
`sm config` verbs, the active provider lens). The SKILL.md
|
|
5
5
|
orchestrator dispatches each `settings-*` chapter id here;
|
|
6
6
|
`authoring-*` ids it dispatches to `part-authoring.md`.
|