Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/harshanandak/forge/plannpx skills add harshanandak/forge --skill plangit clone --depth 1 https://github.com/harshanandak/forgeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/harshanandak/forge/plan)<a href="https://agentmods.dev/skills/harshanandak/forge/plan"><img src="https://agentmods.dev/badge/skills/harshanandak/forge/plan.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00220 | $0.05821 |
| Opus 5 | $0.00110 | $0.02910 |
| Sonnet 5 | $0.00044 | $0.01164 |
| Haiku 4.5 | $0.00022 | $0.00582 |
Grade A, and why
plan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 550 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Plan a feature from scratch: brainstorm design intent, research technical approach, then set up branch, worktree, and a complete task list ready for /dev.
Plan
Chain (HARD-GATE): the next skill after
planisdev.plancomposes theresearchsub-skill for its Phase 2 technical bundle. Do not skip ahead pastdev.
/plan is the default planning super-skill. A full invocation runs the three legacy sections below (intent, research, setup/task list), but v3 treats the internal planning work as callable sub-skills:
plan.intent_captureplan.parallel_researchplan.parallel_criticsplan.synthesisplan.final_lock
Do not assume every invocation must run every sub-skill. Run only the requested/required sub-skill when the user asks for partial planning work, and record skipped nodes as skipped rather than silently deleting them from the graph. External planner artifacts may satisfy /dev entry without running /plan, per D34, if they provide the required structured task list and acceptance criteria.
Planning template behavior is resolved through the runtime graph and .forge/config.yaml, not through a separate planner-only config file. Use forge options why <plan-subskill>, forge options diff, and forge options lint to inspect configured planning mode, convergence threshold, critic set, and partial invocation choices.
<HARD-GATE: /plan entry — worktree isolation>
Before ANY planning work begins:
1. Run: git branch --show-current
2. If the current branch is NOT master/main:
- STOP. Do not begin Phase 1.
- Tell the user: "You are on '<branch>'. Planning must start from a clean worktree on master.
Run: git checkout master — then re-run /plan."
3. If on master, create the worktree NOW before asking any questions:
a. forge worktree create <slug> --branch feat/<slug>
b. cd .worktrees/<slug>
4. Confirm: "Working in isolated worktree: .worktrees/<slug> (branch: feat/<slug>)"
5. Create the epic issue and record the stage transition:
```bash
forge create --title="<feature-name>" --type=epic
forge update <id> --status=in_progress
# Record the none→plan stage transition kernel-natively on the Forge issue.
forge comment <id> "Stage: none → plan"
- ONLY THEN begin Phase 1.
Rationale: Planning commits (design docs, task lists) belong only to this feature's branch. If planning runs in the main directory on a non-master branch, those commits contaminate whatever branch is currently checked out. The worktree ensures zero cross-contamination between parallel features or sessions.
---
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 550 lines · 220 tokens per session scan A b8f90c54e216
plan is a skill published in the GitHub repository harshanandak/forge (4 stars, last pushed 3d ago), licensed MIT. It adds 220 tokens to every session and 5,821 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.
chat-perf
Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…