builder-refresh

A controlled procedure for saving a coding agent’s work, clearing its current context, and starting again from saved project files. It is used at a planned protocol boundary, not whenever the agent chooses.

In plain words
What is it for?
Use it when the porch system or an architect tells a builder agent to refresh its context. It helps resume work from the specification, plan, status file, thread notes, and Git history.
Why use it?
It prevents the agent from losing important progress when its conversation context is refreshed. Verification checks help ensure the saved state is complete and the worktree has no uncommitted tracked changes.

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/cluesmith/codev/builder-refresh
Any agent
npx skills add cluesmith/codev --skill builder-refresh
Clone the repo
git clone --depth 1 https://github.com/cluesmith/codev

Made for: Claude Code, Codex.

Per session 81 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,592 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found 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.00081 $0.01592
Opus 5 $0.00041 $0.00796
Sonnet 5 $0.00016 $0.00318
Haiku 4.5 $0.00008 $0.00159

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

Security

Grade A, and why

builder-refresh 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.

.claude/skills/builder-refresh/SKILL.md · 139 lines

How it starts

The opening of the file, as written. The whole thing — 139 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/builder-refresh — save, clear, and come back knowing where you are

You are a builder that has reached a protocol boundary. Your context can be discarded here safely, because everything that matters is already on disk: the spec, the plan, status.yaml, your thread narrative, and git history. A fresh context re-orients from those artifacts rather than from memory.

The enforcement is in the command, not in this document. afx self-refresh refuses to clear on an unverified save, refuses when the re-entry cannot be scheduled, and refuses when your worktree has uncommitted tracked changes. This skill sequences the steps and explains the judgement calls; it cannot and does not decide whether the clear is safe.

When NOT to run this

Porch chooses the moment. You do not. Run this when porch's refresh task tells you to, or when the architect directs it. Do not invoke it mid-task on your own judgement — a boundary is a point a fresh context can resume from, and a mid-task snapshot resumes into confusion.

If you are not at a boundary and think you need a refresh anyway, say so to the architect rather than doing it: afx send architect "...".

The procedure

1. Use the commands porch gave you

Porch's refresh task contains the exact two commands for this boundary, including the --boundary flag. Run those, verbatim.

Do not retype them from memory and do not omit the flag. --boundary binds the challenge to the boundary it was issued at, so a challenge left behind by an aborted refresh cannot be used to clear you at a later boundary, against a save describing work that has since moved on. That guard has been silently disabled twice by an instruction that dropped the flag, which is why this document deliberately does not restate the commands.

If you arrived here without a porch task — an architect-directed refresh, say — there is no boundary to bind, and the flagless form is correct. Run afx self-refresh --help for the exact spelling rather than guessing it.

Read the full file on GitHub · 139 lines

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 · 139 lines · 81 tokens per session scan A d9e5fdf5dc54

Subscribe to this mod's changes

builder-refresh is a skill published in the GitHub repository cluesmith/codev (286 stars, last pushed 5d ago), licensed Apache-2.0. It adds 81 tokens to every session and 1,592 once invoked, about $0.0004 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-30.

Related

Other skills, from other repositories