forgehive 0.7.6 → 0.7.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.
@@ -0,0 +1,337 @@
1
+ # forgehive — User Guide
2
+
3
+ > Version 0.7.6 · [npm](https://www.npmjs.com/package/forgehive) · `npm install -g forgehive`
4
+
5
+ forgehive (`fh`) gives Claude Code persistent memory about your project. Without it, Claude forgets everything between sessions — your stack, your conventions, your decisions. With it, Claude opens every session already knowing your codebase.
6
+
7
+ ---
8
+
9
+ ## Installation
10
+
11
+ ```bash
12
+ npm install -g forgehive
13
+ ```
14
+
15
+ Requires **Node.js ≥ 18** and **Claude Code** (`claude` CLI). Installs two aliases: `fh` and `forgehive`.
16
+
17
+ Verify:
18
+
19
+ ```bash
20
+ fh --version # prints 0.7.6
21
+ fh --help # full command reference
22
+ ```
23
+
24
+ ---
25
+
26
+ ## Quick Start
27
+
28
+ Three commands to get Claude up to speed on any project:
29
+
30
+ ```bash
31
+ cd my-project
32
+ fh init # scan the project, write .forgehive/
33
+ fh confirm # activate the context for Claude
34
+ ```
35
+
36
+ Then open a new Claude Code session in the same directory. Claude reads `.forgehive/` automatically at session start and knows your stack, constraints, and memory.
37
+
38
+ ---
39
+
40
+ ## What `fh init` Does
41
+
42
+ Running `fh init` in a project:
43
+
44
+ 1. Scans your project — language, framework, dependencies, directory structure
45
+ 2. Creates `.forgehive/` with capabilities, memory files, 16 expert skills, agent permissions
46
+ 3. Merges a context block into `CLAUDE.md` (creates it if it doesn't exist, never overwrites existing content)
47
+ 4. Writes `AGENTS.md` to the project root (works with Cursor, Copilot, Gemini CLI, Codex, Windsurf)
48
+
49
+ The result looks like this:
50
+
51
+ ```
52
+ my-project/
53
+ .forgehive/
54
+ capabilities.yaml ← detected stack (status: draft → confirmed)
55
+ harness/
56
+ constraints.yaml ← max_lines, require_tests, style rules
57
+ permissions.yaml ← per-agent file access control
58
+ memory/
59
+ MEMORY.md ← index of all memory files
60
+ project.md ← project context and open decisions
61
+ feedback.md ← corrections + confirmed approaches
62
+ stack.md ← details the scanner can't detect
63
+ adrs/ ← Architecture Decision Records
64
+ stories/ ← story cards (US-N.md)
65
+ epics/ ← epic cards (EPC-N.md)
66
+ velocity.md ← sprint velocity history
67
+ skills/expert/ ← 16 preinstalled expert skills
68
+ AGENTS.md
69
+ CLAUDE.md ← forgehive block appended, nothing overwritten
70
+ ```
71
+
72
+ **Already have a `.forgehive/`?** `fh init` prints a warning and stops. Use `fh init --force` to re-initialize, or `fh scan --update` to update only the scan.
73
+
74
+ ---
75
+
76
+ ## The Two Statuses: Draft and Confirmed
77
+
78
+ After `fh init`, `capabilities.yaml` is in `status: draft`. Claude won't treat the context as authoritative until you run:
79
+
80
+ ```bash
81
+ fh confirm
82
+ ```
83
+
84
+ This is intentional — review what the scanner detected before committing to it. Open `capabilities.yaml`, check that the language, framework, and dependencies look right, then confirm.
85
+
86
+ To check the current status at any time:
87
+
88
+ ```bash
89
+ fh status
90
+ ```
91
+
92
+ ---
93
+
94
+ ## Memory — Teaching Claude About Your Project
95
+
96
+ The memory files in `.forgehive/memory/` are the most important part of forgehive. Claude reads them at every session start. Write to them directly in your editor, or let Claude append to them at session end.
97
+
98
+ | File | What to put here |
99
+ |---|---|
100
+ | `project.md` | Architecture decisions, goals, open questions |
101
+ | `feedback.md` | Things Claude got wrong, things that worked well |
102
+ | `stack.md` | Auth patterns, deploy targets, things the scanner missed |
103
+ | `adrs/` | Architecture Decision Records |
104
+
105
+ **Create an ADR:**
106
+
107
+ ```bash
108
+ fh docs adr "Use Postgres over MongoDB"
109
+ fh memory adr list # list all ADRs
110
+ ```
111
+
112
+ **View all memory:**
113
+
114
+ ```bash
115
+ fh memory show
116
+ ```
117
+
118
+ **Export for sharing:**
119
+
120
+ ```bash
121
+ fh memory snapshot export ./team-memory.json
122
+ fh memory snapshot import ./team-memory.json # on another machine (skips existing files)
123
+ ```
124
+
125
+ **Share with your team via git:**
126
+
127
+ ```bash
128
+ fh sync push # push .forgehive/memory/ to a dedicated git branch
129
+ fh sync pull # pull on another machine
130
+ ```
131
+
132
+ ---
133
+
134
+ ## Keeping Context Fresh
135
+
136
+ Claude's context drifts when the codebase changes significantly. Run:
137
+
138
+ ```bash
139
+ fh scan --check # is the snapshot still current? (exits 1 if outdated)
140
+ fh scan --update # re-scan and update capabilities.yaml
141
+ ```
142
+
143
+ Put `fh scan --check` in your CI pipeline to alert when the context needs refreshing.
144
+
145
+ ---
146
+
147
+ ## Documentation
148
+
149
+ Generate documentation from your project's stack, memory, and git history:
150
+
151
+ ```bash
152
+ fh docs # list existing documentation
153
+ fh docs user # user guide → docs/user-guide.md
154
+ fh docs api # API reference from exports → docs/api.md
155
+ fh docs onboard # onboarding doc → ONBOARDING.md
156
+ fh docs changelog # semantic changelog → CHANGELOG.md
157
+ fh docs changelog --since v1.0 # only changes since a tag
158
+ fh docs adr "<title>" # Architecture Decision Record
159
+ ```
160
+
161
+ Custom output paths:
162
+
163
+ ```bash
164
+ fh docs user --output ./guides/getting-started.md
165
+ fh docs api --output ./docs/reference.md
166
+ ```
167
+
168
+ ---
169
+
170
+ ## Security
171
+
172
+ ```bash
173
+ fh security scan # scan for secrets + SAST vulnerabilities
174
+ fh security deps # check npm dependencies for CVEs
175
+ fh security report # CISO-ready Markdown report
176
+ fh security report gdpr # GDPR-specific checks
177
+ fh security report soc2 # SOC 2 relevant controls
178
+ fh security report hipaa # HIPAA technical safeguards
179
+ fh security audit # view the JSONL audit trail
180
+ fh security permissions # show per-agent file access rules
181
+ ```
182
+
183
+ `fh security scan` exits with code 1 if CRITICAL or HIGH findings exist — safe to use as a CI gate. Secrets are never stored verbatim: only the first 6 characters appear in output, followed by `***`.
184
+
185
+ ---
186
+
187
+ ## Story Cards and Sprint Planning
188
+
189
+ Lightweight agile tracking inside `.forgehive/memory/`:
190
+
191
+ ```bash
192
+ # Epics
193
+ fh epic create "User Authentication" --goal "Users can log in securely"
194
+ fh epic list
195
+ fh epic show EPC-1
196
+
197
+ # Stories
198
+ fh story create "As a user I want to log in" --epic EPC-1 --points 3
199
+ fh story list
200
+ fh story show US-1
201
+ fh story sprint US-1 # pull into current sprint
202
+ fh story done US-1 # mark done
203
+ fh story done US-1 --points 5 # mark done and record actual points
204
+
205
+ # Velocity
206
+ fh velocity record sprint-3 --committed 21 --delivered 18
207
+ fh velocity show # history + rolling average + capacity recommendation
208
+ ```
209
+
210
+ In a Claude Code session, run `/fh-sprint` to let Claude read the backlog and velocity data and suggest a realistic sprint scope.
211
+
212
+ ---
213
+
214
+ ## Party Mode — Parallel Agent Sessions
215
+
216
+ Party Mode runs specialized agent sets in parallel, each in an isolated git worktree. Use this for reviews, design sessions, or full-release audits.
217
+
218
+ ```bash
219
+ fh party run # start the default (build) party
220
+ fh party status # check active sessions
221
+ fh party cleanup # remove finished worktrees
222
+ ```
223
+
224
+ **Available party sets — trigger in Claude Code with the slash command:**
225
+
226
+ | Slash Command | Agents | Use for |
227
+ |---|---|---|
228
+ | `/party` | Viktor + Kai + Sam | Feature development |
229
+ | `/design-party` | Suki + Viktor | UI/UX and architecture |
230
+ | `/review-party` | Kai + Sam + Eli | Code review, tests, docs |
231
+ | `/security-party` | Vera + Sam | Security audit |
232
+ | `/full-party` | All 8 agents | Major releases |
233
+
234
+ Each agent works in its own worktree branch. After the party completes, review each agent's findings and merge selectively.
235
+
236
+ ---
237
+
238
+ ## Slash Commands in Claude Code
239
+
240
+ These commands are available inside any Claude Code session in a forgehive-initialized project:
241
+
242
+ | Command | What it does |
243
+ |---|---|
244
+ | `/fh-sprint` | Sprint planning from backlog + velocity data |
245
+ | `/fh-ship` | Pre-ship checklist: tests, diff, PR draft |
246
+ | `/fh-review` | Structured code review |
247
+ | `/fh-hotfix` | Minimal hotfix protocol (< 50 lines rule) |
248
+ | `/fh-test-this` | Generate tests for the current file |
249
+ | `/fh-docs` | Interactive documentation generation |
250
+ | `/fh-start-task` | Start a new feature branch with full context |
251
+ | `/fh-deploy` | Pre-deploy checklist |
252
+ | `/party` | Start build party (Viktor + Kai + Sam) |
253
+ | `/design-party` | Start design party (Suki + Viktor) |
254
+ | `/review-party` | Start review party (Kai + Sam + Eli) |
255
+ | `/security-party` | Start security party (Vera + Sam) |
256
+ | `/full-party` | Start all 8 agents |
257
+
258
+ ---
259
+
260
+ ## MCP — Connecting External Services
261
+
262
+ Wire Claude Code to external services in one command:
263
+
264
+ ```bash
265
+ fh wire linear # Linear issue tracker
266
+ fh wire github # GitHub
267
+ fh wire slack # Slack
268
+ fh wire notion # Notion
269
+ fh wire postgres # PostgreSQL
270
+ ```
271
+
272
+ Also supported: `sentry`, `jira`, `pagerduty`, `datadog`, `figma`.
273
+
274
+ Store API keys securely (encrypted at `~/.forgehive/credentials.json`, chmod 600):
275
+
276
+ ```bash
277
+ fh mcp auth add github GITHUB_TOKEN=ghp_yourtoken
278
+ fh mcp auth add linear LINEAR_API_KEY=lin_api_key
279
+ fh mcp auth list # see which services have credentials
280
+ fh mcp auth remove github # delete credentials for a service
281
+ ```
282
+
283
+ ---
284
+
285
+ ## Cost Tracking
286
+
287
+ ```bash
288
+ fh cost # all-time Claude session costs
289
+ fh cost today # today's costs
290
+ fh cost week # this week
291
+ fh cost --limit 20 # set a hard spend limit of $20
292
+ fh cost --alert 15 # set an alert threshold at $15
293
+ ```
294
+
295
+ Spend limits are enforced every time `fh cost` runs. At the alert threshold: warning printed. At the hard limit: non-zero exit — usable as a CI gate.
296
+
297
+ ---
298
+
299
+ ## CI Integration
300
+
301
+ ```bash
302
+ fh ci # CI health report
303
+ fh ci --format markdown # Markdown output
304
+ fh ci --fail-on high # exit 1 on HIGH or CRITICAL findings
305
+ fh ci --init # scaffold .github/workflows/forgehive.yml
306
+ ```
307
+
308
+ `fh ci` aggregates security scan, dependency audit, and test results. The `--fail-on` flag controls which severity level blocks the pipeline.
309
+
310
+ ---
311
+
312
+ ## Removing forgehive
313
+
314
+ ```bash
315
+ fh rollback
316
+ ```
317
+
318
+ Removes `.forgehive/` and the forgehive block from `CLAUDE.md`. Everything else in `CLAUDE.md` is preserved. `AGENTS.md` is left in place (it's a standard file other tools use too — delete it manually if you don't want it).
319
+
320
+ ---
321
+
322
+ ## Troubleshooting
323
+
324
+ **`fh init` says forgehive is already initialized**
325
+ Use `fh init --force` to re-initialize, or `fh scan --update` to refresh only the scan.
326
+
327
+ **Claude doesn't seem to pick up the context**
328
+ Make sure `fh confirm` was run — check `fh status`. The context is inactive while `status: draft`.
329
+
330
+ **`fh scan --check` exits with an error**
331
+ Your codebase has changed significantly since the last scan. Run `fh scan --update` to refresh.
332
+
333
+ **Party Mode: worktrees left over after a session**
334
+ Run `fh party cleanup` to remove all finished worktrees.
335
+
336
+ **`fh cost` shows no data**
337
+ Cost tracking reads `~/.claude/` — requires Claude Code to be installed and to have run at least one session.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "forgehive",
3
- "version": "0.7.6",
3
+ "version": "0.7.7",
4
4
  "description": "Context-aware AI development environment — one binary, your stack.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -9,6 +9,7 @@
9
9
  },
10
10
  "files": [
11
11
  "dist/",
12
+ "docs/",
12
13
  "forgehive/"
13
14
  ],
14
15
  "keywords": [