Resumable Coding with Persistent Specs
Keep coding work resumable with durable specs, small checkpoints, and progress records tied to verified changes.
Before & after
Same prompt, same agent — the only difference is the skill.
Context management is tricky when projects run long. You could keep detailed notes and update them regularly. Breaking work into phases helps. Some people use external docs to stay organized. The key is probably having a clear way to refer back to what's already been decided.
GSD FRAMEWORK: EXTERNALIZED SPEC SYSTEM
PROBLEM SOLVED
Context rot - after 10+ conversation turns, Claude forgets decisions made in turn 2. Solution: Keep specs external (JSON, markdown), not in chat.
SPEC STRUCTURE (4-week project)
PHASE 1: FOUNDATION (Week 1)
spec.md:
• Project name + goal (1 sentence)
• Tech stack (Node 20, Next.js 14, Postgres)
• Database schema (tables, relationships)
• Core entities (User, Project, Task)
• API endpoint list (10 endpoints)
• Architecture diagram (simple ASCII)
→ Owner: Tech lead
→ Update frequency: Weekly Mondays
PHASE 2: FEATURE BREAKDOWN (Week 2)
features.json:
[{
"id": "auth-login",
"status": "in-progress",
"owned_by": "devA",
"acceptance_criteria": [
"Email+password login works",
"Sessions persist >30 days",
"404 on invalid email (security)"
],
"decisions": "Use Lucia, not Supabase auth",
"blockers": "none"
}]
→ One JSON object per feature
→ Updates: Before each coding turn, check spec for current status
PHASE 3: DECISIONS LOG (Weeks 1-4)
decisions.md:
→ 2026-07-31: "Using Postgres UUID over sequential IDs" (why: easier sharding later)
→ 2026-08-01: "Rejected GraphQL - REST only" (why: team familiarity, deployment speed)
→ 2026-08-05: "Migrate from SQLite to Postgres" (schedule: before week 3)
→ Each decision: date + rationale + impact
CODING WORKFLOW
At turn start: "Read spec.md, features.json. Feature 'auth-login' in progress."
At turn end: "Update features.json: auth-login → testing. New decision logged."
→ Conversation resets after turn 20 without losing context
→ New collaborator onboards in 30 min (read specs, not 100-turn chat)
TOOLS REQUIRED: GitHub repo (commit specs on each update), or shared Google Doc, or Claude artifact (public link in README).About this skill
“We already decided that” should not be a recurring part of a coding session. This workflow moves requirements, decision reasons, and verified progress into compact project files so work can continue after a context reset without rebuilding the plan from chat history.
What it does
- Converts scattered instructions into a durable spec with testable acceptance criteria and explicit exclusions.
- Splits implementation into checkpoints with dependencies, bounded scope, and a verification step.
- Records what changed, what was actually checked, and the exact next action after each checkpoint.
- Reconciles saved progress against current code before resuming interrupted work.
- Updates affected requirements and checkpoints when the user changes direction, preserving why earlier decisions were made.
What you get
Task-specific SPEC.md, PLAN.md, and PROGRESS.md files created in your project, or copy-ready contents when writing is unavailable. Each checkpoint leaves a short handoff that distinguishes implemented work from verified work and makes the next step executable.
Best for
Developers running long Claude Code sessions, multi-file refactors, interrupted feature builds, or work that must transfer to another session or agent.
SKILL.md preview
---
name: resumable-coding-with-persistent-specs
description: >-
Keep long coding tasks resumable by externalizing acceptance criteria, decision reasons, checkpoint dependencies, and evidence-backed progress into project files. Reconcile those records with the current code before continuing after interruptions. Use when the user says "Claude keeps forgetting our decisions", "my refactor keeps losing track of what's done", "make this survive a context reset", "resume this feature", "write the spec and track implementation", "hand this coding task to another session", or "we keep redoing the same work".
---
# Resumable Coding with Persistent Specs
… (sign up to view the full skill)More development skills
View all Development skills →Performance Bottleneck Profiling: Node, Python, Go
Classifies a slowdown, gives exact profiler commands, reads the output, and proves the fix with same-conditions p95/p99 numbers.
Feature Scaffolding with Working Tests
Turn a short feature spec into code, runnable tests, and integration wiring that match your existing project.
Feature Flag Rollouts and Kill Switches
Design staged flag rollouts, verify rollback paths, and audit flag debt with explicit defaults, gates, and retirement plans.
Microcontroller Firmware and RTOS Engineering
Build and debug MCU firmware with bounded ISR/RTOS timing, safe DMA ownership, and measured power budgets.