litclaude-ai 0.2.2

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 (156) hide show
  1. package/CHANGELOG.md +155 -0
  2. package/LICENSE +21 -0
  3. package/README.md +369 -0
  4. package/README_ko-KR.md +374 -0
  5. package/RELEASE_CHECKLIST.md +165 -0
  6. package/bin/litclaude-ai.js +643 -0
  7. package/cover.png +0 -0
  8. package/docs/agents.md +67 -0
  9. package/docs/hooks.md +134 -0
  10. package/docs/lsp.md +40 -0
  11. package/docs/migration.md +209 -0
  12. package/docs/workflow-compatibility-audit.md +119 -0
  13. package/generate_cover.py +123 -0
  14. package/package.json +48 -0
  15. package/plugins/litclaude/.claude-plugin/plugin.json +25 -0
  16. package/plugins/litclaude/.lsp.json +13 -0
  17. package/plugins/litclaude/.mcp.json +9 -0
  18. package/plugins/litclaude/agents/boulder-executor.md +12 -0
  19. package/plugins/litclaude/agents/librarian-researcher.md +15 -0
  20. package/plugins/litclaude/agents/oracle-verifier.md +16 -0
  21. package/plugins/litclaude/agents/prometheus-planner.md +13 -0
  22. package/plugins/litclaude/agents/qa-runner.md +16 -0
  23. package/plugins/litclaude/agents/quality-reviewer.md +17 -0
  24. package/plugins/litclaude/bin/litclaude-hook.js +110 -0
  25. package/plugins/litclaude/bin/litclaude-hud.js +271 -0
  26. package/plugins/litclaude/bin/litclaude-lsp-doctor.js +15 -0
  27. package/plugins/litclaude/bin/litclaude-mcp.js +70 -0
  28. package/plugins/litclaude/commands/deep-interview.md +21 -0
  29. package/plugins/litclaude/commands/dynamic-workflow.md +36 -0
  30. package/plugins/litclaude/commands/lit-loop.md +40 -0
  31. package/plugins/litclaude/commands/lit-plan.md +35 -0
  32. package/plugins/litclaude/commands/litgoal.md +30 -0
  33. package/plugins/litclaude/commands/review-work.md +35 -0
  34. package/plugins/litclaude/commands/start-work.md +36 -0
  35. package/plugins/litclaude/hooks/hooks.json +54 -0
  36. package/plugins/litclaude/lib/context-pressure.mjs +25 -0
  37. package/plugins/litclaude/lib/hud-accent-palette.mjs +58 -0
  38. package/plugins/litclaude/lib/litgoal/cli.mjs +266 -0
  39. package/plugins/litclaude/lib/litgoal/ledger.mjs +16 -0
  40. package/plugins/litclaude/lib/litgoal/paths.mjs +7 -0
  41. package/plugins/litclaude/lib/litgoal/state.mjs +67 -0
  42. package/plugins/litclaude/lib/mutated-file-paths.mjs +63 -0
  43. package/plugins/litclaude/lib/start-work-continuation.mjs +99 -0
  44. package/plugins/litclaude/lib/workflow-check.mjs +83 -0
  45. package/plugins/litclaude/skills/ai-slop-remover/SKILL.md +142 -0
  46. package/plugins/litclaude/skills/comment-checker/SKILL.md +55 -0
  47. package/plugins/litclaude/skills/debugging/SKILL.md +70 -0
  48. package/plugins/litclaude/skills/debugging/references/methodology/00-setup.md +108 -0
  49. package/plugins/litclaude/skills/debugging/references/methodology/02-investigate.md +126 -0
  50. package/plugins/litclaude/skills/debugging/references/methodology/04-oracle-triple.md +106 -0
  51. package/plugins/litclaude/skills/debugging/references/methodology/05-escalate.md +69 -0
  52. package/plugins/litclaude/skills/debugging/references/methodology/06-fix.md +116 -0
  53. package/plugins/litclaude/skills/debugging/references/methodology/08-qa.md +94 -0
  54. package/plugins/litclaude/skills/debugging/references/methodology/09-cleanup.md +164 -0
  55. package/plugins/litclaude/skills/debugging/references/methodology/partial-runtime-evidence.md +228 -0
  56. package/plugins/litclaude/skills/debugging/references/runtimes/bundled-js-binary.md +415 -0
  57. package/plugins/litclaude/skills/debugging/references/runtimes/go.md +252 -0
  58. package/plugins/litclaude/skills/debugging/references/runtimes/native-binary.md +484 -0
  59. package/plugins/litclaude/skills/debugging/references/runtimes/node.md +260 -0
  60. package/plugins/litclaude/skills/debugging/references/runtimes/python.md +248 -0
  61. package/plugins/litclaude/skills/debugging/references/runtimes/rust.md +234 -0
  62. package/plugins/litclaude/skills/debugging/references/tools/ghidra.md +212 -0
  63. package/plugins/litclaude/skills/debugging/references/tools/playwright-cli.md +194 -0
  64. package/plugins/litclaude/skills/debugging/references/tools/pwndbg.md +263 -0
  65. package/plugins/litclaude/skills/debugging/references/tools/pwntools.md +265 -0
  66. package/plugins/litclaude/skills/deep-interview/SKILL.md +323 -0
  67. package/plugins/litclaude/skills/deep-interview/scripts/render_progress.py +193 -0
  68. package/plugins/litclaude/skills/frontend-ui-ux/SKILL.md +62 -0
  69. package/plugins/litclaude/skills/lit-loop/SKILL.md +144 -0
  70. package/plugins/litclaude/skills/lit-plan/SKILL.md +125 -0
  71. package/plugins/litclaude/skills/litgoal/SKILL.md +219 -0
  72. package/plugins/litclaude/skills/lsp/SKILL.md +63 -0
  73. package/plugins/litclaude/skills/programming/SKILL.md +106 -0
  74. package/plugins/litclaude/skills/programming/references/go/README.md +90 -0
  75. package/plugins/litclaude/skills/programming/references/go/backend-stack.md +641 -0
  76. package/plugins/litclaude/skills/programming/references/go/bootstrap.md +328 -0
  77. package/plugins/litclaude/skills/programming/references/go/bubbletea-v2.md +360 -0
  78. package/plugins/litclaude/skills/programming/references/go/cobra-stack.md +468 -0
  79. package/plugins/litclaude/skills/programming/references/go/concurrency.md +362 -0
  80. package/plugins/litclaude/skills/programming/references/go/data-modeling.md +329 -0
  81. package/plugins/litclaude/skills/programming/references/go/error-handling.md +359 -0
  82. package/plugins/litclaude/skills/programming/references/go/golangci-strict.md +236 -0
  83. package/plugins/litclaude/skills/programming/references/go/grpc-connect.md +375 -0
  84. package/plugins/litclaude/skills/programming/references/go/libraries.md +337 -0
  85. package/plugins/litclaude/skills/programming/references/go/one-liners.md +202 -0
  86. package/plugins/litclaude/skills/programming/references/go/sqlc-pgx.md +471 -0
  87. package/plugins/litclaude/skills/programming/references/go/testing.md +467 -0
  88. package/plugins/litclaude/skills/programming/references/go/type-patterns.md +298 -0
  89. package/plugins/litclaude/skills/programming/references/python/README.md +314 -0
  90. package/plugins/litclaude/skills/programming/references/python/async-anyio.md +442 -0
  91. package/plugins/litclaude/skills/programming/references/python/data-modeling.md +233 -0
  92. package/plugins/litclaude/skills/programming/references/python/data-processing.md +133 -0
  93. package/plugins/litclaude/skills/programming/references/python/error-handling.md +218 -0
  94. package/plugins/litclaude/skills/programming/references/python/fastapi-stack.md +316 -0
  95. package/plugins/litclaude/skills/programming/references/python/httpx2-optimization.md +360 -0
  96. package/plugins/litclaude/skills/programming/references/python/libraries.md +307 -0
  97. package/plugins/litclaude/skills/programming/references/python/one-liners.md +268 -0
  98. package/plugins/litclaude/skills/programming/references/python/orjson-stack.md +378 -0
  99. package/plugins/litclaude/skills/programming/references/python/pydantic-ai.md +285 -0
  100. package/plugins/litclaude/skills/programming/references/python/pyproject-strict.md +232 -0
  101. package/plugins/litclaude/skills/programming/references/python/textual-tui.md +201 -0
  102. package/plugins/litclaude/skills/programming/references/python/type-patterns.md +176 -0
  103. package/plugins/litclaude/skills/programming/references/rust/README.md +317 -0
  104. package/plugins/litclaude/skills/programming/references/rust/async-tokio.md +299 -0
  105. package/plugins/litclaude/skills/programming/references/rust/axum-stack.md +467 -0
  106. package/plugins/litclaude/skills/programming/references/rust/cargo-strict.md +317 -0
  107. package/plugins/litclaude/skills/programming/references/rust/clap-stack.md +409 -0
  108. package/plugins/litclaude/skills/programming/references/rust/concurrency.md +375 -0
  109. package/plugins/litclaude/skills/programming/references/rust/libraries.md +439 -0
  110. package/plugins/litclaude/skills/programming/references/rust/one-liners.md +291 -0
  111. package/plugins/litclaude/skills/programming/references/rust/proptest-insta.md +429 -0
  112. package/plugins/litclaude/skills/programming/references/rust/type-state.md +354 -0
  113. package/plugins/litclaude/skills/programming/references/rust/unsafe-discipline.md +250 -0
  114. package/plugins/litclaude/skills/programming/references/rust/zero-cost-safety.md +527 -0
  115. package/plugins/litclaude/skills/programming/references/rust-ub/README.md +289 -0
  116. package/plugins/litclaude/skills/programming/references/rust-ub/miri-sanitizers-loom.md +411 -0
  117. package/plugins/litclaude/skills/programming/references/rust-ub/ub-taxonomy.md +269 -0
  118. package/plugins/litclaude/skills/programming/references/typescript/README.md +195 -0
  119. package/plugins/litclaude/skills/programming/references/typescript/backend-hono.md +672 -0
  120. package/plugins/litclaude/skills/programming/references/typescript/bootstrap.md +199 -0
  121. package/plugins/litclaude/skills/programming/references/typescript/data-modeling.md +202 -0
  122. package/plugins/litclaude/skills/programming/references/typescript/error-handling.md +169 -0
  123. package/plugins/litclaude/skills/programming/references/typescript/tsconfig-strict.md +152 -0
  124. package/plugins/litclaude/skills/programming/references/typescript/type-patterns.md +196 -0
  125. package/plugins/litclaude/skills/programming/scripts/go/check-no-excuse-rules.sh +173 -0
  126. package/plugins/litclaude/skills/programming/scripts/go/new-project.py +138 -0
  127. package/plugins/litclaude/skills/programming/scripts/go/templates/.editorconfig +13 -0
  128. package/plugins/litclaude/skills/programming/scripts/go/templates/.golangci.yml +95 -0
  129. package/plugins/litclaude/skills/programming/scripts/go/templates/AGENTS.md.tmpl +24 -0
  130. package/plugins/litclaude/skills/programming/scripts/go/templates/README.md.tmpl +12 -0
  131. package/plugins/litclaude/skills/programming/scripts/go/templates/Taskfile.yml +40 -0
  132. package/plugins/litclaude/skills/programming/scripts/go/templates/ci.yml +37 -0
  133. package/plugins/litclaude/skills/programming/scripts/go/templates/config.go +24 -0
  134. package/plugins/litclaude/skills/programming/scripts/go/templates/gitignore +15 -0
  135. package/plugins/litclaude/skills/programming/scripts/go/templates/main.go.tmpl +22 -0
  136. package/plugins/litclaude/skills/programming/scripts/go/templates/run.go +15 -0
  137. package/plugins/litclaude/skills/programming/scripts/python/check-no-excuse-rules.py +687 -0
  138. package/plugins/litclaude/skills/programming/scripts/python/new-project.py +172 -0
  139. package/plugins/litclaude/skills/programming/scripts/python/new-script.py +116 -0
  140. package/plugins/litclaude/skills/programming/scripts/rust/check-no-excuse-rules.py +296 -0
  141. package/plugins/litclaude/skills/programming/scripts/rust/check-no-excuse-rules.sh +158 -0
  142. package/plugins/litclaude/skills/programming/scripts/rust/new-project.py +175 -0
  143. package/plugins/litclaude/skills/programming/scripts/typescript/check-no-excuse-rules.ts +282 -0
  144. package/plugins/litclaude/skills/programming/scripts/typescript/new-project.ts +177 -0
  145. package/plugins/litclaude/skills/refactor/SKILL.md +73 -0
  146. package/plugins/litclaude/skills/remove-ai-slops/SKILL.md +52 -0
  147. package/plugins/litclaude/skills/review-work/SKILL.md +331 -0
  148. package/plugins/litclaude/skills/rules/SKILL.md +66 -0
  149. package/plugins/litclaude/skills/start-work/SKILL.md +132 -0
  150. package/scripts/audit-plan-checkboxes.mjs +37 -0
  151. package/scripts/doctor.mjs +41 -0
  152. package/scripts/inspect-agent-tools.mjs +27 -0
  153. package/scripts/postinstall.mjs +50 -0
  154. package/scripts/qa-claude-plugin-smoke.sh +60 -0
  155. package/scripts/qa-portable-install.sh +136 -0
  156. package/scripts/validate-plugin.mjs +72 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,155 @@
1
+ # Changelog
2
+
3
+ ## Unreleased — LazyClaude → LitClaude rebrand
4
+
5
+ - Rename the project from **LazyClaude / `lazyclaude-ai`** to **LitClaude / `litclaude-ai`**
6
+ end-to-end: npm package, `litclaude`/`litclaude-ai` bins, `plugins/litclaude/` payload, installer
7
+ identifiers (`litclaude@litclaude-ai`), 13 `LITCLAUDE_*` env vars, per-project state dir
8
+ `.litclaude/` (was `.omo/`), HUD banner `[LitClaude vX.Y.Z]` (dropped the 💤), and the 7
9
+ `litclaude:*` slash commands. See `docs/migration.md` for the upgrade guide.
10
+ - Add a fail-closed legacy-token scanner (`tools/scan-legacy-tokens.mjs`) + allowlist that keeps the
11
+ shipped surface free of legacy and upstream-lineage tokens and the source-origin handle;
12
+ `ulw`/`ultrawork` are kept as own vocabulary.
13
+ - Add a no-publish CI workflow (`.github/workflows/ci.yml`, `permissions: contents: read`) plus
14
+ version-lockstep, CI-integrity, and pack-payload hardening gates.
15
+ - Make the atomic state store durable (fsync), remove the ported `codex:` session-id residue (Claude
16
+ host semantics), and replace brittle `import.meta.url.pathname` with `fileURLToPath` for
17
+ spaced/`#`/non-ASCII workspace paths.
18
+ - **Version for the first public `litclaude-ai` release is pending user confirmation (proposed
19
+ `1.0.0`). No `npm publish` or push has occurred.**
20
+
21
+ ## 0.2.2 - 2026-06-07
22
+
23
+ - Harden Dynamic workflow delegation with an explicit child-assignment
24
+ contract: `TASK:`, `DELIVERABLE`, `SCOPE`, and `VERIFY`, plus bounded wait and
25
+ fallback rules for missing deliverables, acknowledgement-only replies, and
26
+ `BLOCKED:` reports.
27
+ - Add `litclaude-ai start-work-next --json` so long `$start-work` runs can
28
+ resume from `.litclaude/boulder.json` and `.litclaude/start-work/ledger.jsonl` without
29
+ guessing the next unchecked top-level plan item.
30
+ - Make PostToolUse guidance name actual mutated files for write/edit/multiedit,
31
+ notebook, and patch-shaped tool inputs, and add bounded SessionStart resume
32
+ guidance when transcript context-pressure markers are detected.
33
+ - Extend `workflow-check --json` with subagent reliability and command/hook
34
+ agreement checks.
35
+
36
+ ## 0.2.1 - 2026-06-04
37
+
38
+ - Add a dedicated `/dynamic-workflow` route for Dynamic workflow bootstrap,
39
+ native `/goal` fallback guidance, and Claude Code subagent delegation.
40
+ - Add `litclaude-ai workflow-check --json` so operators can verify goal,
41
+ Dynamic workflow, hook route, and subagent delegation readiness before full QA.
42
+ - Fix the right-pane `test/` local-session ignore pattern so ad hoc Claude Code
43
+ session artifacts stay out of git and package payloads.
44
+
45
+ ## 0.2.0 - 2026-06-03
46
+
47
+ - Align the package and Claude plugin manifests to `litclaude-ai@0.2.0` for
48
+ the workflow parity release candidate.
49
+ - Add the `review-work` 5-lane review route and document its goal/constraint
50
+ verification, hands-on QA execution, code quality, security, and local-first
51
+ context mining lanes.
52
+ - Add the `ultragoal` CLI/runtime surface for durable criteria, evidence,
53
+ checkpoints, steering, and review blocker records under `.litclaude/ultragoal/`.
54
+ - Keep the release boundary explicit: this version is prepared for verification
55
+ and publication approval, but no npm publish or marketplace publication is claimed
56
+ here.
57
+
58
+ ## 0.1.18 - 2026-06-02
59
+
60
+ - Shorten the HUD into compact HUD bars with a three-cell context gauge and
61
+ two-cell rate-limit gauges for tighter Claude Code status-line space.
62
+ - Replace muted installer choices with vivid HUD color choices and shared
63
+ mini-HUD previews for all ten brand accent themes.
64
+ - Apply the selected accent as a broader brand accent across separators,
65
+ labels, brackets, reset text, and git metadata.
66
+
67
+ ## 0.1.17 - 2026-06-02
68
+
69
+ - Render a dense bracketed context bar in the HUD, for example
70
+ `ctx [▉░░░░░░░░░] 9%/1000k`.
71
+ - Show low non-zero rate-limit usage with partial bar glyphs so 1% and 7% no
72
+ longer look empty, and add spacing before the `↻` reset countdown.
73
+ - Add more eye-catching installer color labels for animated `npx` installs
74
+ while preserving deterministic plain `INSTALL_STEP` output in CI.
75
+
76
+ ## 0.1.16 - 2026-06-02
77
+
78
+ - Show compact HUD rate-limit reset countdowns with a `↻` suffix and parse
79
+ Claude Code's epoch-second `rate_limits.*.resets_at` fields as well as ISO
80
+ timestamps.
81
+ - Add `/deep-interview`, `$deep-interview`, and
82
+ `/litclaude:deep-interview` routing for a Socratic requirements mode before
83
+ planning or implementation.
84
+ - Ship the `deep-interview` skill and its progress renderer, plus English and
85
+ Korean README guidance for when to chain it into `/ulw-plan` or `/ulw-loop`.
86
+
87
+ ## 0.1.15 - 2026-06-01
88
+
89
+ - Add an install-time LitClaude HUD brand color picker with immediate ANSI
90
+ previews for each `[LitClaude vX.Y.Z]` choice.
91
+ - Persist the selected HUD accent in Claude `settings.json` and inject it into
92
+ the managed `statusLine` command through `LITCLAUDE_HUD_ACCENT`.
93
+ - Allow noninteractive installs to keep the default LitClaude cyan accent
94
+ without hanging CI, postinstall, or fresh-machine smoke tests.
95
+
96
+ ## 0.1.14 - 2026-06-01
97
+
98
+ - Ignore Claude Code command XML transcript packets such as
99
+ `<command-name>...</command-name>` when selecting the HUD's latest user prompt
100
+ preview, so command metadata never appears as the second HUD line.
101
+ - Add the sleepy LitClaude HUD prefix `[LitClaude vX.Y.Z]` while preserving
102
+ the compact context, rate-limit, and git segments.
103
+
104
+ ## 0.1.13 - 2026-06-01
105
+
106
+ - Fix short slash ULW routing so `/ulw-plan`, `/ulw-loop`, and `/start-work`
107
+ map to their matching LitClaude disciplines instead of falling through to
108
+ plain `ulw` loop activation.
109
+ - Preserve punctuation-delimited triggers such as `ulw.` and `/ulw-plan, ...`
110
+ while ignoring hyphenated near-misses such as `/ulw-plan-ish`.
111
+ - Round HUD context/rate-limit percentages before rendering, so floating-point
112
+ values such as `7.000000000000001%` never leak into the status line.
113
+ - Ignore transcript entries that start with `<local-command-stdout>` or
114
+ `<local-command-stderr>` when selecting the HUD's latest user prompt preview.
115
+ - Document the short slash aliases in English/Korean README and hook docs.
116
+
117
+ ## 0.1.12 - 2026-06-01
118
+
119
+ - Recover from the npm publish rejection for already-published `0.1.11` by
120
+ preparing a new `litclaude-ai@0.1.12` package version.
121
+ - Include the source-checkout npx shim so same-name checkout installs can
122
+ resolve the package-name executable.
123
+ - Add installer progress output with animated TTY spinner frames and
124
+ deterministic CI-safe `INSTALL_STEP` logs.
125
+
126
+ ## 0.1.11 - 2026-06-01
127
+
128
+ - Add `litclaude-ai --version` / `litclaude-ai -v` for quick package smoke
129
+ checks without requiring install state.
130
+ - Align package, plugin, README, HUD examples, release checklist, and cover image
131
+ generation to `litclaude-ai@0.1.11`.
132
+ - Refresh README, reference metadata, and workflow
133
+ compatibility audit wording.
134
+ - Deepen trigger-specific hook routing for `$ulw-plan`, `$ulw-loop`, and
135
+ `$start-work`, with safer post-edit diagnostic guidance.
136
+
137
+ ## 0.1.10 - 2026-06-01
138
+
139
+ - Install a LitClaude-branded Claude Code statusLine HUD automatically during
140
+ `litclaude install`, with safe previous-statusLine restoration on uninstall.
141
+
142
+ ## 0.1.8
143
+
144
+ - Teach `litclaude doctor` to separate LitClaude's own LSP declaration from
145
+ external Claude Code LSP plugin binary warnings.
146
+
147
+ ## 0.1.7
148
+
149
+ - Expand the workflow compatibility audit beyond skill frontmatter into upstream legacy
150
+ component coverage.
151
+ - Ship the original `ai-slop-remover` skill alias alongside the LitClaude
152
+ `remove-ai-slops` skill.
153
+ - Include LitClaude programming and debugging auxiliary reference packs so the
154
+ Claude plugin carries the same deep language/runtime guidance, not only short
155
+ summary skills.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 LitClaude contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,369 @@
1
+ <p align="center"><img src="./cover.png" width="100%" /></p>
2
+
3
+ <h1 align="center">LitClaude</h1>
4
+ <p align="center">
5
+ <em>Claude Code-native LitClaude workflows: prompt hooks, litwork skills, agents, MCP, and LSP helpers.</em>
6
+ </p>
7
+ <p align="center">
8
+ <a href="#quick-start">Quick Start</a> · <a href="#lit-usage">LIT Usage</a> · <a href="#commands">Commands</a> · <a href="./README_ko-KR.md">한국어</a>
9
+ </p>
10
+ <p align="center">
11
+ <img src="https://img.shields.io/badge/npm-litclaude--ai-cb3837" />
12
+ <img src="https://img.shields.io/badge/version-0.2.2-2ea44f" />
13
+ <img src="https://img.shields.io/badge/Claude%20Code-plugin-blueviolet" />
14
+ <img src="https://img.shields.io/badge/license-MIT-blue" />
15
+ </p>
16
+
17
+ ---
18
+
19
+ > [!NOTE]
20
+ > LitClaude is a quiet Claude Code-native workflow package for prompt hooks,
21
+ > skills, agents, MCP, LSP, and LIT discipline. It installs as
22
+ > `litclaude@litclaude-ai`, so normal `claude` launches can load the
23
+ > LitClaude skills and hooks without a long `--plugin-dir` command.
24
+
25
+ This checkout is prepared as `litclaude-ai@0.2.2` for personal install
26
+ convenience. The repo can remain quiet; preparing npm package metadata here does
27
+ not imply public repo promotion, marketplace publication, or advertisement.
28
+ Future package releases still require explicit user approval. The v0.2.2
29
+ release materials preserve the v0.2.0 workflow parity work, add Dynamic
30
+ workflow hardening on top of v0.2.1 readiness, describe LitClaude in its own
31
+ terms, and do not claim that npm publication has completed.
32
+
33
+ ## Features
34
+
35
+ - **Natural Claude launch** - install once with `npx`, then run plain `claude`
36
+ - **LIT prompt hooks** - type `lit`, `litwork`, `$lit-plan`, or `$lit-loop`
37
+ - **Deep interview mode** - type `/deep-interview` or `$deep-interview` to
38
+ turn broad intent into a spec before planning or implementation
39
+ - **v0.2.0 workflow parity** - adds `review-work` 5-lane review discipline and
40
+ litgoal runtime docs without claiming a package publication has completed
41
+ - **v0.2.2 Dynamic workflow hardening** - adds stricter subagent assignment
42
+ contracts, `start-work-next`, context-pressure resume guidance, precise
43
+ mutated-file detection, and richer `workflow-check --json` readiness checks
44
+ - **5-lane review** - `/review-work` checks goal/constraint verification,
45
+ hands-on QA execution, code quality, security, and local-first context mining
46
+ - **Native goal guidance** - LIT context points Claude toward `/goal` or
47
+ model-facing `get_goal`, `create_goal`, and delayed `update_goal` when those
48
+ surfaces exist, and gives a clear fallback when goal tools are unavailable
49
+ - **Litgoal CLI/state** - `plugins/litclaude/lib/litgoal/` records durable
50
+ criteria, evidence, checkpoints, steering, and review blockers under
51
+ `.litclaude/litgoal/`
52
+ - **Dynamic workflow/worktree guidance** - large or parallel tasks are steered
53
+ toward Claude Code Dynamic workflow orchestration, subagent delegation, and
54
+ Dynamic worktree isolation
55
+ - **Claude skills** - a richer LitClaude-owned corpus: `programming`,
56
+ `debugging`, `refactor`, `ai-slop-remover`, `remove-ai-slops`, `review-work`,
57
+ `frontend-ui-ux`, `comment-checker`, `rules`, `lsp`, `litgoal`,
58
+ `deep-interview`, `lit-plan`, `lit-loop`, and `start-work`
59
+ - **Auxiliary workflow packs** - ships `programming/references`,
60
+ `programming/scripts`, and `debugging/references` for deeper language and
61
+ runtime guidance
62
+ - **Workflow agents** - planner, executor, verifier, reviewer, librarian, and QA runner
63
+ - **Local marketplace registration** - Claude can resolve `claude plugin details litclaude@litclaude-ai`
64
+ - **MCP and LSP helpers** - plugin-local stdio MCP plus TypeScript-family LSP doctor
65
+ - **LitClaude HUD** - npm install configures a compact Claude Code statusLine
66
+ based on `pretty-claude-hud`, branded as a neon `[🔥LITCLAUDE vX.Y.Z]`
67
+ (truecolor hot-pink→cyan gradient, bright-magenta on 256-color terminals), with
68
+ install-time vivid color selection, live mini-HUD previews, compact context
69
+ bars, visible low-usage rate-limit bars, broader brand accent coverage, and
70
+ spaced reset countdowns
71
+ - **Safe uninstall** - removes only LitClaude-managed state
72
+
73
+ ## Quick Start
74
+
75
+ ### Install
76
+
77
+ ```bash
78
+ npx --yes litclaude-ai install
79
+ ```
80
+
81
+ During an interactive `npx` install, LitClaude shows every HUD brand color as
82
+ a vivid live terminal preview and writes the selected accent into the managed
83
+ Claude `statusLine` command. Animated installs also use colored setup, plugin,
84
+ marketplace, registry, and cache labels so progress is easier to scan.
85
+ Noninteractive installs keep deterministic plain `INSTALL_STEP` lines.
86
+
87
+ If you are currently inside this repository checkout, which has the same
88
+ package name as the registry package, older published builds such as
89
+ `npx --yes litclaude-ai@0.1.11 install` could resolve the local same-name
90
+ source checkout and fail with `sh: litclaude-ai: command not found`. This
91
+ checkout intentionally does not track a `node_modules/.bin` shim. From a fresh
92
+ directory, the normal install command works:
93
+
94
+ ```bash
95
+ cd /tmp
96
+ npx --yes litclaude-ai@0.2.2 install
97
+ ```
98
+
99
+ Validate the installed plugin:
100
+
101
+ ```bash
102
+ npx --yes litclaude-ai doctor
103
+ ```
104
+
105
+ The installer also sets Claude Code's `statusLine` command to the packaged
106
+ LitClaude HUD. A typical no-color render starts like:
107
+
108
+ ```text
109
+ [🔥LITCLAUDE v0.2.2] | O4.8 │ ctx [▎░░] 9%/1000k │ 5h [▏░] 4% ↻2h15m │ 1w [▊░] 35% ↻3d6h │ git main +3 ✓
110
+ ```
111
+
112
+ The `↻` suffix is a compact rate-limit reset countdown. It is separated from
113
+ the percentage for readability, and low non-zero percentages still get a
114
+ partial bar glyph instead of looking empty. The context bar uses three cells
115
+ and the rate-limit bars use two cells so the HUD stays tight in Claude Code's
116
+ status-line space. Claude Code reports reset windows as epoch seconds, and
117
+ LitClaude also accepts ISO reset timestamps for compatibility with test
118
+ fixtures and older status-line helpers.
119
+
120
+ To override the accent without the picker, set `LITCLAUDE_HUD_ACCENT` to one
121
+ of `cyan`, `blue`, `teal`, `green`, `lavender`, `rose`, `gold`, `orange`,
122
+ `slate`, or `gray` before installing.
123
+
124
+ Launch Claude Code normally:
125
+
126
+ ```bash
127
+ claude
128
+ ```
129
+
130
+ ### Alternative Entrypoints
131
+
132
+ ```bash
133
+ bunx litclaude-ai install
134
+ npm install -g litclaude-ai
135
+ litclaude install
136
+ ```
137
+
138
+ If you need the explicit `npm exec` form while standing inside the source
139
+ checkout, use a fresh prefix so npm does not confuse the registry package with
140
+ a same-name source checkout:
141
+
142
+ ```bash
143
+ npm exec --prefix "$(mktemp -d)" --yes --package litclaude-ai -- litclaude install
144
+ ```
145
+
146
+ Remove only LitClaude-managed install state:
147
+
148
+ ```bash
149
+ npx --yes litclaude-ai uninstall
150
+ ```
151
+
152
+ ## How Install Works
153
+
154
+ The installer registers `litclaude@litclaude-ai` in Claude Code's user plugin
155
+ registry under `~/.claude/plugins`, enables it in `settings.json`
156
+ `enabledPlugins`, and writes a LitClaude-managed local marketplace entry in
157
+ `known_marketplaces.json`. That marketplace metadata is what lets Claude show
158
+ the skill and hook inventory in `claude plugin details`.
159
+
160
+ Use `CLAUDE_CONFIG_DIR=/some/path` and `LITCLAUDE_HOME=/some/path` only for
161
+ isolated tests.
162
+
163
+ ## LIT Usage
164
+
165
+ After install, start Claude Code:
166
+
167
+ ```bash
168
+ claude
169
+ ```
170
+
171
+ Then type one of these prompts:
172
+
173
+ ```text
174
+ lit
175
+ litwork
176
+ $lit-plan <what you want planned>
177
+ /lit-plan <what you want planned>
178
+ $lit-loop <what you want executed with evidence>
179
+ /lit-loop <what you want executed with evidence>
180
+ $deep-interview <what needs clarification>
181
+ /deep-interview <what needs clarification>
182
+ $dynamic-workflow <parallel or delegated objective>
183
+ /dynamic-workflow <parallel or delegated objective>
184
+ $review-work <scope to review>
185
+ /review-work <scope to review>
186
+ $litgoal <goal operation>
187
+ /litgoal <goal operation>
188
+ $start-work plans/example-plan.md
189
+ /start-work plans/example-plan.md
190
+ ```
191
+
192
+ Expected behavior: LitClaude's prompt hook adds `LITWORK MODE ENABLED`
193
+ context for LIT routes and shows `LitClaude lit hook active` as a visible hook
194
+ message. For `/deep-interview`, the hook adds `DEEP INTERVIEW MODE ENABLED`
195
+ context and routes Claude toward `/litclaude:deep-interview` /
196
+ `Skill(deep-interview)`. Plain `lit` still maps to `/litclaude:lit-loop` /
197
+ `Skill(lit-loop)` semantics before ordinary task execution, then the matching
198
+ skill and agent instructions steer Claude toward test-first work, native goal
199
+ handling, manual QA evidence, cleanup receipts, and explicit approval before
200
+ future release steps.
201
+
202
+ LitClaude does not auto-type `/goal` or send slash command text for you.
203
+ Instead, the hook and LIT skills add run-context guidance: use Claude Code's
204
+ native goal surface when available, inspect `get_goal`, call `create_goal` only
205
+ when no matching goal is active, and reserve `update_goal` for verified
206
+ completion or a genuine blocker. When goal tools are unavailable or not exposed,
207
+ LitClaude keeps the local evidence ledger authoritative and may suggest an
208
+ exact `/goal <completion condition>` before long execution without repeatedly
209
+ printing fallback chatter.
210
+ For large independent work, LitClaude applies the same principle to Claude
211
+ Code's available orchestration surfaces: when `Workflow` is exposed, call the
212
+ `Workflow` tool; when isolated edits need a model-facing worktree lane, use
213
+ `EnterWorktree`. If only the CLI surface is available for a fresh isolated lane,
214
+ use `claude --worktree <short-name> --tmux`.
215
+
216
+ For v0.2.2 Dynamic workflow hardening, `/dynamic-workflow` is the consolidated
217
+ bootstrap route for broad delegated work. It keeps `/goal` user-controlled,
218
+ checks model-facing goal tools when exposed, asks for an exact fallback
219
+ `/goal <completion condition>` when needed, and maps subagent delegation to
220
+ `prometheus-planner`, `boulder-executor`, `oracle-verifier`, `qa-runner`,
221
+ `quality-reviewer`, and `librarian-researcher`. Child assignments are expected
222
+ to start with `TASK:` and include `DELIVERABLE`, `SCOPE`, and `VERIFY`, so
223
+ delegated work has a concrete artifact, bounded scope, and verification path.
224
+ Run the package diagnostic from the checkout or an installed package before
225
+ full QA:
226
+
227
+ ```bash
228
+ litclaude-ai workflow-check --json
229
+ ```
230
+
231
+ When a long `$start-work` run is interrupted, compacted, or resumed in a new
232
+ terminal pane, use the continuation helper from the checkout:
233
+
234
+ ```bash
235
+ litclaude-ai start-work-next --json
236
+ ```
237
+
238
+ It reads `.litclaude/boulder.json` and `.litclaude/start-work/ledger.jsonl`, then prints the
239
+ active plan, ledger path, and first unchecked top-level task. If the plan is
240
+ complete, it returns `{"status":"idle","directive":null}`.
241
+
242
+ For v0.2.0 workflow parity, `review-work` is the dedicated review route. It is a
243
+ 5-lane review: goal/constraint verification, hands-on QA execution, code
244
+ quality, security, and local-first context mining. The lanes bind to
245
+ `oracle-verifier`, `qa-runner`, `quality-reviewer`, and `librarian-researcher`,
246
+ then aggregate evidence into a PASS, FAIL, or NEEDS-CONTEXT verdict. Manual-QA
247
+ channels must write artifacts, and every tmux session, server, port, browser
248
+ tab, or temp directory needs a cleanup receipt before review completion.
249
+
250
+ `litgoal` is the durable local state route for long goals. The runtime lives
251
+ in `plugins/litclaude/lib/litgoal/`, stores state in `.litclaude/litgoal/`, and
252
+ keeps current docs/test reads authoritative when stale state disagrees with the
253
+ checkout. Common commands are:
254
+
255
+ ```bash
256
+ litclaude litgoal create-goals --brief "<brief>" --json
257
+ litclaude litgoal record-evidence --criterion <id> --status pass --json '{"artifact":"...","cleanup":"..."}'
258
+ litclaude litgoal checkpoint --status active --note "<progress>" --json
259
+ litclaude litgoal steer --kind scope --note "<what changed and why>" --json
260
+ ```
261
+
262
+ `record-review-blockers` captures unresolved review findings. Malformed JSON,
263
+ unknown criteria, corrupt state, and invalid steering kinds return controlled
264
+ errors instead of silently reporting success.
265
+
266
+ Plain `lit` is hook context activation. Claude may still show it as hook
267
+ guidance rather than a separate Skill tool invocation in history. Use visible
268
+ namespaced commands when you want explicit LitClaude skill activation:
269
+
270
+ ```text
271
+ /litclaude:lit-loop <what you want executed with evidence>
272
+ /litclaude:dynamic-workflow <parallel or delegated objective>
273
+ /litclaude:lit-plan <what you want planned>
274
+ /litclaude:deep-interview <what needs clarification>
275
+ /litclaude:review-work <scope to review>
276
+ /litclaude:litgoal <goal operation>
277
+ /litclaude:start-work plans/example-plan.md
278
+ ```
279
+
280
+ Those namespaced commands are shipped as real Claude Code command files under
281
+ `plugins/litclaude/commands/`, so `/litclaude:lit-loop` should load the
282
+ command body, then the matching skill guidance.
283
+ The shorter slash aliases above are also recognized by the prompt hook and
284
+ route to the matching discipline instead of the plain `lit` loop fallback.
285
+
286
+ Use `/deep-interview` before `/lit-plan` when the request is broad,
287
+ underspecified, or missing non-goals and acceptance criteria. It writes a
288
+ requirements artifact under `deep-interview/` and then hands off to planning or
289
+ execution without building directly.
290
+
291
+ ## Commands
292
+
293
+ | Command | Purpose |
294
+ | --- | --- |
295
+ | `npx --yes litclaude-ai install` | Install and enable the Claude Code plugin |
296
+ | `npx --yes litclaude-ai --version` | Print the packaged LitClaude version |
297
+ | `npx --yes litclaude-ai doctor` | Validate files, Claude plugin validation, and plugin details |
298
+ | `npx --yes litclaude-ai path` | Print the installed Claude plugin path |
299
+ | `npx --yes litclaude-ai run -- --help` | Run plain `claude` after verifying install state |
300
+ | `npx --yes litclaude-ai update` | Reinstall the current package version |
301
+ | `npx --yes litclaude-ai uninstall` | Remove LitClaude-managed install state |
302
+
303
+ The package alias can be inspected without installing anything globally:
304
+
305
+ ```bash
306
+ node bin/litclaude-ai.js --dry-run install
307
+ node bin/litclaude-ai.js --dry-run doctor
308
+ ```
309
+
310
+ ## Local Development
311
+
312
+ Use the plugin directly from this checkout while editing it:
313
+
314
+ ```bash
315
+ claude --plugin-dir ./plugins/litclaude
316
+ ```
317
+
318
+ Inside Claude Code, reload local plugin metadata after edits:
319
+
320
+ ```text
321
+ /reload-plugins
322
+ ```
323
+
324
+ If an OMC/omc Claude plugin is installed, do not co-load it with LitClaude
325
+ while testing. Local checkout tests use `--plugin-dir`, and npm installs create
326
+ only a LitClaude-managed local marketplace under the user's LitClaude home.
327
+ The checkout does not ship a root Claude marketplace skeleton. If user-level
328
+ OMC creates a local `.omc/` state directory during smoke tests, LitClaude
329
+ ignores and excludes that directory from git and npm package surfaces.
330
+
331
+ ## Verification
332
+
333
+ ```bash
334
+ npm test
335
+ npm run validate:plugin
336
+ npm run qa:tmux
337
+ npm run qa:portable
338
+ npm run pack:dry-run
339
+ ```
340
+
341
+ `validate:plugin` and `qa:tmux` are local checks. If Claude Code is not
342
+ available on the machine, the smoke harness records a controlled skip with the
343
+ version probe evidence instead of failing mysteriously.
344
+
345
+ ## Safety Model
346
+
347
+ - Hooks read Claude Code event JSON from stdin and return bounded JSON context.
348
+ - Hooks do not execute user prompt text.
349
+ - The litwork prompt hook returns constant guidance and does not echo prompt text.
350
+ - `.omc/`, `.litclaude/`, and `evidence/` local state are ignored and excluded from the npm package.
351
+ - The planner agent is read-only and has no edit tools.
352
+ - MCP and LSP helpers are local stdio commands.
353
+ - Future publication, remote marketplace mutation, and package releases require explicit user approval.
354
+
355
+ ## Project Map
356
+
357
+ | Surface | Path |
358
+ | --- | --- |
359
+ | CLI | `bin/litclaude-ai.js` |
360
+ | Claude plugin | `plugins/litclaude/` |
361
+ | Skills | `plugins/litclaude/skills/` |
362
+ | Agents | `plugins/litclaude/agents/` |
363
+ | Hooks | `plugins/litclaude/hooks/hooks.json` |
364
+ | MCP | `plugins/litclaude/.mcp.json` |
365
+ | LSP | `plugins/litclaude/.lsp.json` |
366
+
367
+ See `README_ko-KR.md` for Korean setup notes, `docs/migration.md` for the
368
+ workflow migration table, `docs/workflow-compatibility-audit.md` for the current
369
+ compatibility audit, and `CHANGELOG.md` for release notes.