@skyf0xx/hedgehog 5.1.7 → 5.2.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/README.md CHANGED
@@ -1,8 +1,10 @@
1
- # Turn AI from a code generator into a reliable software engineer ⭐
1
+ ![Incredible Software Engineer](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/docs/images/incredible.png)
2
2
 
3
3
  [![Total downloads](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/badges/npm-downloads.svg)](https://www.npmjs.com/package/@skyf0xx/hedgehog)
4
4
  [![Support Hedgehog](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/badges/kofi-top.svg)](https://ko-fi.com/skyf0xx)
5
5
 
6
+ # H E D G E H O G
7
+
6
8
  AI can write code in seconds.
7
9
 
8
10
  But as projects grow, context fills up, **architecture drifts**, and every new feature becomes harder to change safely.
@@ -138,16 +140,43 @@ Sequence
138
140
  Artifact
139
141
  ```
140
142
 
141
- ### Anything else
143
+ ### Web Apps/ PWAs
144
+
145
+ Local-first simple mobile compatible web apps: trackers, journals, planners, etc:
146
+
147
+ ``` text
148
+ Schema
149
+
150
+ Repository
151
+
152
+ Hook
153
+
154
+ Screen
155
+ ```
156
+
157
+ ### DeepSeek Harness plugins
158
+
159
+ Tools, hooks, and extensions for DSH's Cordis-based agent framework:
142
160
 
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.
161
+ ``` text
162
+ Scaffold
163
+
164
+ Logic
165
+
166
+ Wiring
167
+
168
+ Smoke
169
+
170
+ Bundle
171
+
172
+ Join
173
+ ```
144
174
 
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.
175
+ ### Anything else
176
+
177
+ A CLI, a library, a browser extension, a data pipeline, etc. gets its build order.
148
178
 
149
- The enforcement remains the same: ordered steps,
150
- scoped file access and a verification command per layer.
179
+ 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
180
 
152
181
  ### Existing codebases
153
182
 
@@ -216,35 +245,21 @@ Hedgehog improves the **system AI builds inside**.
216
245
 
217
246
  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
247
 
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.
248
+ See [ARCHITECTURE.md](ARCHITECTURE.md) for the full design, and
249
+ [AUTHORING-CORES.md](AUTHORING-CORES.md) for how to build and register a
250
+ new one.
229
251
 
230
252
  ## Credits
231
253
 
232
- Hedgehog uses [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD)
233
- (`bmad-code-org/BMAD-METHOD`) for planning, MIT-licensed.
254
+ - Planning runs on [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD).
234
255
 
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.
256
+ - Nx skills adapted from [nx-ai-agents-config](https://github.com/nrwl/nx-ai-agents-config).
240
257
 
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.
258
+ - Animation skills vendored from [gsap-skills](https://github.com/greensock/gsap-skills).
244
259
 
245
260
  ## Support Hedgehog
246
261
 
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).
262
+ If Hedgehog helps you build better software with AI, **give it a ⭐ on GitHub**.
248
263
 
249
264
  [![GitHub stars](https://raw.githubusercontent.com/skyf0xx/hedgehog/master/badges/github-stars.svg)](https://github.com/skyf0xx/hedgehog/stargazers)
250
265
  [![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.7",
3
+ "version": "5.2.0",
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": {
@@ -14,6 +14,7 @@ export const AGENT_CAPABILITY = {
14
14
  'backend-eng': 'full',
15
15
  bootstrap: 'full',
16
16
  'front-end-eng': 'full',
17
+ 'harness-eng': 'full',
17
18
  'landing-builder': 'full',
18
19
  'landing-copywriter': 'full',
19
20
  'landing-executor': 'full',
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hedgehog",
3
- "version": "5.1.3",
3
+ "version": "5.2.0",
4
4
  "description": "Hedgehog build discipline: ordered, tested, verified build steps.",
5
5
  "contextFileName": "GEMINI.md"
6
6
  }
@@ -27,6 +27,15 @@
27
27
  "repository": "https://github.com/skyf0xx/hedgehog-core-landing-page",
28
28
  "selects_when": "The description is a marketing/announcement/waitlist/portfolio page (or a small handful of such pages) with no persistent domain data of its own. A page that only collects an email into a third-party form service, or has no state at all, qualifies. The bar is \"no domain module\" — a landing page with a dozen sections is still landing-page, not promoted to full-stack-app for being long."
29
29
  },
30
+ {
31
+ "name": "deepseek-harness",
32
+ "flag": "--deepseek-harness",
33
+ "package": "@skyf0xx/hedgehog-core-deepseek-harness",
34
+ "version": "^0.1.0",
35
+ "language": "typescript",
36
+ "repository": "https://github.com/skyf0xx/hedgehog-core-deepseek-harness",
37
+ "selects_when": "The description names building a plugin, tool, hook, or extension for DeepSeek Harness (DSH) — a Cordis-based agent framework — or otherwise extending an existing DSH installation with new capabilities via its plugin/bundle system. Concrete signals: DSH, DeepSeek Harness, Cordis, `defineTool`, `ctx.tools.register`, a `cordis.patch.yml` manifest, or a request to add a tool that a DSH agent can call. This is the core most often confused with authored: authored fits when no shipped core matches and the planner must design a system shape from scratch, but a DSH plugin already has a fixed, battle-tested shape (the six-layer scaffold → logic → wiring → smoke → bundle → join sequence, one plugin per intent) that authored's from-scratch design would only reinvent worse. Route here whenever the target of the work is a DSH plugin, not a general \"no other core fits\" fallback."
38
+ },
30
39
  {
31
40
  "name": "authored",
32
41
  "package": "@skyf0xx/hedgehog-core-authored",
@@ -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