@skill-map/cli 0.61.4 → 0.61.5

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.
@@ -18,4 +18,4 @@ Turns a short brief into a finished portfolio page.
18
18
  4. Use one `<h1>`, group sections under `<h2>`, and reuse the shared header, nav, and footer so every page matches.
19
19
  5. Add a link back to Home, and link the new page from the home nav.
20
20
 
21
- Rules: plain static HTML, no framework, no client JS, one page per file.
21
+ Rules: plain static HTML, no framework, no client JS, one page per file. If a page needs an image, use a free placeholder from https://placekittens.com/ (e.g. `https://placekittens.com/400/300`) so the `<img>` never points at a missing file.
@@ -18,4 +18,4 @@ Convierte un brief corto en una página de portfolio terminada.
18
18
  4. Usa un solo `<h1>`, agrupa las secciones bajo `<h2>` y reutiliza el header, la nav y el footer compartidos para que todas las páginas coincidan.
19
19
  5. Agrega un enlace de vuelta a Home, y enlaza la nueva página desde la nav de inicio.
20
20
 
21
- Reglas: HTML estático plano, sin framework, sin JS de cliente, una página por archivo.
21
+ Reglas: HTML estático plano, sin framework, sin JS de cliente, una página por archivo. Si una página necesita una imagen, usa un placeholder gratuito de https://placekittens.com/ (por ejemplo `https://placekittens.com/400/300`) para que el `<img>` nunca apunte a un archivo inexistente.
@@ -128,13 +128,8 @@
128
128
  "chapters": [
129
129
  {
130
130
  "id": "setup",
131
- "title": "Make it yours, make it presentable",
132
- "est_min": 3
133
- },
134
- {
135
- "id": "preview",
136
- "title": "Bring it up and see your site",
137
- "est_min": 2
131
+ "title": "Make it yours and bring it up",
132
+ "est_min": 5
138
133
  },
139
134
  {
140
135
  "id": "add-page",
@@ -143,8 +143,7 @@ parts:
143
143
  fixture: portfolio # reuses the wired harness; lays the pretty site (style.css + pages) as taught steps
144
144
  status: active
145
145
  chapters:
146
- - id: setup ; title: "Make it yours, make it presentable" ; est_min: 3
147
- - id: preview ; title: "Bring it up and see your site" ; est_min: 2
146
+ - id: setup ; title: "Make it yours and bring it up" ; est_min: 5
148
147
  - id: add-page ; title: "Add a page with your agent" ; est_min: 4
149
148
  - id: broken-ref ; title: "A rename breaks a link" ; est_min: 4
150
149
  - id: reserved ; title: "A reserved name collides" ; est_min: 2
@@ -162,6 +162,12 @@ Tell the tester:
162
162
  > daily-loop part. The opacity on the canvas is just that number drawn
163
163
  > as transparency.
164
164
  >
165
+ > **Note:** why does confidence matter? It mirrors how the runtime itself
166
+ > resolves a reference: a deterministic name-and-path lookup, no guessing
167
+ > and no scanning the tree for a file under some other extension. That is
168
+ > cheaper and it does not fail, so the agent spends fewer tokens and less
169
+ > time, the same reason a clean, well-named harness is worth keeping.
170
+ >
165
171
  > Do you see every badge reading 1.00 in the Inspector?
166
172
 
167
173
  Wait for confirmation. Mark `confidence`: done. Last chapter of the part: apply §Closing a part (the close names the part by its title and routes back to the menu; do NOT lead into the next part from here).
@@ -45,14 +45,16 @@ broken-reference markers, and confidence live.
45
45
 
46
46
  **Act A - Add**
47
47
 
48
- ## Chapter `setup` - Make it yours, make it presentable (~3 min)
48
+ ## Chapter `setup` - Make it yours and bring it up (~5 min)
49
49
 
50
50
  **Context**: the harness is wired (you built it in the earlier parts). Now you
51
51
  put it to work on a real day. First, make the site yours and give it a look you
52
- would not be embarrassed to share. The honest beat: the HTML and CSS are
53
- Layer 2 (the harness's output); skill-map maps the harness (Layer 1, the `.md`
54
- files), so the site landing on disk does NOT move the graph, and that is
55
- correct, not a bug.
52
+ would not be embarrassed to share, then serve it and open it in the browser, the
53
+ early payoff before the daily loop fills it with pages. The honest beat: the HTML
54
+ and CSS are Layer 2 (the harness's output); skill-map maps the harness (Layer 1,
55
+ the `.md` files), so the site landing on disk does NOT move the graph, and that
56
+ is correct, not a bug. The tester runs the serve commands themselves (one of the
57
+ few non-`sm` beats); guide them, do not run them.
56
58
 
57
59
  **Preparation**:
58
60
 
@@ -169,31 +171,25 @@ footer.site { border-top: 1px solid var(--border); padding: 2rem 0; color: var(-
169
171
  </html>
170
172
  ```
171
173
 
172
- Tell the tester the face is on (no serving yet, that is the next chapter):
173
-
174
- > I gave your site a face: a shared stylesheet plus a styled **Home** and
175
- > **About** page, named after you. These are Layer 2 (the harness's output), so
176
- > the **Map** did not move, and that is correct: skill-map maps the harness (the
177
- > `.md` files, Layer 1), not the HTML it produces. Next we bring it up so you
178
- > can see it.
179
-
180
- Mark `setup`: done. Auto-advance to `preview`.
181
-
182
- ## Chapter `preview` - Bring it up and see your site (~2 min)
183
-
184
- **Context**: the first look. The site is styled but the tester has only seen it
185
- as files; now serve it and open it in the browser, the early payoff before the
186
- daily loop fills it with pages. The tester runs the commands themselves (one of
187
- the few non-`sm` beats); guide them, do not run them.
174
+ The site is styled now, so bring it up in the same beat (the tester runs the
175
+ serve commands themselves). `sm` is still running in their second terminal, so
176
+ the server needs a **third terminal** anchored to the same project folder:
188
177
 
189
178
  ```bash
190
179
  npm install
191
180
  node server.js
192
181
  ```
193
182
 
194
- > Bring your site up. `npm install` pulls the one small library the server needs
195
- > (Express, on the Node you already have), and `node server.js` starts it and
196
- > prints a line like `Listening on http://localhost:3000`.
183
+ > **Note:** I gave your site a face: a shared stylesheet plus a styled **Home**
184
+ > and **About** page, named after you. These are Layer 2 (the harness's output),
185
+ > so the **Map** did not move, and that is correct: skill-map maps the harness
186
+ > (the `.md` files, Layer 1), not the HTML it produces.
187
+ >
188
+ > Now bring your site up. `sm` is still running in your second terminal, so open
189
+ > a **third terminal** in this same project folder and run the two commands
190
+ > there. `npm install` pulls the one small library the server needs (Express, on
191
+ > the Node you already have), and `node server.js` starts it and prints a line
192
+ > like `Listening on http://localhost:3000`.
197
193
  >
198
194
  > Open `http://localhost:3000`: there is your site, named after you, with a
199
195
  > clean layout. Click **About** and back to **Home**.
@@ -209,7 +205,7 @@ node server.js
209
205
  Wait for confirmation. If `node server.js` reports `Cannot find module
210
206
  'express'`, `npm install` did not run first, run it (it reads `package.json` and
211
207
  pulls Express), then retry; if `npm install` itself fails, check they are in the
212
- project root and Node is on PATH. Mark `preview`: done. Auto-advance to
208
+ project root and Node is on PATH. Mark `setup`: done. Auto-advance to
213
209
  `add-page`.
214
210
 
215
211
  ## Chapter `add-page` - Add a page with your agent (~4 min)
@@ -335,10 +331,11 @@ The watcher picks up the new command. Tell the tester:
335
331
  > `/help`, `/clear`, `/config`), so the runtime would silently ignore your file,
336
332
  > it never runs. The fix is a name the runtime does not own.
337
333
  >
338
- > Rename it to `new-page`: rename the file `.claude/commands/init.md` to
339
- > `.claude/commands/new-page.md`, AND change `frontmatter.name` to `new-page`
340
- > and the H1 to `# new-page` (a command's H1 stays a plain title, never
341
- > `# /new-page`). Save.
334
+ > Rename it to `new-page`: first rename the file `.claude/commands/init.md` to
335
+ > `.claude/commands/new-page.md`. Then open it in your text editor / IDE and, at
336
+ > the top, where the frontmatter says `name: init`, change it to
337
+ > `name: new-page`; also change the H1 to `# new-page` (a command's H1 stays a
338
+ > plain title, never `# /new-page`). Save.
342
339
  >
343
340
  > Watch the **Map** again: the warning clears and the node is now `new-page`,
344
341
  > all live. Notice what cleared it: changing the **name** (`frontmatter.name`),
@@ -396,7 +393,9 @@ conditional on the real result):
396
393
  > And the Map did not move while the pipeline ran: the pages are Layer 2 output;
397
394
  > the harness on the canvas is Layer 1, and that is what skill-map maps.
398
395
  >
399
- > Did the publish run report the link check clean?
396
+ > As you saw in the lines just above, I did not report anything odd: the link
397
+ > check came back clean and `/publish` is wired correctly across your pages.
398
+ > Shall we continue?
400
399
 
401
400
  Wait for confirmation. Mark `publish`: done. Auto-advance to `stability`.
402
401
 
@@ -472,7 +471,14 @@ Wait for confirmation. The tester runs the commands; do not run them. If
472
471
  server with Ctrl+C and apply the ports edge case.
473
472
 
474
473
  This is the campaign finale. Congratulate them plainly: they went from an empty
475
- directory to a real, running portfolio plus a complete map of its harness. Mark
476
- `golive`: done. Last chapter of the part: apply §Closing a part (name the part
477
- by its title); since this closes the campaign spine, if every active part is now
478
- done route to the §Final wrap-up instead of the menu.
474
+ directory to a real, running portfolio plus a complete map of its harness. Then
475
+ invite them to keep going on their own:
476
+
477
+ > And this site is yours to keep playing with: add more pages, refine the style
478
+ > guide, wire a new command, then watch the map react. Creating and maintaining a
479
+ > small site like this, by hand, is the best practice there is for getting a feel
480
+ > for how to build a harness.
481
+
482
+ Mark `golive`: done. Last chapter of the part: apply §Closing a part (name the
483
+ part by its title); since this closes the campaign spine, if every active part is
484
+ now done route to the §Final wrap-up instead of the menu.
package/dist/cli.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // cli/entry.ts
2
2
 
3
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="d6e5d903-0942-5718-94b3-53a96de15b21")}catch(e){}}();
3
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="971924c5-3da8-5670-8c42-6f13b41acfa0")}catch(e){}}();
4
4
  import { existsSync as existsSync33 } from "fs";
5
5
  import { Builtins, Cli as Cli2 } from "clipanion";
6
6
 
@@ -250,7 +250,7 @@ function bucketByKind(kind, instance, bag) {
250
250
  // package.json
251
251
  var package_default = {
252
252
  name: "@skill-map/cli",
253
- version: "0.61.4",
253
+ version: "0.61.5",
254
254
  description: "skill-map reference implementation \u2014 kernel + CLI + adapters.",
255
255
  license: "MIT",
256
256
  type: "module",
@@ -31110,4 +31110,4 @@ function resolveBareDefault() {
31110
31110
  process.exit(ExitCode.Error);
31111
31111
  }
31112
31112
  //# sourceMappingURL=cli.js.map
31113
- //# debugId=d6e5d903-0942-5718-94b3-53a96de15b21
31113
+ //# debugId=971924c5-3da8-5670-8c42-6f13b41acfa0
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // kernel/i18n/registry.texts.ts
2
2
 
3
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ff44c503-9fc8-5d12-a12c-7d02344be603")}catch(e){}}();
3
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="b1dadbaf-2a39-57c7-80df-bbba973403c5")}catch(e){}}();
4
4
  var REGISTRY_TEXTS = {
5
5
  duplicateExtension: "Extension already registered: {{kind}}:{{qualifiedId}}",
6
6
  unknownKind: "Unknown extension kind: {{kind}}",
@@ -102,7 +102,7 @@ import { Tiktoken as Tiktoken2 } from "js-tiktoken/lite";
102
102
  // package.json
103
103
  var package_default = {
104
104
  name: "@skill-map/cli",
105
- version: "0.61.4",
105
+ version: "0.61.5",
106
106
  description: "skill-map reference implementation \u2014 kernel + CLI + adapters.",
107
107
  license: "MIT",
108
108
  type: "module",
@@ -3851,4 +3851,4 @@ export {
3851
3851
  runScanWithRenames
3852
3852
  };
3853
3853
  //# sourceMappingURL=index.js.map
3854
- //# debugId=ff44c503-9fc8-5d12-a12c-7d02344be603
3854
+ //# debugId=b1dadbaf-2a39-57c7-80df-bbba973403c5
@@ -1,6 +1,6 @@
1
1
  // kernel/i18n/registry.texts.ts
2
2
 
3
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6c0e0b1c-ef76-52e7-a1d9-09240ef98ada")}catch(e){}}();
3
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5077263a-bf07-58af-b37d-ea6ab8f9a27c")}catch(e){}}();
4
4
  var REGISTRY_TEXTS = {
5
5
  duplicateExtension: "Extension already registered: {{kind}}:{{qualifiedId}}",
6
6
  unknownKind: "Unknown extension kind: {{kind}}",
@@ -102,7 +102,7 @@ import { Tiktoken as Tiktoken2 } from "js-tiktoken/lite";
102
102
  // package.json
103
103
  var package_default = {
104
104
  name: "@skill-map/cli",
105
- version: "0.61.4",
105
+ version: "0.61.5",
106
106
  description: "skill-map reference implementation \u2014 kernel + CLI + adapters.",
107
107
  license: "MIT",
108
108
  type: "module",
@@ -3851,4 +3851,4 @@ export {
3851
3851
  runScanWithRenames
3852
3852
  };
3853
3853
  //# sourceMappingURL=index.js.map
3854
- //# debugId=6c0e0b1c-ef76-52e7-a1d9-09240ef98ada
3854
+ //# debugId=5077263a-bf07-58af-b37d-ea6ab8f9a27c