write-phase-plan

A planning format for work split into ordered phases that another automation tool can execute. Each phase includes its scope, success checks, commands, and status rules.

In plain words
What is it for?
Use it to write or reorganize implementation plans, feature plans, or PRDs for delegated, phase-by-phase development.
Why use it?
It prevents workers from having to reconstruct the plan from chat history and makes progress easier to track.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/hraness/direct/write-phase-plan
Any agent
npx skills add hraness/direct --skill write-phase-plan
Clone the repo
git clone --depth 1 https://github.com/hraness/direct

Made for: Claude Code, Codex.

Per session 82 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,070 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00082 $0.01070
Opus 5 $0.00041 $0.00535
Sonnet 5 $0.00016 $0.00214
Haiku 4.5 $0.00008 $0.00107

Measured yesterday against content hash 4ef689160970, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

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 yesterday.

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.

Origin

This is a copy

100% identical to write-phase-plan — 0 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.

.agents/skills/write-phase-plan/SKILL.md · 122 lines

How it starts

The opening of the file, as written. The whole thing — 122 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.

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
- **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 at authoring time. The orchestrator appends one entry per phase:
date, phase, summary, validation results, review outcome, commit SHAs,
deviations, remaining risks.)

Sizing And Ordering Phases

  • One phase = one implementer worker session. If a phase's Approach section needs subheadings to stay coherent, split it.
  • Order by dependency, foundations first. A schema/migration phase is always its own phase (and in many repos its own PR — record that in Constraints).
  • Phases that can run in parallel must have disjoint write scopes. Declare parallelizability explicitly in the phase list; the orchestrator will not guess.
  • If a phase exists only to set up a later phase, say which one, so the orchestrator knows a deviation there propagates.

Read the full file on GitHub · 122 lines

Files

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.

Changes

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.

  1. yesterday First seen · 122 lines · 82 tokens per session scan A 4ef689160970

Subscribe to this mod's changes

write-phase-plan is a skill published in the GitHub repository hraness/direct (2 stars, last pushed 2d ago), licensed MIT. It adds 82 tokens to every session and 1,070 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to write-phase-plan, differing in 0 lines, and is treated as a copy.

Related

Other skills, from other repositories

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…

microsoft/vscode · 71 tokens

integrated-browser

Use this when working on the VS Code integrated browser ("browserView") to understand its architecture and mental model. Covers the embedded Chromium browser, its editor tab, navigation, overlay/layout, sessions, and agent browser tools under src/vs/platform/browserView and src/vs/workbench/contrib/browserView.

microsoft/vscode · 68 tokens

smoke-tests

Use when running VS Code smoke tests or working on smoke-test CI steps. Covers npm run smoketest / smoketest-no-compile, grep filtering tests, and a temporary repeat-loop technique for tracking down flaky smoke tests in CI.

microsoft/vscode · 50 tokens

textual-screenshot

Capture a Textual terminal UI as an SVG using its headless test harness. Use when asked to make, attach, or preview a screenshot of deepagents-code/dcode or another Textual app, visually verify a TUI state, or render a modal, screen, or widget without a desktop or browser.

langchain-ai/deepagents · 67 tokens

git-cleanup

Clean up local git branches and remotes accumulated from PR reviews. Use when the user asks to clean branches, remove stale remotes, or tidy up the local git state.

alibaba/page-agent · 39 tokens

agent-browser

Browser automation for testing and verification. Use when you need to interact with web UIs, verify visual changes, fill forms, or capture screenshots.

emdash-cms/emdash · 32 tokens