forgedock 1.0.9 → 1.0.11
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 +84 -0
- package/bin/forgedock.mjs +537 -5627
- package/bin/init-detect.mjs +1 -1
- package/bin/init-enrich-api.mjs +20 -2
- package/bin/tui.mjs +60 -43
- package/commands/forgedock-init.md +498 -317
- package/commands/work-on.md +19 -0
- package/docs/CONFIG.md +37 -0
- package/docs/FORGE-PROTOCOL.md +740 -0
- package/docs/anthropic-devrel-outreach.md +197 -0
- package/docs/articles/devto-how-i-built-an-ai-agent-that-never-forgets.md +165 -0
- package/docs/demo.tape +113 -0
- package/docs/distribution-submissions.md +181 -0
- package/docs/launch/reddit-r-claudeai.md +83 -0
- package/docs/launch/reddit-r-devops.md +80 -0
- package/docs/launch/reddit-r-localllama.md +86 -0
- package/docs/launch/reddit-r-programming.md +81 -0
- package/docs/launch/reddit-r-sideproject.md +84 -0
- package/docs/launch/show-hn.md +84 -0
- package/docs/site/command-reference.md +423 -0
- package/docs/site/forge-annotation-protocol.md +266 -0
- package/docs/site/getting-started.md +168 -0
- package/docs/site/how-it-works.md +191 -0
- package/docs/site/index.md +59 -0
- package/docs/site/vs-manual-workflows.md +167 -0
- package/docs/twitter-launch-thread.md +303 -0
- package/docs/youtube-demo-script.md +297 -0
- package/package.json +1 -1
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# Anthropic DevRel Outreach — ForgeDock
|
|
2
|
+
|
|
3
|
+
Campaign playbook for getting ForgeDock featured in the Claude Code ecosystem. Execute each channel in order; update the tracking table after each action.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Assets Ready
|
|
8
|
+
|
|
9
|
+
These assets are live and can be referenced in any outreach:
|
|
10
|
+
|
|
11
|
+
| Asset | Link | Status |
|
|
12
|
+
|-------|------|--------|
|
|
13
|
+
| GitHub repository | https://github.com/RapierCraftStudios/ForgeDock | ✅ Live |
|
|
14
|
+
| npm package | https://www.npmjs.com/package/forgedock | ✅ Live |
|
|
15
|
+
| Plugin marketplace listing | https://github.com/dev-gom/claude-code-marketplace | ✅ Submitted (#541) |
|
|
16
|
+
| Demo GIF | `docs/demo.tape` (generated asset) | ✅ Ready (#542) |
|
|
17
|
+
| FORGE Annotation Protocol spec | `docs/FORGE-PROTOCOL.md` | ✅ Published (#553) |
|
|
18
|
+
| dev.to article | `docs/articles/devto-how-i-built-an-ai-agent-that-never-forgets.md` | ✅ Draft ready (#549) |
|
|
19
|
+
| Awesome list submissions | `docs/distribution-submissions.md` | ✅ Documented (#552) |
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Canonical Pitch (3 sentences)
|
|
24
|
+
|
|
25
|
+
> ForgeDock is an autonomous development pipeline for Claude Code that uses GitHub as a persistent knowledge graph. Every pipeline stage (investigate → architect → build → review → merge) writes structured FORGE annotations to GitHub issues and PRs — so agents always know what happened before them, why the code looks the way it does, and what to do next. Install in seconds: `npx forgedock`, then run `/work-on #42`.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Channel 1: Direct Email to Anthropic DevRel
|
|
30
|
+
|
|
31
|
+
**Target**: Alex Albert (leads Claude Code), Anthropic DevRel team
|
|
32
|
+
**Contact path**: Twitter/X DM (`@alexalbert__`), or via Anthropic's developer contact form at https://www.anthropic.com/contact
|
|
33
|
+
**Goal**: Get featured in Claude Code official docs community section, or secure a case study / guest blog post opportunity
|
|
34
|
+
|
|
35
|
+
### Email / DM Template
|
|
36
|
+
|
|
37
|
+
**Subject**: ForgeDock — Claude Code pipeline that demos what the command system can fully do
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
Hi Alex,
|
|
42
|
+
|
|
43
|
+
I built ForgeDock — an autonomous development pipeline for Claude Code that uses GitHub as a persistent knowledge graph for AI agents.
|
|
44
|
+
|
|
45
|
+
**What it does**: Install with `npx forgedock`, then type `/work-on #42`. Claude Code investigates the issue, writes an architecture plan, implements the fix, runs a quality gate, opens a PR, reviews it with specialized agents, and merges — all autonomously. Every stage writes structured FORGE annotations back to GitHub so the next agent picks up exactly where the previous one left off. No context loss between sessions.
|
|
46
|
+
|
|
47
|
+
**Why it might interest you**:
|
|
48
|
+
- It's a showcase of what Claude Code's command system can do at full depth — 25+ commands, multi-agent coordination, GitHub-as-knowledge-graph
|
|
49
|
+
- It's already being used on production codebases (dogfood: ForgeDock's own issues are built by ForgeDock)
|
|
50
|
+
- I published a formal FORGE Annotation Protocol spec (open standard for AI agent communication via GitHub)
|
|
51
|
+
|
|
52
|
+
**What I'm asking for**:
|
|
53
|
+
- If there's a community tools / ecosystem section in the Claude Code docs, I'd love ForgeDock listed there
|
|
54
|
+
- Happy to write a guest blog post, be a case study, or demo it for the team — whatever's useful
|
|
55
|
+
|
|
56
|
+
GitHub: https://github.com/RapierCraftStudios/ForgeDock
|
|
57
|
+
npm: https://www.npmjs.com/package/forgedock
|
|
58
|
+
|
|
59
|
+
Thanks for building Claude Code — it's genuinely the best AI dev tool I've used.
|
|
60
|
+
|
|
61
|
+
[Your name]
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
**Send via**: Twitter/X DM to `@alexalbert__` is the most direct path. Anthropic's contact form is the backup.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Channel 2: Anthropic Discord
|
|
70
|
+
|
|
71
|
+
**Target**: Anthropic's official Discord server — Claude Code channels
|
|
72
|
+
**Goal**: Build genuine community presence; get noticed by Anthropic staff who monitor their own Discord
|
|
73
|
+
**Discord**: https://discord.gg/anthropic (official) — look for `#claude-code`, `#show-your-work`, or `#developer-tools` channels
|
|
74
|
+
|
|
75
|
+
### Discord Message Script
|
|
76
|
+
|
|
77
|
+
**For `#show-your-work` or `#claude-code` channel**:
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
Hey everyone — I built something I think you'll find useful if you're using Claude Code heavily.
|
|
82
|
+
|
|
83
|
+
**ForgeDock** — autonomous dev pipeline for Claude Code that uses GitHub as a persistent knowledge graph.
|
|
84
|
+
|
|
85
|
+
The core idea: AI agents forget everything between sessions. ForgeDock fixes that by having every pipeline stage write structured FORGE annotations to GitHub issues and PRs. The next agent (even in a new session) reads those annotations and picks up exactly where the last one left off.
|
|
86
|
+
|
|
87
|
+
**In practice**: type `/work-on #42`, Claude Code:
|
|
88
|
+
1. Investigates the issue (reads git blame, past bugs, related PRs)
|
|
89
|
+
2. Writes an architecture plan
|
|
90
|
+
3. Implements the fix
|
|
91
|
+
4. Runs a quality gate
|
|
92
|
+
5. Opens a PR and reviews it with specialized agents
|
|
93
|
+
6. Merges
|
|
94
|
+
|
|
95
|
+
Install: `npx forgedock`
|
|
96
|
+
GitHub: https://github.com/RapierCraftStudios/ForgeDock
|
|
97
|
+
|
|
98
|
+
Happy to answer questions or demo it. Built 100% with Claude Code — ForgeDock builds itself. 🔁
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
**Engagement tips**:
|
|
103
|
+
- Reply genuinely to questions in the thread
|
|
104
|
+
- If others share Claude Code workflows, engage with value before sharing ForgeDock
|
|
105
|
+
- Do NOT post the same message in multiple channels the same day — pick one channel, post once, engage for 48h before other channels
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Channel 3: Claude Code Docs Listing
|
|
110
|
+
|
|
111
|
+
**Target**: https://docs.anthropic.com/en/docs/claude-code — community resources / ecosystem section
|
|
112
|
+
**Goal**: Get ForgeDock listed as a community tool in the official Claude Code documentation
|
|
113
|
+
|
|
114
|
+
### Submission Approach
|
|
115
|
+
|
|
116
|
+
Anthropic's docs are maintained at https://github.com/anthropics/anthropic-sdk-python (API docs) but Claude Code docs may be at a separate repo. Check:
|
|
117
|
+
1. https://github.com/anthropics/claude-code (if public)
|
|
118
|
+
2. https://github.com/anthropics/anthropic-quickstarts
|
|
119
|
+
3. Contact via DevRel (Channel 1) and ask where to submit community tool PRs
|
|
120
|
+
|
|
121
|
+
### Formatted Listing Entry
|
|
122
|
+
|
|
123
|
+
Use this in a PR or suggestion:
|
|
124
|
+
|
|
125
|
+
```markdown
|
|
126
|
+
### ForgeDock
|
|
127
|
+
[ForgeDock](https://github.com/RapierCraftStudios/ForgeDock) — Autonomous development pipeline for Claude Code. Uses GitHub as a persistent knowledge graph: agents investigate, architect, build, quality-gate, review, and merge with full context persistence across sessions. Install: `npx forgedock`.
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**Category to target**: Community Tools / Extensions / Third-party integrations
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Channel 4: Twitter/X Mention
|
|
135
|
+
|
|
136
|
+
**Target**: `@AnthropicAI` and `@alexalbert__`
|
|
137
|
+
**Goal**: Public mention that prompts engagement or retweet from official accounts
|
|
138
|
+
|
|
139
|
+
### Tweet Template
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
I built an autonomous dev pipeline for @ClaudeAI Code that uses GitHub as a persistent knowledge graph for AI agents.
|
|
143
|
+
|
|
144
|
+
Every agent in the pipeline reads what came before it — investigation findings, architecture decisions, past bugs — so nothing gets lost between sessions.
|
|
145
|
+
|
|
146
|
+
25+ commands. Full investigate → build → review → merge cycle.
|
|
147
|
+
|
|
148
|
+
npx forgedock
|
|
149
|
+
|
|
150
|
+
github.com/RapierCraftStudios/ForgeDock
|
|
151
|
+
|
|
152
|
+
@alexalbert__ would love your thoughts on using it as a Claude Code case study 🙏
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
**Post timing**: Post after Anthropic Discord engagement (Channel 2) — social proof from Discord replies strengthens the tweet.
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Tracking Table
|
|
160
|
+
|
|
161
|
+
| Channel | Action | Status | Date | Follow-up Due | Notes |
|
|
162
|
+
|---------|--------|--------|------|---------------|-------|
|
|
163
|
+
| Direct email / DM | Send to @alexalbert__ | ⬜ Not sent | — | — | |
|
|
164
|
+
| Anthropic Discord | Post in Claude Code channel | ⬜ Not posted | — | — | |
|
|
165
|
+
| Claude Code docs | Submit PR or suggestion | ⬜ Not submitted | — | — | Find correct repo first |
|
|
166
|
+
| Twitter/X | Tweet mentioning @alexalbert__ | ⬜ Not posted | — | — | Post after Discord |
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## Follow-up Cadence
|
|
171
|
+
|
|
172
|
+
After each initial outreach action:
|
|
173
|
+
|
|
174
|
+
| Timing | Action |
|
|
175
|
+
|--------|--------|
|
|
176
|
+
| Day 0 | Send initial outreach (email DM / Discord post) |
|
|
177
|
+
| Day 7 | If no response to DM: send one follow-up. If Discord post got engagement: reply to any threads. |
|
|
178
|
+
| Day 14 | If still no response: move to async — submit Claude Code docs PR directly without waiting for DevRel response |
|
|
179
|
+
| Day 30 | Reassess. If featured: document in this file. If not: try Anthropic contact form with a different angle (FORGE Protocol as open standard). |
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Success Criteria
|
|
184
|
+
|
|
185
|
+
- [ ] Outreach email/DM sent to Anthropic DevRel — update tracking table
|
|
186
|
+
- [ ] ForgeDock shared in Anthropic Discord — update tracking table
|
|
187
|
+
- [ ] PR/suggestion submitted for Claude Code docs listing — update tracking table
|
|
188
|
+
- [ ] Follow-up within 1 week if no response — update tracking table
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## Related Assets
|
|
193
|
+
|
|
194
|
+
- `docs/distribution-submissions.md` — canonical description + awesome list submissions
|
|
195
|
+
- `docs/FORGE-PROTOCOL.md` — FORGE Annotation Protocol spec (shareable with Anthropic as ecosystem contribution)
|
|
196
|
+
- `docs/articles/devto-how-i-built-an-ai-agent-that-never-forgets.md` — long-form story for blog pitch
|
|
197
|
+
- `docs/youtube-demo-script.md` — demo video script (reference for pitch)
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "How I Built an AI Agent That Never Forgets"
|
|
3
|
+
description: "AI coding agents forget everything between sessions. Here's how I used GitHub as a knowledge graph to give them persistent, structured memory — and the surprising insight that made it work."
|
|
4
|
+
tags: ["ai", "github", "productivity", "opensource"]
|
|
5
|
+
cover_image: # Add social preview image URL (see issue #543)
|
|
6
|
+
canonical_url: https://github.com/RapierCraftStudios/ForgeDock
|
|
7
|
+
published: false
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
<!-- DEMO GIF PLACEHOLDER: Insert demo GIF here once issue #542 is complete -->
|
|
11
|
+
<!-- Suggested: zero-to-PR speedrun showing /work-on running the full pipeline -->
|
|
12
|
+
|
|
13
|
+
I've been running AI coding agents on production codebases for about a year. The workflow is genuinely useful — but there's a problem that kept surfacing no matter which model or tool I used.
|
|
14
|
+
|
|
15
|
+
Every session starts from scratch.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## The Problem
|
|
20
|
+
|
|
21
|
+
My agent doesn't know what it fixed yesterday. It doesn't know that the function it's about to touch was shaped by a nasty race condition discovered in PR #891 six months ago. It doesn't know that three other files use the same pattern and will need the same fix. It doesn't know that the last time someone tried this approach, it caused a production incident for a specific class of users.
|
|
22
|
+
|
|
23
|
+
Context window isn't the bottleneck. **Memory is.**
|
|
24
|
+
|
|
25
|
+
When a conversation ends or a context compaction happens, everything the agent learned — every hypothesis it tested, every file it read, every connection it made — is gone. The next agent starts from a blank slate. The investigation gets repeated. The same mistakes get made. There's no institutional knowledge.
|
|
26
|
+
|
|
27
|
+
This isn't an AI limitation. It's a systems design problem. And once I framed it that way, the solution became obvious.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## The Failed Approaches
|
|
32
|
+
|
|
33
|
+
I tried the obvious fixes first.
|
|
34
|
+
|
|
35
|
+
**Long CLAUDE.md files** — I kept adding to my project instructions until they were 3,000 words of context. It helped with conventions but didn't solve the knowledge gap. CLAUDE.md is static. It doesn't know which specific files have been touched, what bugs were found in module X last week, or what architectural decision was made in PR #342 and why. It's a README for the agent, not a memory system.
|
|
36
|
+
|
|
37
|
+
**Massive context windows** — Just feeding the agent more files to read. This works for small, well-scoped tasks. It breaks down at scale: too much noise, too many tokens, and still no ability to recall *prior decisions* made by *prior agents*. A 200k token context window doesn't help you remember what you decided three sessions ago if that decision isn't written down somewhere the next agent will read.
|
|
38
|
+
|
|
39
|
+
**RAG over the codebase** — Vector databases of code snippets. Better than nothing, but it retrieves *what the code looks like*, not *why it looks that way*. The investigative context — the root cause analysis, the rejected approaches, the cross-file impact assessment — isn't in the code. It's in the conversation that led to the code. And that conversation disappeared when the session ended.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## The Insight
|
|
44
|
+
|
|
45
|
+
Here's the thing I kept overlooking: GitHub already stores everything an agent needs to know.
|
|
46
|
+
|
|
47
|
+
Issues document what went wrong and why. Pull requests record what changed and link back to the issue that prompted it. Commit messages reference both. `git blame` traces any line of code back to the PR that introduced it, and from there to the issue that motivated it. Cross-references are built in.
|
|
48
|
+
|
|
49
|
+
GitHub is already a knowledge graph. It's just not structured for AI agents to query efficiently.
|
|
50
|
+
|
|
51
|
+
The insight that changed everything: **make the knowledge machine-readable at write time.** Instead of having agents try to parse human-written issue comments after the fact, have every pipeline stage write structured, machine-readable annotations *as it works*. Then the next agent — in the next session, on a completely different task — can query those annotations and get exactly the structured context it needs.
|
|
52
|
+
|
|
53
|
+
Not "read all the comments and figure it out." Read `<!-- FORGE:INVESTIGATOR -->` and get a structured JSON-like summary: affected files, root cause, confidence level, recommendation. Read `<!-- FORGE:CONTEXT -->` and get the pitfalls found in prior review findings for those same files.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## The Implementation
|
|
58
|
+
|
|
59
|
+
I built a system called ForgeDock. At its core, it's a pipeline of Claude Code slash commands that coordinate through GitHub using structured HTML comment annotations.
|
|
60
|
+
|
|
61
|
+
Here's what it looks like in practice:
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
┌─────────────────────────────────────────────────────────────────────┐
|
|
65
|
+
│ GITHUB (Knowledge Graph) │
|
|
66
|
+
│ │
|
|
67
|
+
│ Issues: FORGE:INVESTIGATOR → FORGE:CONTRACT → FORGE:ARCHITECT │
|
|
68
|
+
│ PRs: FORGE:BUILDER → FORGE:REVIEW → FORGE:TRAJECTORY │
|
|
69
|
+
│ Links: git blame → commit → PR → issue → related issues │
|
|
70
|
+
│ │
|
|
71
|
+
│ Every agent reads this. Every agent writes to it. │
|
|
72
|
+
│ Nothing is lost between conversations. │
|
|
73
|
+
└─────────────────────────────────────────────────────────────────────┘
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
When you run `/work-on #42`, the pipeline stages execute in sequence. Each stage writes a structured annotation to the GitHub issue before the next stage starts.
|
|
77
|
+
|
|
78
|
+
**FORGE:INVESTIGATOR** — The investigation agent reads the codebase, verifies the claim in the issue, traces the root cause to specific files and commits, and writes a structured report:
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
<!-- FORGE:INVESTIGATOR -->
|
|
82
|
+
**Verdict**: CONFIRMED
|
|
83
|
+
**Confidence**: HIGH
|
|
84
|
+
**Root Cause**: payment_validator.py:143 assumes all users have a billing profile.
|
|
85
|
+
Free-tier users don't. Introduced in commit e8f21a3 (PR #38).
|
|
86
|
+
**Affected Files**: payment_validator.py, api/routes/payments.py
|
|
87
|
+
**Recommendation**: Add nil-check before billing profile access.
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**FORGE:CONTEXT** — Before the builder writes a single line of code, a context agent queries GitHub for institutional memory: past review findings on those specific files, prior bugs in the same module, related PRs that touched the same functions. It surfaces this as a structured advisory:
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
<!-- FORGE:CONTEXT -->
|
|
94
|
+
**Known Pitfall**: Don't skip the audit log write on early returns in this module.
|
|
95
|
+
Prior bug #34 did exactly this and caused a compliance gap.
|
|
96
|
+
**Historical Finding**: Free-tier guard was also missing in invoices.py (#43) —
|
|
97
|
+
check for the same pattern there.
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
The builder agent reads this context before writing code. It doesn't re-discover known pitfalls. It doesn't repeat mistakes that were fixed six months ago.
|
|
101
|
+
|
|
102
|
+
**FORGE:ARCHITECT** — An architecture agent traces all affected code paths, builds an ordered implementation plan, and identifies consistency invariants. The builder follows this plan exactly, in order.
|
|
103
|
+
|
|
104
|
+
**FORGE:BUILDER** — The implementation agent works in a git worktree, reads the full context chain, implements the fix, runs quality gates, and commits.
|
|
105
|
+
|
|
106
|
+
**FORGE:TRAJECTORY** — After the PR merges, a trajectory entry is written to the issue recording the full pipeline result: investigation verdict, quality gate result, review findings, merge details. Future context agents read this when working on related issues.
|
|
107
|
+
|
|
108
|
+
The key principle: **every agent writes what it learned, so the next agent doesn't have to rediscover it.**
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## Results
|
|
113
|
+
|
|
114
|
+
Here's a concrete before/after.
|
|
115
|
+
|
|
116
|
+
**Before ForgeDock:** An agent gets issue #47 — "Billing fails for users who signed up before the subscription migration." The agent reads the codebase, explores billing-related files, eventually finds the inconsistency in the subscription lookup logic. Takes 15-20 minutes of investigation. Misses the fact that the same pattern exists in the invoices endpoint too. Fix is incomplete. Review catches it. Another iteration.
|
|
117
|
+
|
|
118
|
+
**After ForgeDock:** The context agent queries GitHub for past bugs in the billing module. It finds FORGE:TRAJECTORY from issue #38 (payment nil-check fix) and #43 (invoices nil-check fix). The investigation comment from #43 explicitly noted: "same nil-check pattern also exists in subscriptions.py — not fixed in this PR, tracked as follow-up." That follow-up is issue #47.
|
|
119
|
+
|
|
120
|
+
The agent already knows: the root cause is a nil-check pattern that was incompletely applied across three files. It knows which files. It knows which commit introduced the pattern. It knows what the fix looks like — it was already implemented correctly in two other files. Investigation takes 3 minutes. Implementation is straightforward. Review passes first time.
|
|
121
|
+
|
|
122
|
+
Another example: I was working on a feature to add rate limiting to the API. The context agent surfaced a review finding from PR #91 — "Rate limiting middleware must be applied before the auth middleware, not after — see the ordering note in middleware.md." That finding was written by a review agent eight months ago on a completely different PR. It saved me from introducing an ordering bug that would have bypassed auth for rate-limited requests.
|
|
123
|
+
|
|
124
|
+
The system gets smarter over time because the knowledge compounds. Every fix, every review finding, every architectural decision becomes queryable structured data for future agents.
|
|
125
|
+
|
|
126
|
+
There's a subtler benefit too: **the pipeline makes agents deterministic.** Without structured context, agents make different decisions on the same problem depending on which files they happen to read first and what associations their current session happens to surface. With ForgeDock, every agent working on related issues reads the same FORGE annotations. They make consistent decisions because they're working from the same structured data, not from vibes.
|
|
127
|
+
|
|
128
|
+
The review layer adds another dimension. ForgeDock's `/review-pr` command runs nine specialized review agents against every PR — each focused on a specific domain: concurrency, auth, SQL safety, frontend proxy wiring, deployment completeness, and so on. Each agent's findings become new GitHub issues, which flow through the same pipeline. Over time, the review agents get better at catching the specific bug classes that have appeared in your codebase before, because those patterns are recorded as structured findings in GitHub. The same nil-check pattern that caused a bug in the billing module will be caught by the context agent when someone touches the invoices module two months later.
|
|
129
|
+
|
|
130
|
+
It's not magic. It's just structured data, written consistently, read reliably.
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Try It
|
|
135
|
+
|
|
136
|
+
ForgeDock is open source and installs in two commands:
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
# Step 1: Install pipeline commands
|
|
140
|
+
npx forgedock
|
|
141
|
+
|
|
142
|
+
# Step 2: Generate config for your repo
|
|
143
|
+
npx forgedock init
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
`npx forgedock init` auto-detects your repo, owner, and branches, and creates a `forge.yaml` config file. Then inside Claude Code:
|
|
147
|
+
|
|
148
|
+
```
|
|
149
|
+
/work-on #42
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
That's it. The pipeline runs: investigate → build → quality gate → PR creation → review → merge.
|
|
153
|
+
|
|
154
|
+
The full source is at [github.com/RapierCraftStudios/ForgeDock](https://github.com/RapierCraftStudios/ForgeDock). AGPL-3.0 — free to use, modify, and self-host. If you build on it or extend it, open your modifications.
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
*Tags: #ai #github #productivity #opensource*
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
**Cross-post notes:**
|
|
163
|
+
- Hashnode: Same content, update canonical_url to point to dev.to post after publishing
|
|
164
|
+
- Medium: Publish after dev.to if reach warrants (dev.to SEO compounds faster)
|
|
165
|
+
- Optimal publish time: Tuesday-Thursday 9-10am ET for dev.to algorithm
|
package/docs/demo.tape
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# ForgeDock Demo — Zero to PR Speedrun
|
|
2
|
+
# Generates: docs/demo.gif
|
|
3
|
+
#
|
|
4
|
+
# Requirements: https://github.com/charmbracelet/vhs
|
|
5
|
+
# Usage: vhs docs/demo.tape
|
|
6
|
+
#
|
|
7
|
+
# Shows the full /work-on pipeline:
|
|
8
|
+
# 1. File a GitHub issue
|
|
9
|
+
# 2. Run /work-on — agent investigates, architects, builds, and opens a PR
|
|
10
|
+
#
|
|
11
|
+
# Target: under 30 seconds, under 5MB
|
|
12
|
+
|
|
13
|
+
Output docs/demo.gif
|
|
14
|
+
|
|
15
|
+
Set FontSize 14
|
|
16
|
+
Set Width 1200
|
|
17
|
+
Set Height 650
|
|
18
|
+
Set Theme "Dracula"
|
|
19
|
+
Set TypingSpeed 60ms
|
|
20
|
+
Set PlaybackSpeed 1.0
|
|
21
|
+
|
|
22
|
+
# ── Step 1: Set the scene ─────────────────────────────────────────────────────
|
|
23
|
+
|
|
24
|
+
Type "# Zero to PR — ForgeDock speedrun"
|
|
25
|
+
Sleep 800ms
|
|
26
|
+
Enter
|
|
27
|
+
|
|
28
|
+
Sleep 400ms
|
|
29
|
+
|
|
30
|
+
# Show the issue we're working on
|
|
31
|
+
Type "gh issue view 42 -R your-org/your-repo --json title,body | jq -r '.title'"
|
|
32
|
+
Sleep 400ms
|
|
33
|
+
Enter
|
|
34
|
+
Sleep 1s
|
|
35
|
+
|
|
36
|
+
# ── Step 2: Launch Claude Code and invoke /work-on ───────────────────────────
|
|
37
|
+
|
|
38
|
+
Type "claude"
|
|
39
|
+
Sleep 400ms
|
|
40
|
+
Enter
|
|
41
|
+
Sleep 2s
|
|
42
|
+
|
|
43
|
+
Type "/work-on 42"
|
|
44
|
+
Sleep 400ms
|
|
45
|
+
Enter
|
|
46
|
+
Sleep 1.5s
|
|
47
|
+
|
|
48
|
+
# ── Step 3: Investigation phase ──────────────────────────────────────────────
|
|
49
|
+
# Agent reads the issue, searches the codebase, traces root cause
|
|
50
|
+
|
|
51
|
+
Sleep 500ms
|
|
52
|
+
Type "# Agent: Reading issue #42 → tracing root cause..."
|
|
53
|
+
Enter
|
|
54
|
+
Sleep 1s
|
|
55
|
+
|
|
56
|
+
# Simulate the agent reading files (fast-forward)
|
|
57
|
+
Sleep 800ms
|
|
58
|
+
Type "# [Investigation] Confirmed: nil-check missing in payment_validator.py:87"
|
|
59
|
+
Enter
|
|
60
|
+
Sleep 1s
|
|
61
|
+
|
|
62
|
+
# ── Step 4: Context + Architect phase ────────────────────────────────────────
|
|
63
|
+
# Agent reads historical findings, builds implementation plan
|
|
64
|
+
|
|
65
|
+
Type "# [Context] Found 2 historical bugs in this module (issues #29, #34)"
|
|
66
|
+
Enter
|
|
67
|
+
Sleep 800ms
|
|
68
|
+
|
|
69
|
+
Type "# [Architect] Implementation order: validator → router → tests"
|
|
70
|
+
Enter
|
|
71
|
+
Sleep 1s
|
|
72
|
+
|
|
73
|
+
# ── Step 5: Build phase ───────────────────────────────────────────────────────
|
|
74
|
+
# Agent writes the code
|
|
75
|
+
|
|
76
|
+
Type "# [Build] Writing fix to payment_validator.py..."
|
|
77
|
+
Enter
|
|
78
|
+
Sleep 1s
|
|
79
|
+
|
|
80
|
+
Type "git diff --stat"
|
|
81
|
+
Sleep 400ms
|
|
82
|
+
Enter
|
|
83
|
+
Sleep 1.2s
|
|
84
|
+
|
|
85
|
+
Type "git log --oneline -3"
|
|
86
|
+
Sleep 400ms
|
|
87
|
+
Enter
|
|
88
|
+
Sleep 800ms
|
|
89
|
+
|
|
90
|
+
# ── Step 6: PR opened ────────────────────────────────────────────────────────
|
|
91
|
+
|
|
92
|
+
Type "# [Review] Opening PR → /review-pr #107 --auto-merge"
|
|
93
|
+
Enter
|
|
94
|
+
Sleep 1s
|
|
95
|
+
|
|
96
|
+
Type "gh pr view 107 --json title,state | jq -r '\"PR: \" + .title + \" (\" + .state + \")\"'"
|
|
97
|
+
Sleep 400ms
|
|
98
|
+
Enter
|
|
99
|
+
Sleep 1.2s
|
|
100
|
+
|
|
101
|
+
# ── Step 7: Done ─────────────────────────────────────────────────────────────
|
|
102
|
+
|
|
103
|
+
Type "# Done. Issue → Investigation → Build → PR in one command."
|
|
104
|
+
Enter
|
|
105
|
+
Sleep 1.5s
|
|
106
|
+
|
|
107
|
+
Type "gh issue view 42 --json labels --jq '[.labels[].name]'"
|
|
108
|
+
Sleep 400ms
|
|
109
|
+
Enter
|
|
110
|
+
Sleep 1.5s
|
|
111
|
+
|
|
112
|
+
# Final pause before loop
|
|
113
|
+
Sleep 1s
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# ForgeDock Distribution Submissions
|
|
2
|
+
|
|
3
|
+
Submission tracker and content playbook for awesome list and community marketplace listings.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Canonical Description
|
|
8
|
+
|
|
9
|
+
Use this across all submissions (≤150 chars):
|
|
10
|
+
|
|
11
|
+
> **ForgeDock** — Autonomous AI dev pipeline for Claude Code. Uses GitHub issues/PRs as a structured knowledge graph so agents never lose context between sessions.
|
|
12
|
+
|
|
13
|
+
Long form (for platforms that allow more):
|
|
14
|
+
|
|
15
|
+
> ForgeDock turns GitHub into a persistent knowledge graph for Claude Code agents. Every pipeline stage (investigate → architect → build → review → merge) writes structured annotations to GitHub issues and PRs — so agents always know what happened before them, why the code looks the way it does, and what to do next. Install with `npx forgedock` and run `/work-on #42`.
|
|
16
|
+
|
|
17
|
+
**Links**:
|
|
18
|
+
- GitHub: https://github.com/RapierCraftStudios/ForgeDock
|
|
19
|
+
- npm: https://www.npmjs.com/package/forgedock
|
|
20
|
+
- License: AGPL-3.0
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Awesome List Submissions
|
|
25
|
+
|
|
26
|
+
### 1. awesome-claude-code-workflows
|
|
27
|
+
|
|
28
|
+
| Field | Value |
|
|
29
|
+
|-------|-------|
|
|
30
|
+
| **URL** | https://github.com/ithiria894/awesome-claude-code-workflows |
|
|
31
|
+
| **Category** | Workflow Automation / Pipeline Orchestration |
|
|
32
|
+
| **Status** | ⬜ Not submitted |
|
|
33
|
+
| **PR** | — |
|
|
34
|
+
|
|
35
|
+
**Submission format** (follow repo's CONTRIBUTING.md exactly):
|
|
36
|
+
```markdown
|
|
37
|
+
- [ForgeDock](https://github.com/RapierCraftStudios/ForgeDock) — Autonomous dev pipeline that uses GitHub as a structured knowledge graph. Agents investigate → architect → build → review → merge with full context persistence across sessions.
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
### 2. claude-code-marketplace
|
|
43
|
+
|
|
44
|
+
| Field | Value |
|
|
45
|
+
|-------|-------|
|
|
46
|
+
| **URL** | https://github.com/dev-gom/claude-code-marketplace |
|
|
47
|
+
| **Category** | Development Pipeline / AI Agents |
|
|
48
|
+
| **Status** | ⬜ Not submitted |
|
|
49
|
+
| **PR** | — |
|
|
50
|
+
|
|
51
|
+
**Submission format** (follow repo's CONTRIBUTING.md exactly):
|
|
52
|
+
```markdown
|
|
53
|
+
- [ForgeDock](https://github.com/RapierCraftStudios/ForgeDock) — `npx forgedock` — Autonomous AI dev pipeline for Claude Code. GitHub-as-knowledge-graph keeps agents context-aware across investigate → build → review → merge cycles.
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
### 3. awesome-ai-agents
|
|
59
|
+
|
|
60
|
+
Search for the highest-authority list in this space:
|
|
61
|
+
- https://github.com/e2b-dev/awesome-ai-agents
|
|
62
|
+
- https://github.com/slavakurilyak/awesome-ai-agents
|
|
63
|
+
- https://github.com/Jenqyang/Awesome-AI-Agents
|
|
64
|
+
|
|
65
|
+
| Field | Value |
|
|
66
|
+
|-------|-------|
|
|
67
|
+
| **Target** | Identify highest-star repo in category |
|
|
68
|
+
| **Category** | Developer Tools / Coding Agents |
|
|
69
|
+
| **Status** | ⬜ Not submitted |
|
|
70
|
+
| **PR** | — |
|
|
71
|
+
|
|
72
|
+
**Submission format**:
|
|
73
|
+
```markdown
|
|
74
|
+
- [ForgeDock](https://github.com/RapierCraftStudios/ForgeDock) — Autonomous development pipeline for Claude Code that uses GitHub as a persistent knowledge graph. Provides investigate → architect → build → quality-gate → review → merge pipeline with structured context annotations that survive agent compaction and session boundaries.
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
### 4. awesome-developer-tools
|
|
80
|
+
|
|
81
|
+
Search for the highest-authority list in this space:
|
|
82
|
+
- https://github.com/marcobiedermann/awesome-developer-tools (if active)
|
|
83
|
+
- Search GitHub for `awesome developer tools` sorted by stars
|
|
84
|
+
|
|
85
|
+
| Field | Value |
|
|
86
|
+
|-------|-------|
|
|
87
|
+
| **Target** | Identify highest-star repo in category |
|
|
88
|
+
| **Category** | AI / Automation / CLI Tools |
|
|
89
|
+
| **Status** | ⬜ Not submitted |
|
|
90
|
+
| **PR** | — |
|
|
91
|
+
|
|
92
|
+
**Submission format**:
|
|
93
|
+
```markdown
|
|
94
|
+
- [ForgeDock](https://github.com/RapierCraftStudios/ForgeDock) — Autonomous AI coding pipeline for Claude Code. Turns GitHub into a structured knowledge graph so agents never lose context between sessions. Install: `npx forgedock`.
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
### 5. Additional High-Value Lists (bonus)
|
|
100
|
+
|
|
101
|
+
| List | URL | Status |
|
|
102
|
+
|------|-----|--------|
|
|
103
|
+
| awesome-claude | Search GitHub | ⬜ Not submitted |
|
|
104
|
+
| awesome-llm-apps | https://github.com/Shubhamsaboo/awesome-llm-apps | ⬜ Not submitted |
|
|
105
|
+
| awesome-ai-tools | Various — search by stars | ⬜ Not submitted |
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Community Marketplaces
|
|
110
|
+
|
|
111
|
+
### Product Hunt
|
|
112
|
+
|
|
113
|
+
| Field | Value |
|
|
114
|
+
|-------|-------|
|
|
115
|
+
| **Status** | ⬜ Not submitted |
|
|
116
|
+
| **URL** | https://www.producthunt.com/posts/new |
|
|
117
|
+
| **Launch type** | Full product launch (not just a listing) |
|
|
118
|
+
|
|
119
|
+
**Submission checklist**:
|
|
120
|
+
- [ ] Schedule for a Tuesday or Wednesday (highest traffic days)
|
|
121
|
+
- [ ] Prepare a 60-second demo GIF (blocked on #542)
|
|
122
|
+
- [ ] Write tagline: "Autonomous AI dev pipeline — GitHub as a knowledge graph for Claude Code agents"
|
|
123
|
+
- [ ] Prepare 3–5 screenshots or a demo video
|
|
124
|
+
- [ ] List alternatives: Sweep, GitHub Copilot Workspace, Devin, Cursor Agent
|
|
125
|
+
- [ ] Have 10+ upvote supporters lined up before launch
|
|
126
|
+
- [ ] Post in relevant PH collections: Developer Tools, AI Tools, CLI Tools
|
|
127
|
+
|
|
128
|
+
**Product Hunt description**:
|
|
129
|
+
```
|
|
130
|
+
ForgeDock gives Claude Code agents persistent memory across sessions by using GitHub as a structured knowledge graph.
|
|
131
|
+
|
|
132
|
+
Every pipeline stage (investigate → architect → build → review → merge) writes structured FORGE: annotations to GitHub issues and PRs. Agents read what came before them. Nothing is lost between conversations.
|
|
133
|
+
|
|
134
|
+
Install with `npx forgedock` → run `/work-on #42` → watch it investigate, architect, build, quality-gate, and open a PR.
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
### AlternativeTo
|
|
140
|
+
|
|
141
|
+
| Field | Value |
|
|
142
|
+
|-------|-------|
|
|
143
|
+
| **Status** | ⬜ Not submitted |
|
|
144
|
+
| **URL** | https://alternativeto.net/software/add |
|
|
145
|
+
| **Alternatives to list** | Sweep, Devin, GitHub Copilot Workspace, Cursor Agent, Aider |
|
|
146
|
+
|
|
147
|
+
**AlternativeTo description**:
|
|
148
|
+
```
|
|
149
|
+
ForgeDock is an autonomous AI development pipeline for Claude Code that uses GitHub as a persistent knowledge graph.
|
|
150
|
+
|
|
151
|
+
Unlike Sweep or Devin which start fresh each session, ForgeDock stores structured context in GitHub issue comments (FORGE: annotations) so every agent knows the investigation history, architecture decisions, and past bugs for the code it's touching.
|
|
152
|
+
|
|
153
|
+
Install: npx forgedock. Commands: /work-on, /review-pr, /quality-gate, /orchestrate.
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## Submission Guidelines (General)
|
|
159
|
+
|
|
160
|
+
1. **Follow each repo's CONTRIBUTING.md** — most awesome lists have specific format requirements
|
|
161
|
+
2. **Alphabetical order** — most lists are alphabetically sorted; find the correct position
|
|
162
|
+
3. **One PR per list** — do not batch submissions
|
|
163
|
+
4. **Description length** — most lists cap at 120–150 chars; use the canonical short description
|
|
164
|
+
5. **No self-promotional language** — "the best", "revolutionary", "amazing" are red flags
|
|
165
|
+
6. **Include the category** — verify the correct section before submitting
|
|
166
|
+
7. **Check for duplicates** — search the list for "forgedock", "claude-code", "forge" before PRing
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## Status Summary
|
|
171
|
+
|
|
172
|
+
| Platform | Type | Status | PR/URL |
|
|
173
|
+
|----------|------|--------|--------|
|
|
174
|
+
| awesome-claude-code-workflows | Awesome list | ⬜ Not submitted | — |
|
|
175
|
+
| claude-code-marketplace | Marketplace | ⬜ Not submitted | — |
|
|
176
|
+
| awesome-ai-agents | Awesome list | ⬜ Not submitted | — |
|
|
177
|
+
| awesome-developer-tools | Awesome list | ⬜ Not submitted | — |
|
|
178
|
+
| Product Hunt | Community platform | ⬜ Not submitted | — |
|
|
179
|
+
| AlternativeTo | Directory | ⬜ Not submitted | — |
|
|
180
|
+
|
|
181
|
+
**Update this table as submissions are made. Mark with ✅ when PR is merged or listing is live.**
|