old-coder

An evidence-first development skill: the agent wraps code in a spec and a gauntlet of checks so line-by-line review becomes optional

Skill

Medium risk

We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.

Why this level

  • Runs tests, types and mutation checks over project code
  • Installs and runs gauntlet tooling
All reasons and checks

amazingang/old-coder

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add skills/old-coder

Detects the agents on your machine, checks the risk and pins the version.

Other ways to install

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a claude-code -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .claude/skills
cp -R "$tmp/skills/old-coder" .claude/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a cursor -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .agents/skills
cp -R "$tmp/skills/old-coder" .agents/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a github-copilot -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .github/skills
cp -R "$tmp/skills/old-coder" .github/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a codex -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .agents/skills
cp -R "$tmp/skills/old-coder" .agents/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a gemini-cli -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .agents/skills
cp -R "$tmp/skills/old-coder" .agents/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .devin/skills
cp -R "$tmp/skills/old-coder" .devin/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Formerly Windsurf.

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a cline -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .cline/skills
cp -R "$tmp/skills/old-coder" .cline/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a roo -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .roo/skills
cp -R "$tmp/skills/old-coder" .roo/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

A fork of Roo Code, same .roo folders.

Run in a terminal in the project folder

npx skills add amazingang/old-coder --skill old-coder -a opencode -y

The skills tool installs the current version from the repository. Add the -g flag to use the skill in every project.

Without third-party tools, from commit a0eb529
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .agents/skills
cp -R "$tmp/skills/old-coder" .agents/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .agents/skills
cp -R "$tmp/skills/old-coder" .agents/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

Run in a terminal in the project folder

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/amazingang/old-coder.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/old-coder/
git -C "$tmp" checkout a0eb529d393a1cb3ccc564e32b2104e7e75c7a29
mkdir -p .agents/skills
cp -R "$tmp/skills/old-coder" .agents/skills/old-coder

Commands for macOS and Linux, on Windows run them in Git Bash.

You will need: Node.js

Checked against the repository on Sep 25, 2026, commit a0eb529.

Text for your agent

Install the skill: npx skills add https://github.com/amazingang/old-coder --skill old-coder. Start with an executable spec and submit it for approval before writing code.

Other ways from the author
npx skills add https://github.com/amazingang/old-coder --skill old-coder

Installs the main skill. Add --skill old-coder-api to install the companion too.

This is third-party code. Review the repository files before installing.

What it does

The skill gives the agent a loop where trust comes not from reading code but from two artifacts. First the agent writes an executable spec with concrete examples of what the code must and must not do, and you approve that spec. Then the code runs a gauntlet of checks: tests, types, coverage and mutation testing, summarized in an evidence report. It ships a companion skill old-coder-api for HTTP and JSON contracts and a demo project with a ready gauntlet.

Who it is for. For developers who need high assurance and proven, not merely claimed, code quality.

Good fit when

  • You want evidence-first TDD with an executable spec
  • The change touches money, auth, data loss or concurrency
  • You want done to be backed by checks, not a claim

Not a fit when

  • A routine change where ordinary tests are enough
  • You cannot run tests, types and mutation checks

Example request

Build this feature with the evidence-first loop: a spec for approval first, then code with a checks report

Limitations

The gauntlet confirms what the spec expresses but does not guarantee the spec captured everything that matters, which is why human approval of the spec is the key step. The full loop takes time and a configured toolchain for tests, types and mutation testing. The report gives layered, auditable confidence, not absolute proof.

How to disable. Remove the old-coder folder from your agent's skills directory, for example ~/.claude/skills/old-coder.

Security check

  • Runs tests, types and mutation checks over project code
  • Installs and runs gauntlet tooling

README in short

The README describes an approach where the human does not read the implementation but trusts two artifacts: an approved spec and an evidence report from the checks. The loop runs from spec to red and green tests, refactor, the gauntlet and an evidence report. The repo holds the main skill, the old-coder-api companion and a rate-limiter demo with gauntlet tooling. Installation is via npx skills add or a folder copy. MIT licensed.

SKILL.md

---
name: old-coder
description: Evidence-first development, surround the implementation with an executable spec and a gauntlet of constraints (tests, types, coverage, mutation) so line-by-line review becomes optional. Use when the user explicitly asks for high-assurance or evidence-first work (reliable, TDD, prove it works, I won't read the code), or when the change touches high-stakes domains (money, auth, data loss, concurrency, public API). For routine changes where the user just wants normal tests, write good tests directly instead of invoking this loop.
---

# Old Coder: Reliable Coding Under Constraint and Test

The human will NOT read your implementation. Their confidence comes entirely from two artifacts you produce: (1) an executable specification they approve before you write code, and (2) an evidence report proving the code ran the gauntlet.

## The Loop

SPEC to (human approves spec, not code) to RED to GREEN to REFACTOR to GAUNTLET to EVIDENCE, repeat per behavior.

FAQ

What exactly do I approve?

The spec, not the code. It is the one human decision, and it breaks the correlation where everything was authored by the same agent.

What is old-coder-api for?

A companion skill for HTTP and JSON contracts: compatibility, authorization, idempotency, pagination and rate limits.

Editors’ pick

A skills library that gives coding agents a development process: brainstorming, planning, TDD, subagents and code review

PluginMedium riskNo VPN needed292.5KRepository stars
Editors’ pick

Small composable skills for engineering with agents: plan grilling, TDD, bug diagnosis, code review and architecture

SkillLow risk271.4KRepository stars
Editors’ pick

GitHub toolkit for spec-driven development: the specify CLI adds agent commands and skills to a project, from principles to implementation

CLIMedium riskNo VPN needed139.3KRepository stars

Reference MCP servers

Model Context Protocol servers

Official

Official reference MCP servers: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time and Everything

MCP serverMedium risk90.6KRepository stars
Foxx AIold-coder

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.