Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"name": "forgebee",
"source": "./forgebee",
"description": "Full-stack agent framework for Claude Code, Codex, Cursor, Gemini — 37 slash commands, 44 specialist agents, 33 skills, 25 hooks. Karpathy principles (trace test, YAGNI, orphan rule, anti-stop) on every code agent. Adversarial debate triads, two-stage review (spec compliance + code quality), forensic /investigate, /elicit (18 reasoning methods), checkpoint-preview, budget circuit breaker, adversarial input hardening, continuous learning with auto-nudge, Growth OS marketing pipeline, automated PM, /audit-self regression detection.",
"version": "5.4.0"
"version": "5.5.0"
}
]
}
2 changes: 1 addition & 1 deletion .codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "forgebee",
"version": "5.4.0",
"version": "5.5.0",
"description": "Full-stack agent framework — 37 slash commands, 44 specialist agents, 33 skills, 25 hooks. Karpathy principles on every code agent, adversarial debate triads, two-stage review, /investigate, /elicit (18 methods), checkpoint-preview, budget circuit breaker, continuous learning, Growth OS, /audit-self.",
"author": {
"name": "Forbee Dev",
Expand Down
2 changes: 1 addition & 1 deletion .cursor-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "forgebee",
"displayName": "ForgeBee",
"description": "Full-stack agent framework — 37 commands, 44 specialist agents, 33 skills, 25 hooks. Karpathy principles, adversarial debate, two-stage review, /investigate, /elicit, checkpoint-preview, budget circuit breaker, continuous learning, Growth OS, /audit-self.",
"version": "5.4.0",
"version": "5.5.0",
"author": {
"name": "Forbee Dev",
"url": "https://github.com/forbee-dev"
Expand Down
27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,33 @@ The format roughly follows [Keep a Changelog](https://keepachangelog.com/) and t

---

## [5.5.0] — 2026-09-01

**Minor: `/team` now sizes the task before it spends.** A single 5-file change measured 905 API calls and 131.6M billed-equivalent tokens across 7 sessions in 37 minutes — roughly 205,000 tokens per line of code written. Three rules in `/team` produced it, and all three are fixed.

### Fixed — `/team` cost control

- **The scope table set a floor instead of a ceiling.** "3-5 files → 2-3 specialists" read as an instruction to reach that count; the observed run dispatched 6 agents for a 5-file diff. Step 1 is now a mandatory sizing gate with four tiers (Direct 0 agents / Small 1 / Medium 2-3 / Large 3-5), the lead must state its tier and agent count in one line before dispatching, and **ambiguity resolves downward**. Auth, payments, or user data adds `security-auditor` without raising the tier.
- **The Anti-Stop Rule told the lead to keep working, and it did — on the agents' task.** "IMMEDIATELY continue with your own next-step work" produced 75 lead-side `Bash` calls (curl against the local site, `docker exec` PHP dumps, git) while six agents investigated the same code. The rule now scopes "continue" to orchestration and explicitly forbids `Edit`, running the app, hitting its endpoints, container exec, and running its tests while agents are live. If the lead finds itself implementing, it sized the task wrong and drops to Tier Direct.
- **Nothing forbade polling.** The lead called `ListAgents` 12 times at an average 186K context per call. Polling is now banned outright — wait for the harness notification.
- **`security-auditor` and `test-engineer` were unconditional.** "Always include … for code-producing tasks" is replaced by explicit trigger lists: five conditions for security (auth/authz/sessions, payments/PII, untrusted input reaching output, secrets, upload-deserialization-path construction) and three for tests (extendable suite plus a new code path, a bug fix, or an explicit ask). Neither is automatic, and on a Tier Small task both are usually wrong.

### Added

- **Cost rule in `/team`** — states plainly that every agent is a fresh session re-reading the full preamble on each of its tool calls, so a one-paragraph return still costs six figures. Bans the research-then-re-derive pattern that cost 7.5M tokens in the measured run when two research agents were dispatched and the implementer re-derived their findings anyway.
- **Two dispatch-hygiene rules** — full context in an agent's first message (a follow-up round trip costs as much as the first), and reviewers sequenced after implementers rather than alongside them.

### Changed

- `/team`'s `## Never` list gains "never implement, verify, or poll while agents run" and "never dispatch more agents than the tier allows".
- `/team`'s closing `## Rules` now defers to the Step 1 tier for the agent count instead of restating "3-5 agents" as a standalone target.

### Known limitation

The tiers key off file count, which is a proxy for effort rather than a measure of it. A one-file change to a hot path can still warrant a reviewer; the lead is expected to override upward with a stated reason, and the ceiling language permits it.

---

## [5.4.0] — 2026-08-11

**Minor: routing actually fires, and a design-system trio arrives.** ForgeBee shipped 114 surfaces that were effectively unreachable. Five defects, each verified by direct hook test, explain why a WordPress task never reached a `wordpress-*` agent.
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<img src="https://img.shields.io/badge/Codex-Compatible-10B981?style=for-the-badge&logoColor=white" alt="Codex" />
<img src="https://img.shields.io/badge/Cursor-Compatible-1F2937?style=for-the-badge&logoColor=white" alt="Cursor" />
<img src="https://img.shields.io/badge/Gemini-Compatible-4285F4?style=for-the-badge&logoColor=white" alt="Gemini" />
<img src="https://img.shields.io/badge/version-5.4.0-blue?style=for-the-badge" alt="Version" />
<img src="https://img.shields.io/badge/version-5.5.0-blue?style=for-the-badge" alt="Version" />
<img src="https://img.shields.io/badge/license-MIT-green?style=for-the-badge" alt="License" />
</p>

Expand Down
2 changes: 1 addition & 1 deletion forgebee/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "forgebee",
"version": "5.4.0",
"version": "5.5.0",
"description": "Full-stack agent framework — 37 slash commands, 44 specialist agents, 33 skills (inline + context:fork), 25 Node hooks. Karpathy principles (trace test, YAGNI, orphan rule, anti-stop) on every code-producing agent. Adversarial debate triads with judges, two-stage review (spec compliance + code quality), forensic /investigate (Confirmed/Deduced/Hypothesized), /elicit (18 reasoning methods), checkpoint-preview (diff-by-concern), budget circuit breaker on Task() dispatches, adversarial input hardening on all agents, terse-report mode (~65% token reduction for sub-agent reports), continuous learning with auto-nudge, Growth OS 9-phase marketing pipeline, automated PM, /audit-self regression detection. Works with Claude Code, Codex, Cursor, Gemini, OpenClaw.",
"author": {
"name": "Forbee Dev"
Expand Down
2 changes: 1 addition & 1 deletion forgebee/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ forgebee/
└── eval/ # Eval scenarios
```

## Key Features (v5.4.0)
## Key Features (v5.5.0)

### Behavioral discipline (Karpathy principles)
- **P1 Trace test** — every changed line traces to the user's request; no drive-by edits
Expand Down
46 changes: 34 additions & 12 deletions forgebee/commands/team.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,11 @@ In short: `/team` is "go fast"; `/workflow` is "go thorough." If unsure → `/wo

## Anti-Stop Rule (P5)

**After dispatching a sub-agent, IMMEDIATELY continue with your own next-step work. Do not idle waiting for the sub-agent to return.** The harness will notify you when work completes — until then, your job is to be planning the next dispatch, integrating partial results, or preparing the verification gate. Do not announce "waiting for X to return" — that's the most common orchestrator failure mode.
**After dispatching a sub-agent, continue with your own next-step *orchestration* work.** The harness notifies you when work completes. Until then: plan the next dispatch, integrate partial results, or prepare the verification gate. Do not announce "waiting for X to return."

**"Continue" means orchestrate, never implement.** While agents run you must not `Edit`, run the app, hit its endpoints, exec into containers, or run its tests. Doing the agent's job in parallel pays for the same work twice and produces conflicting edits. If you find yourself working, you sized the task wrong — cancel and do it directly at Tier Direct.

**Do not poll.** Never call `ListAgents` in a loop to check on a dispatch. Each poll re-reads your full context. Wait for the notification.

## Never

Expand All @@ -35,22 +39,38 @@ In short: `/team` is "go fast"; `/workflow` is "go thorough." If unsure → `/wo
- Never deliver with known failing tests or build errors
- Never skip security-auditor for code that touches auth, payments, or user data
- Never idle after dispatching — see Anti-Stop Rule
- Never implement, verify, or poll while agents run — see Anti-Stop Rule
- Never dispatch more agents than the tier allows
- Never report done without running the full test suite

## Step 1: Assess
## Step 1: Size the task (mandatory, before any other action)

Estimate the blast radius with one or two cheap commands (`git diff --stat`, `grep -l`, `find`). Then pick a tier and **state the tier and the agent count in one line** before you dispatch anything.

| Tier | Blast radius | Agents | Shape |
|---|---|---|---|
| **Direct** | 1–2 files, change already clear | **0** | Do it yourself. No plan table, no dispatch. |
| **Small** | 3–6 files, one concern | **1** | One implementer. You review the diff at the end. |
| **Medium** | 7–15 files, or 2 distinct concerns | **2–3** | Implementer(s) + one reviewer. |
| **Large** | 15+ files, or needs a plan first | **3–5** | Research → implement → review. |

Ambiguity resolves **downward**. A tier is a ceiling, not a target. Auth, payments, or user data adds `security-auditor` — it does not raise the tier.

Read the task. Explore the codebase. Identify what needs to change.
### Cost rule

| Scope | Approach |
|-------|----------|
| **1-2 files, clear change** | Do it directly — no orchestration needed |
| **3-5 files, clear plan** | 2-3 specialists in parallel |
| **5+ files, needs planning** | Full team with dependency graph |
| **Auth, payments, data** | Full team + mandatory security-auditor |
Every agent is a fresh session that re-reads the whole preamble on each of its tool calls. An agent that returns one paragraph still costs six figures in tokens. Dispatch one only when it does work you would otherwise do serially, or work you genuinely cannot do.

Never dispatch a research agent whose findings the implementer will re-derive. Either research yourself and hand the result to the implementer, or let the implementer research.

## Step 2: Plan & Show

Break work into independent workstreams. For each, define: agent, files it owns, deliverable, acceptance criteria. Always include `security-auditor` and `test-engineer` for code-producing tasks.
Break work into independent workstreams. For each, define: agent, files it owns, deliverable, acceptance criteria.

**Add `security-auditor` only when the change touches one of these:** authentication, authorization, sessions, or capability checks; payments, billing, or PII; untrusted input reaching output (escaping, `wp_kses`, SQL, shell); secrets, tokens, or credentials; file upload, deserialization, or a path built from user input.

**Add `test-engineer` only when:** the repo has a real suite the change can extend *and* the change adds a new code path; or the change fixes a bug (add the regression test); or the task asks for tests. Otherwise the implementer covers its own change.

Neither is automatic. On a Tier Small task both are usually wrong.

**If 3+ agents**, show a dependency graph before dispatch:

Expand Down Expand Up @@ -166,7 +186,9 @@ Reject any response without a status. If `BLOCKED` twice on same issue → escal

## Rules

- Keep teams to 3-5 agents — more creates coordination overhead
- The tier from Step 1 caps the agent count. 3–5 is the Large ceiling, not a default
- The lead orchestrates only — it does not edit, verify, or poll while agents run
- Break work so each agent owns different files
- Include clear context in each agent's task
- Include full context in each agent's first message; a follow-up round trip costs as much as the first
- Sequence reviewers after implementers — reviewing a diff still being written wastes the review
- After all agents finish, run the full test suite as verification
2 changes: 1 addition & 1 deletion gemini-extension.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "forgebee",
"description": "Full-stack agent framework — dev, growth, debate, and PM in one plugin.",
"version": "5.4.0",
"version": "5.5.0",
"contextFileName": "GEMINI.md"
}
Loading