@skyf0xx/hedgehog 5.1.4 → 5.1.7

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/bin/cli.mjs CHANGED
@@ -686,7 +686,11 @@ async function init({ force, core, host = DEFAULT_HOST, hostOnly = false }) {
686
686
  dim(
687
687
  ` Read ${bold(`${agents}/planner.md`)} and follow it — it runs planning\n` +
688
688
  ` intake (${skills}/hedgehog-planning-intake/SKILL.md), then hands\n` +
689
- ` off to ${agents}/bootstrap.md.`,
689
+ ` off to ${agents}/bootstrap.md.\n` +
690
+ ` Some hosts register agents/skills once, at session start: if a\n` +
691
+ ` later dispatch by name reports one of these as not found, read\n` +
692
+ ` its file directly instead — it becomes dispatchable by name after\n` +
693
+ ` a session restart or a fresh context.`,
690
694
  ),
691
695
  );
692
696
  console.log();
@@ -811,6 +815,14 @@ async function update({ hosts }) {
811
815
  'write-once content.',
812
816
  ),
813
817
  );
818
+ console.log(
819
+ dim(
820
+ 'Some hosts register agents/skills once, at session start: a renamed or\n' +
821
+ 'newly-added one may not be dispatchable by name until this session\n' +
822
+ 'restarts or a fresh context starts — read its file directly if a\n' +
823
+ 'name-based dispatch reports it as not found.',
824
+ ),
825
+ );
814
826
  }
815
827
 
816
828
  // Returned by resolveInstalledCore when the project has a core but its
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyf0xx/hedgehog",
3
- "version": "5.1.4",
3
+ "version": "5.1.7",
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
  };
@@ -6,6 +6,14 @@ context with its own tool grant. The skills in `.claude/skills/` are
6
6
  available the same way; invoke one by name rather than reimplementing what
7
7
  it describes.
8
8
 
9
+ Claude Code reads that registration once, at session start — an agent or
10
+ skill file written mid-session (by `hedgehog init` or `hedgehog update`
11
+ just now) is not yet dispatchable by name in this session. If a name-based
12
+ dispatch reports it as not found, read the file directly from
13
+ `.claude/agents/` or `.claude/skills/` and follow it inline instead of
14
+ retrying the dispatch; it becomes dispatchable by name after a session
15
+ restart or a fresh context.
16
+
9
17
  Clear context with `/clear` at the unit boundaries described above —
10
18
  `hedgehog boundary` tells you whether you're at one (exit 0), and
11
19
  `hedgehog boundary --handoff` is what the next session starts from.
@@ -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.