@skyf0xx/hedgehog 5.1.5 → 5.1.8

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/README.md CHANGED
@@ -1,4 +1,5 @@
1
- # Turn AI from a code generator into a reliable software engineer ⭐
1
+ # H E D G E H O G
2
+ ![Incredible Software Engineer](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/docs/images/incredible.png)
2
3
 
3
4
  [![Total downloads](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/badges/npm-downloads.svg)](https://www.npmjs.com/package/@skyf0xx/hedgehog)
4
5
  [![Support Hedgehog](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/badges/kofi-top.svg)](https://ko-fi.com/skyf0xx)
@@ -138,16 +139,25 @@ Sequence
138
139
  Artifact
139
140
  ```
140
141
 
141
- ### Anything else
142
+ ### Web Apps/ PWAs
142
143
 
143
- A CLI, a library, a browser extension, a data pipeline, etc. fitting neither shape gets its own build order, designed at intake rather than chosen from a menu — starting from a battle-tested blueprint (in [`hedgehog-core-authored`](https://github.com/skyf0xx/hedgehog-core-authored)'s `hedgehog-core-design` skill) for the system's shape where one exists.
144
+ Local-first simple mobile compatible web apps: trackers, journals, planners, etc:
144
145
 
145
- Run `init` with no core flag: planning intake names the system shape, picks
146
- the stack, derives the layers, and locks them to `.hedgehog/core.yaml`,
147
- then generates that workspace and builds it one verified layer at a time.
146
+ ``` text
147
+ Schema
148
+ ↓
149
+ Repository
150
+ ↓
151
+ Hook
152
+ ↓
153
+ Screen
154
+ ```
148
155
 
149
- The enforcement remains the same: ordered steps,
150
- scoped file access and a verification command per layer.
156
+ ### Anything else
157
+
158
+ A CLI, a library, a browser extension, a data pipeline, etc. gets its build order.
159
+
160
+ Where possible, Hedgehog uses a battle-tested blueprint in [`hedgehog-core-authored`](https://github.com/skyf0xx/hedgehog-core-authored/tree/main/skills/hedgehog-core-design/blueprints) for the system's shape where one exists.
151
161
 
152
162
  ### Existing codebases
153
163
 
@@ -216,35 +226,21 @@ Hedgehog improves the **system AI builds inside**.
216
226
 
217
227
  Hedgehog uses a fixed stack and build order for each core. The tooling enforces architectural boundaries so correctness does not depend on the AI remembering instructions.
218
228
 
219
- See [ARCHITECTURE.md](ARCHITECTURE.md) for the full design.
220
-
221
- ## Authoring a new core
222
-
223
- A core is an npm package carrying a pre-built, pre-verified workspace plus the agents and skills that build it. The package contract, at the package root:
224
-
225
- - `hedgehog-core.yaml` — the manifest naming the core (matching its registry entry), its language, and where each contributed piece lives in the package: `workspace/` (the scaffold, omitted by a core that scaffolds nothing), `CLAUDE.core.md` (fills the installed `CLAUDE.md` shell's core section), `agents/<name>.md`, `skills/<name>/`, and any `vendor_skills/<name>/`. Its `engine` key states the engine line the core's agents and skills are written against, as a caret range over a three-part version (`engine: "^5.0.0"`); an older CLI refuses the core rather than landing a payload it cannot drive.
226
- - `core.yaml` — the layer sequence and per-layer verify commands, in the same shape `src/db/core.mjs` loads for an authored core.
227
-
228
- Adding the package to the CLI's `init` menu is one entry in `src/registry/cores.json`: the package name, the version range to resolve, an install flag, and the `selects_when` prose. That entry owns the selection prose — `planner` reads it in Phase 0, before any core package is fetched — so the manifest leaves it out; a `selects_when` in a manifest is never read.
229
+ See [ARCHITECTURE.md](ARCHITECTURE.md) for the full design, and
230
+ [AUTHORING-CORES.md](AUTHORING-CORES.md) for how to build and register a
231
+ new one.
229
232
 
230
233
  ## Credits
231
234
 
232
- Hedgehog uses [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD)
233
- (`bmad-code-org/BMAD-METHOD`) for planning, MIT-licensed.
235
+ - Planning runs on [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD).
234
236
 
235
- The `nx-generate`, `nx-run-tasks`, `nx-workspace`, and
236
- `link-workspace-packages` skills are adapted from
237
- [nx-ai-agents-config](https://github.com/nrwl/nx-ai-agents-config)
238
- (`nrwl/nx-ai-agents-config`), MIT-licensed, rewritten for Hedgehog's
239
- pnpm-only workspace convention.
237
+ - Nx skills adapted from [nx-ai-agents-config](https://github.com/nrwl/nx-ai-agents-config).
240
238
 
241
- `front-end-eng`'s animation skills (`vendor-skills/GSAP/`) are vendored from
242
- [gsap-skills](https://github.com/greensock/gsap-skills)
243
- (`greensock/gsap-skills`), MIT-licensed.
239
+ - Animation skills vendored from [gsap-skills](https://github.com/greensock/gsap-skills).
244
240
 
245
241
  ## Support Hedgehog
246
242
 
247
- If Hedgehog helps you build better software with AI, **give it a ⭐ on GitHub**, or [buy me a coffee on Ko-fi](https://ko-fi.com/skyf0xx).
243
+ If Hedgehog helps you build better software with AI, **give it a ⭐ on GitHub**.
248
244
 
249
245
  [![GitHub stars](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/badges/github-stars.svg)](https://github.com/skyf0xx/hedgehog/stargazers)
250
246
  [![Total downloads](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/badges/npm-downloads.svg)](https://www.npmjs.com/package/@skyf0xx/hedgehog)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyf0xx/hedgehog",
3
- "version": "5.1.5",
3
+ "version": "5.1.8",
4
4
  "description": "Install the Hedgehog build discipline (agents + skills) into a repo, for Claude Code, Cursor, or Gemini CLI.",
5
5
  "type": "module",
6
6
  "repository": {
@@ -16,7 +16,8 @@
16
16
  "scripts": {
17
17
  "check": "node scripts/check.mjs",
18
18
  "repro": "node --experimental-sqlite repro/run-all.mjs",
19
- "release": "npm version patch -m \"chore: bump version to %s\""
19
+ "release": "npm version patch -m \"chore: bump version to %s\"",
20
+ "release:plugin": "node scripts/bump-plugin-version.mjs"
20
21
  },
21
22
  "files": [
22
23
  "bin",
@@ -211,30 +211,6 @@ discipline as `.hedgehog/BMAD/`. A later related incident is its own new
211
211
  4. **Repeat step 3** for as many tweaks as the user has, one at a time —
212
212
  don't batch unrelated tweaks into one commit.
213
213
 
214
- ## Self-test
215
-
216
- - Job 2 ran at most once for this build — but within that run, every
217
- distinct real pattern the friction log showed, and every distinct
218
- feedback item the user actually gave, got its own suggested issue, not
219
- just the single clearest one.
220
- - The user was directly asked for feedback, separate from the friction
221
- log — job 2 didn't skip straight to filing friction issues without
222
- asking.
223
- - Entries (or feedback items) that trace to the same underlying gap were
224
- grouped into one issue, not filed as duplicates.
225
- - Shown content is literal/final and correctly labeled — never a
226
- summary, never altered post-approval, and never created without an
227
- explicit approval on that specific issue's exact shown content.
228
- - Every tweak is its own commit, scoped to what the user actually asked
229
- for — no drive-by refactor riding along on a color change.
230
- - A request that's actually new scope was routed onward — to `planner`'s
231
- Re-entry pass on a module axis, or to the Correction Protocol's
232
- post-build entry otherwise — not built here, and the user was told the
233
- build is extendable, not that the request was refused.
234
- - The `ROADMAP.md`/contributing mention happened at most once for this
235
- build, stayed to one sentence, and wasn't repeated or pressed after a
236
- "no" or silence.
237
-
238
214
  ## Constraints
239
215
 
240
216
  - Never create a GitHub issue against the user's own project repo — job
@@ -22,12 +22,6 @@ export const AGENT_CAPABILITY = {
22
22
  'pwa-eng': 'full',
23
23
  tweaker: 'full',
24
24
 
25
- // Author artifacts, but never run commands.
26
- 'landing-headline-writer': 'no-bash',
27
- 'landing-sequencer': 'no-bash',
28
- 'landing-strategist': 'no-bash',
29
- 'landing-systems': 'no-bash',
30
-
31
25
  // Inspect and report; the verification command (and, for the Polish
32
26
  // Loop reviewers, the build/screenshot/interaction commands) is theirs
33
27
  // to run.
@@ -35,9 +29,6 @@ export const AGENT_CAPABILITY = {
35
29
  'landing-visual-reviewer': 'readonly-bash',
36
30
  'landing-ux-reviewer': 'readonly-bash',
37
31
 
38
- // Inspect and report only.
39
- 'landing-critic': 'readonly',
40
-
41
32
  // Write its rationale artifact, nothing else.
42
33
  'ux-planner': 'write-only',
43
34
  };
@@ -44,8 +44,8 @@ Run in parallel:
44
44
  - `git log -10 --oneline` to confirm the project's existing commit style
45
45
  - Run `hedgehog status` for which steps/modules are in flight
46
46
 
47
- Read every changed file's diff fully. You cannot group changes you
48
- haven't read.
47
+ Read every changed file's diff fully before grouping — you cannot group
48
+ changes you haven't read.
49
49
 
50
50
  ### 2. Group hunks into logical commits
51
51
 
@@ -72,8 +72,7 @@ Do NOT group:
72
72
 
73
73
  1. **Build-sequence order.** Schema before contract, contract before
74
74
  repository, repository before service, service before controller —
75
- same dependency order the Loop builds in, even reconstructing after
76
- the fact.
75
+ the same dependency order the Loop builds in.
77
76
  2. **Upstream fix before its fast-forwarded dependents**, for a
78
77
  Correction Protocol cleanup — the fix commit needs to make sense
79
78
  before the commits that changed because of it.
@@ -102,9 +101,8 @@ Then execute each commit:
102
101
  - Verify clean state with `git status` before the next commit.
103
102
 
104
103
  If a pre-commit hook (lefthook: typecheck/lint/test) fails: fix the
105
- issue, re-stage, create a NEW commit. Never `--amend` after a hook
106
- failure — a commit that fails the gate did not happen, so amending would
107
- rewrite the wrong thing.
104
+ issue, re-stage, create a NEW commit — a commit that fails the gate did
105
+ not happen, so amending would rewrite the wrong thing (see Hard rules).
108
106
 
109
107
  ### 5. Commit format
110
108
 
@@ -117,14 +117,3 @@ back-and-forth to extract the facts.
117
117
  (`Addresses the "<item name>" item in ROADMAP.md`, or `Fixes #<n>`).
118
118
  7. **Report the PR URL** `gh` returns and stop — don't merge, don't push
119
119
  further commits without being asked.
120
-
121
- ## Self-test
122
-
123
- - The change happened in a Hedgehog repo clone, never inside the user's own
124
- project directory.
125
- - The PR is scoped to one agent, one skill, one template, or one host —
126
- not a bundle of unrelated changes.
127
- - The install smoke test actually ran and actually confirmed the specific
128
- change, not just that `init` exits zero.
129
- - Commit messages and the PR title follow Conventional Commits.
130
- - Nothing was merged or force-pushed without the user explicitly asking.