claude-launchpad 1.9.1 → 1.10.1

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.
Files changed (34) hide show
  1. package/README.md +29 -45
  2. package/dist/{chunk-RCYLZUU6.js → chunk-3OFOCOXM.js} +714 -60
  3. package/dist/chunk-3OFOCOXM.js.map +1 -0
  4. package/dist/{chunk-72VWDNAE.js → chunk-6DQD6KVN.js} +2 -2
  5. package/dist/{chunk-GA3IUQUM.js → chunk-CL7BAUHR.js} +3 -3
  6. package/dist/{chunk-DYHPVA6O.js → chunk-P2LGPNNY.js} +2 -2
  7. package/dist/{chunk-I4S4Q2IV.js → chunk-YYNJMM7V.js} +2 -2
  8. package/dist/cli.js +114 -45
  9. package/dist/cli.js.map +1 -1
  10. package/dist/commands/memory/server.js +3 -3
  11. package/dist/{context-X7UP2ODK.js → context-76QJSCRJ.js} +5 -5
  12. package/dist/{install-XBCEI5QK.js → install-B5KISSFR.js} +7 -6
  13. package/dist/{install-XBCEI5QK.js.map → install-B5KISSFR.js.map} +1 -1
  14. package/dist/{pull-VA62U3OP.js → pull-4ZQSKFX7.js} +7 -7
  15. package/dist/{push-C3M6Q4V7.js → push-C3QMIEUQ.js} +7 -7
  16. package/dist/{require-deps-UBU5CYM5.js → require-deps-XUAKG226.js} +3 -3
  17. package/dist/{stats-R4TWCPHW.js → stats-ARO5UFFZ.js} +6 -6
  18. package/dist/{sync-clean-P4S7V2JS.js → sync-clean-UHR2I27F.js} +3 -3
  19. package/dist/{sync-status-TPYUF43G.js → sync-status-VZGZCZA3.js} +7 -7
  20. package/dist/{tui-FFLCUR7E.js → tui-GGUFB6WP.js} +4 -4
  21. package/package.json +2 -2
  22. package/dist/chunk-RCYLZUU6.js.map +0 -1
  23. /package/dist/{chunk-72VWDNAE.js.map → chunk-6DQD6KVN.js.map} +0 -0
  24. /package/dist/{chunk-GA3IUQUM.js.map → chunk-CL7BAUHR.js.map} +0 -0
  25. /package/dist/{chunk-DYHPVA6O.js.map → chunk-P2LGPNNY.js.map} +0 -0
  26. /package/dist/{chunk-I4S4Q2IV.js.map → chunk-YYNJMM7V.js.map} +0 -0
  27. /package/dist/{context-X7UP2ODK.js.map → context-76QJSCRJ.js.map} +0 -0
  28. /package/dist/{pull-VA62U3OP.js.map → pull-4ZQSKFX7.js.map} +0 -0
  29. /package/dist/{push-C3M6Q4V7.js.map → push-C3QMIEUQ.js.map} +0 -0
  30. /package/dist/{require-deps-UBU5CYM5.js.map → require-deps-XUAKG226.js.map} +0 -0
  31. /package/dist/{stats-R4TWCPHW.js.map → stats-ARO5UFFZ.js.map} +0 -0
  32. /package/dist/{sync-clean-P4S7V2JS.js.map → sync-clean-UHR2I27F.js.map} +0 -0
  33. /package/dist/{sync-status-TPYUF43G.js.map → sync-status-VZGZCZA3.js.map} +0 -0
  34. /package/dist/{tui-FFLCUR7E.js.map → tui-GGUFB6WP.js.map} +0 -0
package/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  **Claude follows CLAUDE.md ~80% of the time. Hooks run at 100%. Most setups have zero hooks.**
12
12
 
13
- Claude Launchpad adds the hooks, scores your config, and tests that Claude actually follows your rules.
13
+ Launchpad scores your Claude Code config, fixes the gaps with hooks and permissions, and runs scenarios to prove Claude follows your rules.
14
14
 
15
15
  For developers using Claude Code who want consistent results: solo devs, vibe coders, AI-first teams.
16
16
 
@@ -54,7 +54,7 @@ npx claude-launchpad doctor --fix
54
54
 
