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/hraness/wrench/write-phase-plannpx skills add hraness/wrench --skill write-phase-plangit clone --depth 1 https://github.com/hraness/wrenchWhat 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.00082 | $0.01215 |
| Opus 5 | $0.00041 | $0.00607 |
| Sonnet 5 | $0.00016 | $0.00243 |
| Haiku 4.5 | $0.00008 | $0.00121 |
Grade A, and why
write-phase-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 2d 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.
This is a copy
92% identical to write-phase-plan — 27 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 133 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Write Phase Plan
Goal
Produce a plan document that a phase-orchestrator run can execute without re-deriving structure. Each phase must be implementable by a worker that has no chat history: the phase section is the worker's entire brief, plus repo rules and the code itself.
The plan is the source of truth during the run. The orchestrator updates phase status and appends log entries as it goes, so the document must be written to absorb that.
When restructuring an existing plan, preserve completed work, current phase statuses, and implementation-log evidence unless the user explicitly asks to reset them. Normalize the remaining work around that history instead of rewriting the plan as a fresh run.
Where The Plan Lives
Follow the repo's convention for design docs (for example plans/<author>/ in
repos that define one). One markdown file per plan. Link out to the PRD/spec
rather than duplicating it.
Document Structure
# <Feature name>
## Overview
One or two paragraphs: what is being built and why. Link the PRD/spec.
## Constraints
Repo-wide facts every phase needs: commit/PR policy, validation commands,
branch or worktree requirements, anything the orchestrator must not infer.
## Phases
A short table or list: phase ID, name, depends-on, parallelizable-with.
## Phase 1: <name>
- **Status:** Not started
- **Depends on:** none | Phase N
- **Topology:** default | a named non-default topology with disjoint parallel
worker scopes and/or a loop stop condition, as applicable.
- **Objective:** one sentence, the outcome not the activity.
- **Scope:** the files/modules this phase owns (its write scope).
- **Out of scope:** adjacent work this phase must not touch.
- **Approach:** implementation notes — key decisions already made, pointers
to the code the worker should read first, known landmines.
- **Acceptance criteria:** checkable statements (see below).
- **Validation:** exact commands to run, plus any manual checks.
## Phase 2: <name>
...
## Implementation log
(Empty when authoring a new plan. Preserve existing entries when restructuring
a plan. The orchestrator appends one entry per phase: date, phase, summary,
validation results, review outcome, commit SHAs, deviations, remaining risks.)
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.
- 2d ago First seen · 133 lines · 82 tokens per session scan A 878599ec966a
write-phase-plan is a skill published in the GitHub repository hraness/wrench (4 stars, last pushed 2d ago), licensed MIT. It adds 82 tokens to every session and 1,215 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. It is 92% identical to write-phase-plan, differing in 27 lines, and is treated as a copy.
Other skills, from other repositories
google-workspace-setup
One-time setup for gws: install, OAuth, scopes, auto-approve.
google-calendar
Google Calendar via gws: list events, create, accept, find free time.
attachments
Move bytes between Gini upload space, external URLs, and workspace files. Used by every attachment / file-upload / file-download flow regardless of the target system (Linear, GitHub, S3, Notion, etc.).
gini-bug-report
File a locally-captured, already-redacted Gini crash report as a GitHub issue, with the user's consent. Reads the pending crash queue and delegates the actual filing to the github-issues skill.
google-docs
Google Docs via gws: read, append text, structured batch edits.
google-drive
Google Drive via gws: search, list, upload, download, share.