@launchsecure/launch-kit 0.0.30 → 0.0.32
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/beacon/beacon.mjs +1027 -929
- package/dist/beacon/beacon.mjs.map +1 -1
- package/dist/beacon/beacon.umd.js +9 -9
- package/dist/beacon/beacon.umd.js.map +1 -1
- package/dist/beacon/types/internal/pick-mode-overlay.d.ts.map +1 -1
- package/dist/beacon/types/internal/picker.d.ts.map +1 -1
- package/dist/beacon/types/internal/pin-popover.d.ts.map +1 -1
- package/dist/beacon/types/internal/screenshot.d.ts +19 -1
- package/dist/beacon/types/internal/screenshot.d.ts.map +1 -1
- package/dist/beacon/types/internal/selector.d.ts.map +1 -1
- package/dist/beacon/types/plugins/domEle.d.ts.map +1 -1
- package/dist/chart-client/assets/{index-CJ4mgRRF.css → index-CDIhdgWg.css} +1 -1
- package/dist/chart-client/index.html +2 -2
- package/dist/client/assets/{index-DI5qSR_w.css → index-CfW4n40I.css} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/council-client/assets/{index-C_-vAM9L.css → index-CZim6x1u.css} +1 -1
- package/dist/council-client/index.html +2 -2
- package/dist/deck-client/assets/{_baseUniq-DCt2IMRR.js → _baseUniq-C7GsHvgg.js} +1 -1
- package/dist/deck-client/assets/{arc-h-ifqmNR.js → arc-CSrZRINY.js} +1 -1
- package/dist/deck-client/assets/{architectureDiagram-Q4EWVU46-C9dITSPv.js → architectureDiagram-Q4EWVU46-zoB-G17J.js} +1 -1
- package/dist/deck-client/assets/{blockDiagram-DXYQGD6D-BHuJT34t.js → blockDiagram-DXYQGD6D-BRjjtYH6.js} +1 -1
- package/dist/deck-client/assets/{c4Diagram-AHTNJAMY-CpvMGtDG.js → c4Diagram-AHTNJAMY-C3D3sd2U.js} +1 -1
- package/dist/deck-client/assets/channel-8ReQnQfH.js +1 -0
- package/dist/deck-client/assets/{chunk-4BX2VUAB-B6md1VIm.js → chunk-4BX2VUAB-DhpDMOPO.js} +1 -1
- package/dist/deck-client/assets/{chunk-4TB4RGXK-BmEnX8ik.js → chunk-4TB4RGXK-BIRgPXRl.js} +1 -1
- package/dist/deck-client/assets/{chunk-55IACEB6-BZPUyZAZ.js → chunk-55IACEB6-BF24dwDZ.js} +1 -1
- package/dist/deck-client/assets/{chunk-EDXVE4YY-BWwNUK-l.js → chunk-EDXVE4YY-CW75Y61B.js} +1 -1
- package/dist/deck-client/assets/{chunk-FMBD7UC4-o7gSppGI.js → chunk-FMBD7UC4-B5-oyL79.js} +1 -1
- package/dist/deck-client/assets/{chunk-OYMX7WX6-C4KoTL5p.js → chunk-OYMX7WX6-BB2bHe_Q.js} +1 -1
- package/dist/deck-client/assets/{chunk-QZHKN3VN-jkf68sDs.js → chunk-QZHKN3VN-D80eZO4B.js} +1 -1
- package/dist/deck-client/assets/{chunk-YZCP3GAM-Cd4yBE7o.js → chunk-YZCP3GAM-Dz9787p_.js} +1 -1
- package/dist/deck-client/assets/classDiagram-6PBFFD2Q-cRxTeGkK.js +1 -0
- package/dist/deck-client/assets/classDiagram-v2-HSJHXN6E-cRxTeGkK.js +1 -0
- package/dist/deck-client/assets/clone-LSHZ3K6R.js +1 -0
- package/dist/deck-client/assets/{cose-bilkent-S5V4N54A-DeGFUgAV.js → cose-bilkent-S5V4N54A-MQjiZLcL.js} +1 -1
- package/dist/deck-client/assets/{dagre-KV5264BT-ekcYJuUV.js → dagre-KV5264BT-DG4EcLpJ.js} +1 -1
- package/dist/deck-client/assets/{diagram-5BDNPKRD-YHPk4rV2.js → diagram-5BDNPKRD-1n7hM3Gc.js} +1 -1
- package/dist/deck-client/assets/{diagram-G4DWMVQ6-DM-JCd_B.js → diagram-G4DWMVQ6-CYMarncV.js} +1 -1
- package/dist/deck-client/assets/{diagram-MMDJMWI5-l5FK1ybk.js → diagram-MMDJMWI5-DSisoipe.js} +1 -1
- package/dist/deck-client/assets/{diagram-TYMM5635-CIN4_1-j.js → diagram-TYMM5635-Btnq49OJ.js} +1 -1
- package/dist/deck-client/assets/{erDiagram-SMLLAGMA-MyinSkEl.js → erDiagram-SMLLAGMA-Cu2Hb_Tz.js} +1 -1
- package/dist/deck-client/assets/{flowDiagram-DWJPFMVM-Dk8nn42x.js → flowDiagram-DWJPFMVM-CGJzUzsO.js} +1 -1
- package/dist/deck-client/assets/{ganttDiagram-T4ZO3ILL-BU1ihicu.js → ganttDiagram-T4ZO3ILL-D9sqGUBT.js} +1 -1
- package/dist/deck-client/assets/{gitGraphDiagram-UUTBAWPF-BjsTL13C.js → gitGraphDiagram-UUTBAWPF-C0QwX2od.js} +1 -1
- package/dist/deck-client/assets/{graph-DJmh-xi7.js → graph-CcBjOQCl.js} +1 -1
- package/dist/deck-client/assets/index-0arwoc0z.js +1195 -0
- package/dist/deck-client/assets/index-6sdqbm2o.js +2 -0
- package/dist/deck-client/assets/{index-DsIZ3LqL.css → index-BlTlhxFW.css} +1 -1
- package/dist/deck-client/assets/{infoDiagram-42DDH7IO-Dxvy_RB4.js → infoDiagram-42DDH7IO-DTimhhhS.js} +1 -1
- package/dist/deck-client/assets/{ishikawaDiagram-UXIWVN3A-DPOaNF1l.js → ishikawaDiagram-UXIWVN3A-DxOxg_B4.js} +1 -1
- package/dist/deck-client/assets/{journeyDiagram-VCZTEJTY-DMew3K5c.js → journeyDiagram-VCZTEJTY-Bpq0qa4j.js} +1 -1
- package/dist/deck-client/assets/{kanban-definition-6JOO6SKY-csciJFuk.js → kanban-definition-6JOO6SKY-aTIrpcVO.js} +1 -1
- package/dist/deck-client/assets/{layout-Dg4yyms2.js → layout-DqglLR2E.js} +1 -1
- package/dist/deck-client/assets/{linear-BA3zU6gq.js → linear-D5GxehPc.js} +1 -1
- package/dist/deck-client/assets/{min-lz-Ird-p.js → min-DXLfSREq.js} +1 -1
- package/dist/deck-client/assets/{mindmap-definition-QFDTVHPH-CCEN8OQV.js → mindmap-definition-QFDTVHPH-mO5Vys7I.js} +1 -1
- package/dist/deck-client/assets/{pieDiagram-DEJITSTG-DM6n1HY7.js → pieDiagram-DEJITSTG-Dm0gzdAr.js} +1 -1
- package/dist/deck-client/assets/{quadrantDiagram-34T5L4WZ-_ULoR66n.js → quadrantDiagram-34T5L4WZ-Daq7j3qD.js} +1 -1
- package/dist/deck-client/assets/{requirementDiagram-MS252O5E-BuwJs7Tn.js → requirementDiagram-MS252O5E-CmwV95um.js} +1 -1
- package/dist/deck-client/assets/{sankeyDiagram-XADWPNL6-BEsuzkW4.js → sankeyDiagram-XADWPNL6-BOYl3Nkf.js} +1 -1
- package/dist/deck-client/assets/{sequenceDiagram-FGHM5R23-CP2H0YWf.js → sequenceDiagram-FGHM5R23-BuUjhIcW.js} +1 -1
- package/dist/deck-client/assets/{stateDiagram-FHFEXIEX-B5Gw_NNL.js → stateDiagram-FHFEXIEX-LUZ_uwio.js} +1 -1
- package/dist/deck-client/assets/stateDiagram-v2-QKLJ7IA2-CnnRwE5D.js +1 -0
- package/dist/deck-client/assets/{timeline-definition-GMOUNBTQ-DsoYydQa.js → timeline-definition-GMOUNBTQ-CDUxCCAW.js} +1 -1
- package/dist/deck-client/assets/{vennDiagram-DHZGUBPP-Dz8JT_ob.js → vennDiagram-DHZGUBPP-BRb24Tf7.js} +1 -1
- package/dist/deck-client/assets/{wardley-RL74JXVD-DGHQ_Ijv.js → wardley-RL74JXVD-B0BYyVBY.js} +1 -1
- package/dist/deck-client/assets/{wardleyDiagram-NUSXRM2D-DN1LJMB1.js → wardleyDiagram-NUSXRM2D-BLGlYrQz.js} +1 -1
- package/dist/deck-client/assets/{xychartDiagram-5P7HB3ND-nb0oSfrQ.js → xychartDiagram-5P7HB3ND-De31MSnk.js} +1 -1
- package/dist/deck-client/index.html +2 -2
- package/dist/server/cli.js +666 -12
- package/dist/server/council-entry.js +0 -0
- package/dist/server/deck-mcp-entry.js +224 -61
- package/dist/server/deck-serve.js +195 -41
- package/dist/server/fb-wizard.js +0 -0
- package/dist/server/graph-mcp-entry.js +666 -12
- package/dist/server/init-entry.js +231 -82
- package/package.json +23 -21
- package/scaffolds/ls-marketplace/plugins/kit/skills/analyse/SKILL.md +180 -0
- package/scaffolds/ls-marketplace/plugins/kit/skills/{blast-radius.md → blast-radius/SKILL.md} +28 -12
- package/scaffolds/ls-marketplace/plugins/kit/skills/{debug.md → debug/SKILL.md} +2 -9
- package/scaffolds/ls-marketplace/plugins/kit/skills/diagram/SKILL.md +174 -0
- package/scaffolds/ls-marketplace/plugins/kit/skills/{prototype.md → prototype/SKILL.md} +21 -1
- package/scaffolds/ls-marketplace/plugins/kit/skills/recovery/SKILL.md +95 -0
- package/scaffolds/ls-marketplace/plugins/kit/skills/{wireframe.md → wireframe/SKILL.md} +21 -1
- package/scaffolds/migrate-safety/scripts/migrate-with-backup.sh +0 -0
- package/scaffolds/recall-hook/scripts/ensure-recall.sh +0 -0
- package/dist/deck-client/assets/channel-2PZVMiXf.js +0 -1
- package/dist/deck-client/assets/classDiagram-6PBFFD2Q-Bt8xBAof.js +0 -1
- package/dist/deck-client/assets/classDiagram-v2-HSJHXN6E-Bt8xBAof.js +0 -1
- package/dist/deck-client/assets/clone-BHQryoDl.js +0 -1
- package/dist/deck-client/assets/index-KsShfCV-.js +0 -476
- package/dist/deck-client/assets/stateDiagram-v2-QKLJ7IA2-4T4wMDXr.js +0 -1
- package/scaffolds/ls-marketplace/plugins/kit/skills/diagram.md +0 -134
- package/scaffolds/ls-marketplace/plugins/kit/skills/recall.md +0 -83
- /package/dist/chart-client/assets/{index-Ccy-DpI-.js → index-B__ARB8k.js} +0 -0
- /package/dist/client/assets/{index-Dp0_okva.js → index-h8kMzVtG.js} +0 -0
- /package/dist/council-client/assets/{index-Dt4zWKSj.js → index-CWaDcsFR.js} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-array.md → beacon-array/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-clear.md → beacon-clear/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-pulse.md → beacon-pulse/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-scan.md → beacon-scan/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{brief.md → brief/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{course.md → course/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{deploy-check.md → deploy-check/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{orbit.md → orbit/SKILL.md} +0 -0
- /package/scaffolds/ls-marketplace/plugins/kit/skills/{show-mcp-status.md → show-mcp-status/SKILL.md} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as t,b as r,a,S as s}from"./chunk-OYMX7WX6-C4KoTL5p.js";import{_ as i}from"./index-KsShfCV-.js";import"./chunk-55IACEB6-BZPUyZAZ.js";import"./chunk-EDXVE4YY-BWwNUK-l.js";var l={parser:a,get db(){return new s(2)},renderer:r,styles:t,init:i(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{l as diagram};
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Render a Mermaid diagram (flowchart, sequence, ERD, state, gantt) via launch-deck. For ERDs, auto-derives tables and relations from launch-chart's db layer so the diagram matches the real schema. Files a chart-gap feedback comment to LS if the db layer is missing or empty.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /kit:diagram
|
|
6
|
-
|
|
7
|
-
Push a Mermaid diagram to launch-deck. Five flavors:
|
|
8
|
-
|
|
9
|
-
- **flowchart** — boxes-and-arrows for any process
|
|
10
|
-
- **sequence** — request/response timing between actors
|
|
11
|
-
- **erd** — entity-relationship diagram. Auto-pulled from chart `db` layer unless the user provides their own DSL.
|
|
12
|
-
- **state** — state machine
|
|
13
|
-
- **gantt** — timeline
|
|
14
|
-
|
|
15
|
-
Parse `$ARGUMENTS`:
|
|
16
|
-
- **kind** (required) — `flowchart` | `sequence` | `erd` | `state` | `gantt`. If absent, ask.
|
|
17
|
-
- **subject** (required for non-erd) — what to diagram, e.g. "user login flow" or "OAuth handshake".
|
|
18
|
-
- **--scope=<filter>** — for ERDs, limit to one module or table set (e.g. `--scope=auth` or `--scope=User,Org,Membership`). Default: all tables.
|
|
19
|
-
- **--session=<id>** — deck session name. Default `diagram-<kind>-<subject-slug>`.
|
|
20
|
-
- **--dsl=<raw-mermaid>** — bypass auto-generation; push the user's DSL verbatim.
|
|
21
|
-
- **--feedback** — push in feedback mode and await response.
|
|
22
|
-
|
|
23
|
-
Examples:
|
|
24
|
-
- `/kit:diagram flowchart user login flow`
|
|
25
|
-
- `/kit:diagram sequence OAuth handshake between client, gateway, idp`
|
|
26
|
-
- `/kit:diagram erd --scope=work-items`
|
|
27
|
-
- `/kit:diagram erd` → full project ERD
|
|
28
|
-
- `/kit:diagram state work-item lifecycle: backlog → todo → in-progress → done`
|
|
29
|
-
|
|
30
|
-
## Preflight
|
|
31
|
-
|
|
32
|
-
1. Confirm `mcp__launch-deck__server_status` is running; start if not.
|
|
33
|
-
2. For `erd`: confirm `mcp__launch-chart__chart_server_status` is up, then call `mcp__launch-chart__detect_project_stack` and check `db` is in the layers list.
|
|
34
|
-
|
|
35
|
-
## Build the DSL
|
|
36
|
-
|
|
37
|
-
### flowchart / sequence / state / gantt
|
|
38
|
-
|
|
39
|
-
Translate the subject into Mermaid DSL based on what the user described. For sequence, infer actors from the subject (client/server/db are common defaults). Add concise labels — don't overload with prose.
|
|
40
|
-
|
|
41
|
-
Example flowchart skeleton:
|
|
42
|
-
|
|
43
|
-
```mermaid
|
|
44
|
-
flowchart TD
|
|
45
|
-
Start([User opens app]) --> Auth{Session valid?}
|
|
46
|
-
Auth -- yes --> Home[Home]
|
|
47
|
-
Auth -- no --> Login[Login form]
|
|
48
|
-
Login -- success --> Home
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
If the user passed `--dsl=…`, skip generation — use their DSL.
|
|
52
|
-
|
|
53
|
-
### erd
|
|
54
|
-
|
|
55
|
-
Query the db layer to derive entities and edges:
|
|
56
|
-
|
|
57
|
-
1. `mcp__launch-chart__read_graph(layer: "db", type: "table"[, module: <scope>])` — gets every table node.
|
|
58
|
-
2. For each table, `mcp__launch-chart__inspect_node(node_id: <id>, fields: ["columns", "relations"])` to get fields and FK relations.
|
|
59
|
-
3. Render Mermaid `erDiagram` DSL:
|
|
60
|
-
|
|
61
|
-
```mermaid
|
|
62
|
-
erDiagram
|
|
63
|
-
USER ||--o{ WORK_ITEM : owns
|
|
64
|
-
USER {
|
|
65
|
-
string id PK
|
|
66
|
-
string email
|
|
67
|
-
datetime createdAt
|
|
68
|
-
}
|
|
69
|
-
WORK_ITEM {
|
|
70
|
-
string id PK
|
|
71
|
-
string userId FK
|
|
72
|
-
string title
|
|
73
|
-
enum type
|
|
74
|
-
}
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
Rules:
|
|
78
|
-
- Use `||--o{` for 1:N FK relations, `}o--o{` for many-to-many join tables.
|
|
79
|
-
- Include PK + FK markers; include enum/scalar type for the first ~8 columns per table; truncate the rest with a `… (N more)` comment.
|
|
80
|
-
- Cap at 25 tables to keep the diagram readable. If the project has more than 25 in scope, ask the user to narrow with `--scope=`.
|
|
81
|
-
|
|
82
|
-
**Chart-gap detection** — file a feedback comment per the protocol below before stopping if:
|
|
83
|
-
- the db layer is missing from `detect_project_stack`
|
|
84
|
-
- `read_graph(layer: "db")` returns 0 nodes
|
|
85
|
-
- the chart shows tables but `inspect_node` returns no `columns` (parser misconfiguration)
|
|
86
|
-
|
|
87
|
-
## Push to deck
|
|
88
|
-
|
|
89
|
-
Call `mcp__launch-deck__deck` with:
|
|
90
|
-
- `session: <session>`
|
|
91
|
-
- `mode: "show"` or `"feedback"` (+ `prompt: "Does this match the schema you expected?"` for ERDs)
|
|
92
|
-
- `blocks: [{ type: "mermaid", label: <kind>-<subject>, content: <mermaid-dsl> }]`
|
|
93
|
-
|
|
94
|
-
If `--feedback`, call `await_feedback` and surface the response.
|
|
95
|
-
|
|
96
|
-
## Output
|
|
97
|
-
|
|
98
|
-
```
|
|
99
|
-
diagram pushed — deck session "<session>" — http://localhost:52829/?session=<session>
|
|
100
|
-
kind: <kind>
|
|
101
|
-
nodes: <N> edges: <M>
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
For ERDs add `tables: <N> relations: <M> scope: <scope or "all">`.
|
|
105
|
-
|
|
106
|
-
## Chart-gap protocol (shared)
|
|
107
|
-
|
|
108
|
-
When the chart MCP returns less data than expected (db layer missing, 0 tables, empty columns), file ONE feedback comment in the project's Comm Hub via `mcp__launch-secure__communication_write` (cloud LS, not local) before stopping:
|
|
109
|
-
|
|
110
|
-
```
|
|
111
|
-
resource_type: "feedback"
|
|
112
|
-
title: "launch-chart gap: <one-line>"
|
|
113
|
-
body: |
|
|
114
|
-
Skill: /kit:diagram
|
|
115
|
-
Tool: read_graph(layer="db", …) / inspect_node(...)
|
|
116
|
-
Returned: <tables_count> tables, <relations_count> relations
|
|
117
|
-
Expected: db layer present per detect_project_stack
|
|
118
|
-
Project stack: <one-line summary>
|
|
119
|
-
fields:
|
|
120
|
-
severity: "low"
|
|
121
|
-
source: "kit-skill"
|
|
122
|
-
skill: "diagram"
|
|
123
|
-
tool: "read_graph"
|
|
124
|
-
response_summary: { layer, tables_count, error }
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
Then fall back: render a `flowchart` placeholder explaining "DB layer not available — re-run `npx launch-chart generate_graph` then retry" instead of the ERD.
|
|
128
|
-
|
|
129
|
-
## Constraints
|
|
130
|
-
|
|
131
|
-
- **MCP-first for ERDs.** Never grep `prisma/schema.prisma` to build the DSL — the chart has the parsed model.
|
|
132
|
-
- **Cap entities at 25.** Past that, Mermaid wraps unreadably; ask the user to narrow scope.
|
|
133
|
-
- **Mermaid only.** This skill does not draw raster images — Mermaid DSL is the deliverable.
|
|
134
|
-
- **One block per push.**
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Recover a file/dir from launch-recall's shadow-git backup. Lists snapshot history for a path and (with explicit confirmation) restores a specific snapshot into the working tree. Read-only by default; restore is one-shot and prompts before overwriting.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /kit:recall
|
|
6
|
-
|
|
7
|
-
Surface and restore deletions/modifications captured by the launch-recall watcher (the shadow git repo at `.recall/repo.git`). Use when something was accidentally deleted, overwritten, or auto-formatted away.
|
|
8
|
-
|
|
9
|
-
Parse `$ARGUMENTS` — first token is the subcommand:
|
|
10
|
-
|
|
11
|
-
- **status** — quick watcher liveness + last snapshot age.
|
|
12
|
-
- **doctor** — fuller health check (shadow_repo / watcher_alive / recent_snapshot).
|
|
13
|
-
- **history <path>** — `[--limit=N]` — list snapshots that touched the path. Default limit 20.
|
|
14
|
-
- **show <path> <sha>** — display the file's content from that snapshot (no write).
|
|
15
|
-
- **restore <path> <sha>** — `[--to=<target-path>]` — restore the file. Prompts before overwriting unless the path doesn't exist on disk.
|
|
16
|
-
- **diff <path> <sha>** — show a unified diff vs current working-tree (or "(file deleted from working tree)" if absent).
|
|
17
|
-
|
|
18
|
-
Examples:
|
|
19
|
-
- `/kit:recall status`
|
|
20
|
-
- `/kit:recall history src/server/comms/build-feed.ts`
|
|
21
|
-
- `/kit:recall show src/server/comms/build-feed.ts a1b2c3d`
|
|
22
|
-
- `/kit:recall diff src/server/comms/build-feed.ts a1b2c3d`
|
|
23
|
-
- `/kit:recall restore src/server/comms/build-feed.ts a1b2c3d`
|
|
24
|
-
- `/kit:recall restore prisma/schema.prisma a1b2c3d --to=prisma/schema.recovered.prisma`
|
|
25
|
-
|
|
26
|
-
## Preflight
|
|
27
|
-
|
|
28
|
-
Confirm the recall MCP is wired by attempting `mcp__launch-recall__recall_status`. If neither cloud nor local is callable, stop and tell the user: `"launch-recall MCP not wired in this project. Run \`npx @launchsecure/launch-kit refresh\` (or \`npx launch-recall init\` for the shadow repo)."` Per project memory, prefer the cloud namespace; this skill works with either.
|
|
29
|
-
|
|
30
|
-
## Per-subcommand behavior
|
|
31
|
-
|
|
32
|
-
### status
|
|
33
|
-
|
|
34
|
-
`mcp__launch-recall__recall_status` → one line: `recall <alive/dead> pid <N> last snap <X ago>`.
|
|
35
|
-
|
|
36
|
-
### doctor
|
|
37
|
-
|
|
38
|
-
`mcp__launch-recall__recall_doctor` → render the checks as a 3-line report:
|
|
39
|
-
|
|
40
|
-
```
|
|
41
|
-
recall — health
|
|
42
|
-
shadow_repo ✓ /Users/.../.recall/repo.git
|
|
43
|
-
watcher_alive ✓ pid 12456
|
|
44
|
-
recent_snapshot ✓ 2m ago
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### history
|
|
48
|
-
|
|
49
|
-
`mcp__launch-recall__recall_history(path: <path>, limit: <limit>)` → one row per snapshot: `sha age message`. Render most-recent first.
|
|
50
|
-
|
|
51
|
-
If the array is empty, say so verbatim and suggest cause: `"No snapshots touch <path>. Either the path was ignored by recall's config, or the file simply never changed during this watcher's lifetime."` Then offer to print `recall.report` for context.
|
|
52
|
-
|
|
53
|
-
### show
|
|
54
|
-
|
|
55
|
-
The recall MCP exposes history but not a `show` tool directly. Implement by:
|
|
56
|
-
1. Read `mcp__launch-recall__recall_status` → `shadowRepoPath` (or read the config — `.recall/repo.git` is the default).
|
|
57
|
-
2. Use `git --git-dir=<shadow> --work-tree=<repo> show <sha>:<path>` via Bash.
|
|
58
|
-
3. Print the file content (truncate at 500 lines; surface the truncation explicitly).
|
|
59
|
-
|
|
60
|
-
### diff
|
|
61
|
-
|
|
62
|
-
Same as `show`, but `git --git-dir=<shadow> show <sha>:<path>` piped through `diff -u - <path>` (or print "file deleted from working tree" if missing). Cap diff at 500 lines.
|
|
63
|
-
|
|
64
|
-
### restore
|
|
65
|
-
|
|
66
|
-
This is the only write operation. Strict protocol — per project memory `feedback_no_dumb_reverts.md`, destructive ops require explicit confirmation.
|
|
67
|
-
|
|
68
|
-
1. Resolve target path: `--to=<target>` if given, else the original `<path>`.
|
|
69
|
-
2. If the target exists on disk:
|
|
70
|
-
- Print a side-by-side summary: `current size <N> bytes, snapshot size <M> bytes`.
|
|
71
|
-
- Show the first ~20 lines of the diff (current → snapshot).
|
|
72
|
-
- Ask: `"Overwrite <target>? (yes / show full diff / no)"` — wait for explicit `yes`.
|
|
73
|
-
3. If the target does NOT exist on disk (file was deleted), restore without prompt but tell the user before writing: `"Restoring deleted file to <target> from snapshot <sha>."`
|
|
74
|
-
4. Use `git --git-dir=<shadow> show <sha>:<path> > <target>` (or `git checkout <sha> -- <path>` against the shadow with `--work-tree=<repo>`).
|
|
75
|
-
5. After restore, print: `"Restored. Recall just captured a new snapshot of the restore itself — your previous working-tree state is also recoverable (run \`/kit:recall history <target>\` to confirm)."`
|
|
76
|
-
|
|
77
|
-
## Constraints
|
|
78
|
-
|
|
79
|
-
- **Read-only by default.** Only `restore` writes; everything else reads.
|
|
80
|
-
- **Restore requires confirmation** when overwriting an existing file. Never auto-overwrite even when the user passes the sha — per project memory, destructive ops need explicit `yes`.
|
|
81
|
-
- **No `git reset`, no `git clean`, no `rm`.** Recall restores via `git show > file`; never run anything that could lose more than the one file requested.
|
|
82
|
-
- **Don't suggest enabling recall for the user.** If recall isn't wired, point at refresh — don't auto-init.
|
|
83
|
-
- **Quote both pieces of advice when the file is unchanged.** If `history` returns nothing AND the file exists on disk, say BOTH "path may be in recall's ignore list" AND "the file may simply have no churn" — don't guess which.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-array.md → beacon-array/SKILL.md}
RENAMED
|
File without changes
|
/package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-clear.md → beacon-clear/SKILL.md}
RENAMED
|
File without changes
|
/package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-pulse.md → beacon-pulse/SKILL.md}
RENAMED
|
File without changes
|
/package/scaffolds/ls-marketplace/plugins/kit/skills/{beacon-scan.md → beacon-scan/SKILL.md}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/scaffolds/ls-marketplace/plugins/kit/skills/{deploy-check.md → deploy-check/SKILL.md}
RENAMED
|
File without changes
|
|
File without changes
|
/package/scaffolds/ls-marketplace/plugins/kit/skills/{show-mcp-status.md → show-mcp-status/SKILL.md}
RENAMED
|
File without changes
|