55
55
  Scores your config, auto-repairs everything it can.
56
56
 
57
- ## The Three-File System
57
+ ## The Three-File System + Workflow Rules
58
58
 
59
59
  Without structure, CLAUDE.md becomes a dumping ground:
60
60
 
@@ -67,10 +67,12 @@ The three-file split keeps each concern where it belongs:
67
67
  | File | Purpose | Example |
68
68
  |---|---|---|
69
69
  | `CLAUDE.md` | What Claude needs to know | Stack, commands, conventions, guardrails |
70
- | `TASKS.md` | What we're doing now | Current sprint, session log, progress |
71
- | `BACKLOG.md` | What we're doing later | Parked features with P0/P1/P2 priority tiers |
70
+ | `TASKS.md` | What we're doing now | Current sprint, session log (empty between sprints) |
71
+ | `BACKLOG.md` | What we're doing later | WP-NNN template, 7 mandatory fields, P0/P1/P2/P3 sections |
72
72
 
73
- Init generates all three. Doctor checks for them. `--fix` creates any that are missing.
73
+ Init generates all three plus `.claude/rules/workflow.md`, a path-scoped rule file Claude auto-loads only when editing BACKLOG.md or TASKS.md. It also installs a `workflow-check.sh` hook that warns on drift: duplicate WP IDs across files, TASKS.md > 80 lines, Current Sprint > 15 items, Session Log > 3 entries.
74
+
75
+ Doctor flags MEDIUM when workflow.md is missing, LOW when the hook is missing, and MEDIUM on duplicate `## Memory` headings in CLAUDE.md. `--fix` installs or repairs any of them without clobbering existing user content. See the [workflow docs](https://mboss37.github.io/claude-launchpad/docs/workflow) for the full lifecycle.
74
76
 
75
77
  ## Commands
76
78
 
@@ -92,10 +94,10 @@ Runs 7 analyzers against your `.claude/` directory and CLAUDE.md. No API calls,
92
94
  | Analyzer | What it catches |
93
95
  |---|---|
94
96
  | **Instruction Budget** | Too many instructions. Claude starts ignoring rules past ~200. |
95
- | **CLAUDE.md Quality** | Missing sections, vague instructions, hardcoded secrets |
97
+ | **CLAUDE.md Quality** | Missing sections, vague instructions, hardcoded secrets, duplicate `## Memory` headings |
96
98
  | **Settings** | No hooks configured, dangerous tool access without safety nets |
97
- | **Hooks** | Missing auto-format, no .env protection, no PostCompact hook, no auto-sync on session end |
98
- | **Rules** | Dead rule files, stale references, empty configs |
99
+ | **Hooks** | Missing auto-format, no .env protection, no PostCompact hook, no workflow-check hook, no auto-sync on session end |
100
+ | **Rules** | Dead rule files, stale references, empty configs, missing `.claude/rules/workflow.md` |
99
101
  | **Permissions** | Credential exposure (~/.ssh, ~/.aws), blanket Bash approval, bypass-mode unprotected |
100
102
  | **MCP Servers** | Invalid transport configs, missing commands/URLs |
101
103
 
@@ -200,43 +202,6 @@ Results save to `.claude/eval/` as structured markdown. Feed them back to Claude
200
202
  | `--json` | JSON output |
201
203
  | `--timeout <ms>` | Timeout per run (default 120000) |
202
204
 
203
- ## Memory
204
-
205
- Claude's built-in memory resets per machine. Launchpad gives each project persistent, cross-device memory that syncs via a private GitHub Gist. Switch laptops and your decisions are already there.
206
-
207
- ```bash
208
- claude-launchpad memory
209
- ```
210
-
211
- If memory is not installed, it runs interactive setup. If fully installed (SessionStart hook **and** MCP server registered), it shows stats. If partially installed, it points you at `memory install` to fix the missing piece. Requires native deps first: `npm install better-sqlite3 sqlite-vec`.
212
-
213
- During setup, you choose where memory config lives:
214
-
215
- - **Shared** (default) — config goes to `CLAUDE.md` + `settings.json` (committed, team sees it)
216
- - **Local** — config goes to `.claude/CLAUDE.md` + `settings.local.json` (gitignored, only you)
217
-
218
- Use "local" when co-devs have different memory setups (e.g. you use agentic-memory, they use built-in). Your choice is persisted so `doctor --fix` won't re-ask.
219
-
220
- Every session, Claude loads what it needs to know and stores new knowledge as it works. Stale facts fade on their own. Knowledge Claude actually uses gets reinforced. Each project has its own isolated memory. When a session ends, memories auto-sync to a private GitHub Gist so they're available on any machine.
221
-
222
- Browse everything with `--dashboard`, a terminal UI with vim navigation, filtering, and search.
223
-
224
- Data stays in `~/.agentic-memory/memory.db`. Sync requires the [GitHub CLI](https://cli.github.com/) (`gh`).
225
-
226
- | Flag / Subcommand | What it does |
227
- |---|---|
228
- | `--dashboard` | Opens the interactive TUI dashboard |
229
- | `install` | Explicitly (re-)run the install flow — useful after a partial/broken setup |
230
- | `push` | Push current project's memories to a private GitHub Gist |
231
- | `pull` | Pull current project's memories from a private GitHub Gist |
232
- | `push --all` | Push all projects |
233
- | `pull --all` | Pull every project already set up on this machine (skips new ones) |
234
- | `push -y` | Skip confirmation prompt |
235
- | `sync status` | Show local vs remote memory counts |
236
- | `sync clean <project>` | Remove a project from the sync gist |
237
-
238
- Sync stores one file per project inside a single private gist. Push/pull auto-detects the current project from your working directory. On a new device, the gist is auto-discovered from your GitHub account (no config to copy). Deletions propagate. Delete on one machine; the next machine to pull drops it too.
239
-
240
205
  ## Hooks
241
206
 
242
207
  CLAUDE.md rules are ~80% reliable. Hooks are 100% enforced by the harness. Init and `--fix` set up these hooks automatically:
@@ -248,6 +213,8 @@ CLAUDE.md rules are ~80% reliable. Hooks are 100% enforced by the harness. Init
248
213
  | **Auto-format** | After any Write/Edit | Runs your language's formatter (prettier, ruff, gofmt, rustfmt, etc.) |
249
214
  | **SessionStart** | Session opens | Injects TASKS.md so Claude knows where you left off |
250
215
  | **PostCompact** | After context compression | Re-injects TASKS.md so Claude doesn't lose sprint state mid-session |
216
+ | **workflow-check** | After BACKLOG.md/TASKS.md Edit/Write | Warns on duplicate WP IDs across files, TASKS.md > 80 lines, Current Sprint > 15 items, Session Log > 3 entries |
217
+ | **sprint-size / sprint-open** | Session start / `git commit` | Warns on microsprints (<3 WPs), oversized sprints (>7 WPs), new sprint opened without BACKLOG cleanup |
251
218
 
252
219
  Memory projects get two additional hooks:
253
220
 
@@ -256,6 +223,23 @@ Memory projects get two additional hooks:
256
223
  | **SessionStart pull** | Session opens | Auto-pulls memories from GitHub Gist |
257
224
  | **SessionEnd push** | Session closes | Auto-pushes new memories to GitHub Gist |
258
225
 
226
+ ## Memory (optional)
227
+
228
+ Claude's built-in memory resets per machine. Launchpad gives each project persistent, cross-device memory that syncs via a private GitHub Gist. Switch laptops and your decisions are already there.
229
+
230
+ ```bash
231
+ claude-launchpad memory
232
+ ```
233
+
234
+ Interactive setup if not installed, stats if it is. Requires native deps first: `npm install better-sqlite3 sqlite-vec`. Sync requires the [GitHub CLI](https://cli.github.com/).
235
+
236
+ - Relevant memories auto-injected at session start, new memories stored as Claude works
237
+ - Stale knowledge fades, important decisions persist
238
+ - Each project has its own scoped memory
239
+ - `--dashboard` opens a terminal UI with vim nav, filtering, and search
240
+
241
+ Full flag and subcommand reference in [the memory docs](https://mboss37.github.io/claude-launchpad/docs/memory).
242
+
259
243
  ## Use in CI
260
244
 
261
245
  Block PRs that degrade your Claude Code config quality: