@skill-map/cli 0.36.0 → 0.38.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/SKILL.md +100 -13
- package/dist/cli.js +2684 -988
- package/dist/cli.js.map +1 -1
- package/dist/conformance/index.d.ts +4 -4
- package/dist/conformance/index.js +48 -2
- package/dist/conformance/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +256 -25
- package/dist/index.js.map +1 -1
- package/dist/kernel/index.d.ts +232 -17
- package/dist/kernel/index.js +256 -25
- package/dist/kernel/index.js.map +1 -1
- package/dist/migrations/001_initial.sql +26 -0
- package/dist/ui/chunk-47MG5XH2.js +317 -0
- package/dist/ui/{chunk-YZ7KCL3G.js → chunk-4CDTW64C.js} +1 -1
- package/dist/ui/chunk-4XEJUDPL.js +123 -0
- package/dist/ui/{chunk-2QZDJSJN.js → chunk-5AZ5S6JB.js} +1 -1
- package/dist/ui/{chunk-TKV6TXTI.js → chunk-AAR3Y55J.js} +3 -3
- package/dist/ui/chunk-CR3AANNX.js +3 -0
- package/dist/ui/{chunk-UMCC32EJ.js → chunk-G5CKBDBB.js} +1 -1
- package/dist/ui/{chunk-5CFY2K3Y.js → chunk-KKOZFBXQ.js} +1 -1
- package/dist/ui/{chunk-UK5YFHL3.js → chunk-NTM2J2WO.js} +5 -5
- package/dist/ui/{chunk-LTQTJU54.js → chunk-O5N7UH37.js} +13 -13
- package/dist/ui/{chunk-FQOZBFJ5.js → chunk-QZM2G474.js} +2 -2
- package/dist/ui/chunk-Z4LANJFK.js +1 -0
- package/dist/ui/index.html +6 -9
- package/dist/ui/main-EO5QNLE4.js +2 -0
- package/migrations/001_initial.sql +26 -0
- package/package.json +4 -4
- package/dist/ui/chunk-5JBW2LUN.js +0 -2
- package/dist/ui/chunk-GQ5YNA5Q.js +0 -123
- package/dist/ui/chunk-KJQEO6P3.js +0 -1
- package/dist/ui/chunk-L3OLNVKI.js +0 -317
- package/dist/ui/main-MGFSWAOX.js +0 -2
|
@@ -540,6 +540,15 @@ sm-tutorial.md
|
|
|
540
540
|
findings.md
|
|
541
541
|
tutorial-state.yml
|
|
542
542
|
|
|
543
|
+
# sm-tutorial / sm-master skill installations. When the tester loaded
|
|
544
|
+
# the tutorial as a Claude Code (or agent-skills) project-local skill,
|
|
545
|
+
# its SKILL.md lives under the project's provider dir and would
|
|
546
|
+
# otherwise register as a phantom project node on the first scan.
|
|
547
|
+
.claude/skills/sm-tutorial/
|
|
548
|
+
.claude/skills/sm-master/
|
|
549
|
+
.agents/skills/sm-tutorial/
|
|
550
|
+
.agents/skills/sm-master/
|
|
551
|
+
|
|
543
552
|
# Tutorial outputs that may land at the root if a step forgets to
|
|
544
553
|
# clean up (sm export, sm db dump).
|
|
545
554
|
export.*
|
|
@@ -917,9 +926,16 @@ Wait for confirmation. You MAY use `Read` on the file afterwards
|
|
|
917
926
|
to verify the change landed (read-only, allowed under Inviolable
|
|
918
927
|
rule #1) before moving on. Mark `4-live-edit: done`.
|
|
919
928
|
|
|
920
|
-
### Step 5: Live UI: the connectors light up (~
|
|
929
|
+
### Step 5: Live UI: the connectors light up (~2 min)
|
|
930
|
+
|
|
931
|
+
Two beats. Beat 1 wires up the connectors (the arrows and their
|
|
932
|
+
kinds). Beat 2 calls out the per-node ↑/↓ chips that the same hub
|
|
933
|
+
edit lit up on every card. Each beat gets its own confirm so the
|
|
934
|
+
tester slows down on each surface instead of conflating them.
|
|
921
935
|
|
|
922
|
-
|
|
936
|
+
**Beat 1, connectors (the arrows themselves).**
|
|
937
|
+
|
|
938
|
+
You edit `notes/todo.md` so it becomes the **hub** that points
|
|
923
939
|
to each of the other four nodes. Each bullet uses a syntax that
|
|
924
940
|
maps to a specific **link kind**:
|
|
925
941
|
|
|
@@ -967,18 +983,42 @@ Tell the tester:
|
|
|
967
983
|
>
|
|
968
984
|
> Fijate también que los conectores tienen distinta transparencia.
|
|
969
985
|
> Skill-map estima qué tan seguro está de cada conexión: un
|
|
970
|
-
> `[text](file.md)` que apunta a un archivo concreto (
|
|
971
|
-
> confianza) se ve sólido, mientras que
|
|
972
|
-
>
|
|
973
|
-
>
|
|
974
|
-
> la inferencia
|
|
986
|
+
> `[text](file.md)` que apunta a un archivo concreto (1.00 de
|
|
987
|
+
> confianza, ahora que el target existe) se ve sólido, mientras que
|
|
988
|
+
> un `@handle` que no resuelve a ningún nodo se queda en 0.5
|
|
989
|
+
> (ambiguo) y se ve translúcido. La opacidad cuenta esa historia de
|
|
990
|
+
> un vistazo: cuanto más sólido, más confiable es la inferencia, y
|
|
991
|
+
> el badge numérico arriba del conector lo dice explícito.
|
|
975
992
|
>
|
|
976
993
|
> Confirm. If a connector is missing, refresh the browser and tell
|
|
977
994
|
> me.
|
|
978
995
|
|
|
979
|
-
Wait for confirmation
|
|
980
|
-
|
|
981
|
-
|
|
996
|
+
Wait for confirmation of the connectors before moving on to Beat 2.
|
|
997
|
+
If a connector is missing, do not advance, the chips below depend
|
|
998
|
+
on the same hub edit having landed.
|
|
999
|
+
|
|
1000
|
+
**Beat 2, the ↑/↓ chips on every card.**
|
|
1001
|
+
|
|
1002
|
+
The same edit also lit up a per-node link counter on each card.
|
|
1003
|
+
Call it out explicitly so the tester registers the surface before
|
|
1004
|
+
Step 6 changes topology, easier to notice the chips going up and
|
|
1005
|
+
down later if they saw the baseline now.
|
|
1006
|
+
|
|
1007
|
+
> 🆕 Mirá también las cards de los nodos: ahora cada nodo muestra
|
|
1008
|
+
> dos pequeñas chips abajo a la izquierda, ↑ y ↓, que cuentan los
|
|
1009
|
+
> links entrantes y salientes. `notes/todo` ahora marca 0↑ / 4↓
|
|
1010
|
+
> (es el hub que apunta a cuatro nodos), y los cuatro nodos
|
|
1011
|
+
> apuntados muestran 1↑ cada uno. Pasale el mouse a una chip y se
|
|
1012
|
+
> abre un tooltip con el desglose por kind (`mentions`, `invokes`,
|
|
1013
|
+
> `references`). Es la misma info que el grafo, resumida en la
|
|
1014
|
+
> card por si trabajás desde la list view.
|
|
1015
|
+
>
|
|
1016
|
+
> Confirm cuando las veas en las cinco cards.
|
|
1017
|
+
|
|
1018
|
+
Wait for confirmation. **Do NOT move on to Step 6** until both
|
|
1019
|
+
beats are confirmed, Step 6 reuses the same live UI session and
|
|
1020
|
+
the chip counts are the baseline the tester will watch change
|
|
1021
|
+
when the private node disappears. Mark `5-live-connectors: done`.
|
|
982
1022
|
|
|
983
1023
|
### Step 6: Live UI: silence a private file via `.skillmapignore` (~2 min)
|
|
984
1024
|
|
|
@@ -1112,9 +1152,23 @@ Mark `6-live-ignore: done`.
|
|
|
1112
1152
|
> persistido y rearma el grafo desde cero bajo el nuevo lente, así
|
|
1113
1153
|
> que sirve cuando tu proyecto migra de runtime. Por default
|
|
1114
1154
|
> skill-map autodetecta el lente correcto al primer scan (en este
|
|
1115
|
-
> caso, `claude` porque hay `.claude/`)
|
|
1116
|
-
>
|
|
1117
|
-
>
|
|
1155
|
+
> caso, `claude` porque hay `.claude/`); si tu repo tiene markers
|
|
1156
|
+
> ambiguos (`.claude/` + `.codex/` al mismo tiempo) `sm scan` te
|
|
1157
|
+
> pregunta cuál usar, o aborta con exit 2 si pasás `--yes` y todavía
|
|
1158
|
+
> está ambiguo. El lente `antigravity` no se auto-detecta (Google
|
|
1159
|
+
> adoptó el open standard sin marker propio); seleccionarlo es
|
|
1160
|
+
> manual.
|
|
1161
|
+
>
|
|
1162
|
+
> 🛡️ **Red de seguridad**: si en algún momento desactivás el bundle
|
|
1163
|
+
> al que apunta el lente activo (por ejemplo `sm plugins disable
|
|
1164
|
+
> claude` con `activeProvider: claude`), el próximo `sm scan` te
|
|
1165
|
+
> avisa con un warning explícito ("the active lens points at a
|
|
1166
|
+
> disabled bundle") y te ofrece los dos arreglos: reactivar el
|
|
1167
|
+
> bundle o cambiar el lente. Lo mismo si la DB local quedó vieja
|
|
1168
|
+
> respecto del binario, el open de SQLite detecta el skew de
|
|
1169
|
+
> versiones y te dice qué correr para refrescarla. Tip: si ves uno
|
|
1170
|
+
> de esos warnings durante el tutorial, NO los ignores, son la
|
|
1171
|
+
> señal de que el grafo no refleja lo que vos esperás.
|
|
1118
1172
|
>
|
|
1119
1173
|
> If you want, **we can keep going deeper**: I'll walk you through
|
|
1120
1174
|
> the CLI verbs and flags (`list`, `graph`, `export`, `orphans`,
|
|
@@ -1234,6 +1288,17 @@ We'll plant one and watch it surface, that's the easiest way to
|
|
|
1234
1288
|
internalise that it is an **issue** on a node, NOT a graph
|
|
1235
1289
|
connector and NOT the same thing as an "orphan".
|
|
1236
1290
|
|
|
1291
|
+
> ℹ️ `broken-ref` is one of ~16 built-in rules. Others surface
|
|
1292
|
+
> different families: `core/reserved-name` (a file shadows a vendor
|
|
1293
|
+
> built-in like `/help`), `core/self-loop` (a node links to itself),
|
|
1294
|
+
> `core/redundant-target-reference` (two surfaces in the same body
|
|
1295
|
+
> point at the same target), `core/signal-collision` (two extractors
|
|
1296
|
+
> detected the SAME byte range with different interpretations, the
|
|
1297
|
+
> resolver picked one and the warning explains who lost and why).
|
|
1298
|
+
> Same `sm check --analyzers <id>` pattern works for any of them.
|
|
1299
|
+
> We will not plant fixtures for the rest, the broken-ref demo
|
|
1300
|
+
> covers the mechanics.
|
|
1301
|
+
|
|
1237
1302
|
Ask the tester to **append one bullet** to `notes/todo.md`:
|
|
1238
1303
|
|
|
1239
1304
|
```markdown
|
|
@@ -1405,6 +1470,28 @@ the id to `disable` / `enable`. Per-extension toggles only work on
|
|
|
1405
1470
|
extension-granularity bundles like `core`; the `claude` bundle is
|
|
1406
1471
|
bundle-granularity and only accepts the bundle id.
|
|
1407
1472
|
|
|
1473
|
+
**Multiple ids in one call**: both verbs accept any number of ids
|
|
1474
|
+
in a single invocation, e.g. `sm plugins disable antigravity openai
|
|
1475
|
+
agent-skills` or `sm plugins enable claude core/external-url-counter`.
|
|
1476
|
+
Batches are all-or-nothing: if any id is unknown or
|
|
1477
|
+
granularity-mismatched the entire call aborts before any
|
|
1478
|
+
`config_plugins` write, so the user never lands in a partial state.
|
|
1479
|
+
Repeated ids are deduped; locked plugins inside a batch are
|
|
1480
|
+
silently skipped (matching `--all` semantics).
|
|
1481
|
+
|
|
1482
|
+
### Reserved names (e.g. `commands/help.md`)
|
|
1483
|
+
|
|
1484
|
+
If the tester ever names a file after a built-in (`/help`,
|
|
1485
|
+
`/clear`, `/init`, `/agents`, `/model`, or one of the documented
|
|
1486
|
+
agent reservations like `general-purpose`), `sm check` surfaces a
|
|
1487
|
+
`reserved-name` warning. The vendor runtime ignores user-owned
|
|
1488
|
+
files that shadow its built-ins, so the warning is not a bug,
|
|
1489
|
+
it's skill-map telling the operator "Claude will never invoke this
|
|
1490
|
+
file; pick another name". Incoming links to the shadowed file
|
|
1491
|
+
resolve at confidence `0.1` instead of `1.0`, so the graph also
|
|
1492
|
+
visually de-emphasises them. Rename the file and the warning
|
|
1493
|
+
clears on the next scan.
|
|
1494
|
+
|
|
1408
1495
|
### `sm sidecar annotate` vs `sm bump` vs `sm sidecar refresh`
|
|
1409
1496
|
|
|
1410
1497
|
- `sm sidecar annotate` is the scaffold verb (creates a fresh
|