Skip to content

About

Evidence-driven coding plugin for Codex and Claude Code

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Enders Game coding plugin header

Enders Game

Plan carefully. Build simply. Verify the result. Remember what worked.

Enders Game is an installable coding plugin for Codex and Claude Code. It gives agents a small, evidence-driven workflow for real software work: discover the repo, plan against observable acceptance criteria, build the smallest complete change, review the raw diff, run checks, save handoffs, and keep verified lessons in local Markdown.

It uses Python's standard library only. No hosted memory service, database, embedding model, telemetry stream, or extra API key.

What It Does

  • Runs a resumable plan-build-review-test loop for coding tasks.
  • Requires acceptance criteria to map to real checks.
  • Blocks false completion when checks are empty, flaky, unavailable, or stale.
  • Tracks named tasks, retries, logs, heartbeats, budgets, and local metrics.
  • Saves project memory in readable Markdown under .enders-game/memory/.
  • Updates CHANGELOG.md, ROADMAP.md, and weekly sprint notes after verified completion.
  • Supports isolated Git worktree experiments and GitHub Actions repair workflows.

Install

After this repo is published:

git clone https://github.com/llcoolblaze/enders-game.git
cd enders-game

Install for Codex:

python3 install.py codex

Install for Claude Code:

python3 install.py claude

Preview the install without changing host plugin state:

python3 install.py codex --dry-run

Requirements: Python 3.10+, Git, and an authenticated coding host. The runtime supports macOS, Linux, and WSL.

Quick Start

From this checkout, point Ender at any Git repository:

./ender --project /path/to/repository onboard

Inspect the proposed checks, then apply them:

./ender --project /path/to/repository onboard --apply --baseline --host codex
./ender --project /path/to/repository init --activate

Run a task:

./ender --project /path/to/repository loop "Fix duplicate orders: retrying one request must create one order"

Check progress or completion evidence:

./ender --project /path/to/repository status
./ender --project /path/to/repository acceptance
./ender --project /path/to/repository metrics

In Codex, select $ender. In Claude Code, use /enders-game:ender.

The Loop

Ender runs the same boring sequence every time:

baseline -> plan -> build -> focused checks -> review -> risk checks -> full verification -> learn

Completion requires all of these:

  • the requested behavior is implemented
  • each acceptance criterion has reviewer evidence
  • mapped behavior checks pass on the unchanged source tree
  • relevant UI, security, or migration checks run when those risks are present
  • verified lessons and handoff notes are saved

Repairs reuse the plan unless evidence shows the plan is wrong. Repeated identical failures stop the loop instead of burning retries.

Project Artifacts

Ender writes local, inspectable files into the target repository:

.enders-game/
  config.json
  state.json
  tasks/
  logs/
  memory/
    USER.md
    MEMORY.md
    HANDOFF.md
    lessons/
    attempts/
    sessions/
  sprints/
    YYYY-WNN.md

After a verified task completes, Ender also updates:

  • CHANGELOG.md with a task completion entry
  • ROADMAP.md with a completed roadmap item
  • .enders-game/sprints/YYYY-WNN.md with completed work and what worked

Each generated entry includes the Ender task id, so reruns do not duplicate records.

Commands

./ender --project /repo init --activate
./ender --project /repo onboard --apply --baseline
./ender --project /repo loop "task outcome"
./ender --project /repo loop --resume
./ender --project /repo status
./ender --project /repo triage
./ender --project /repo acceptance
./ender --project /repo verify
./ender --project /repo metrics

Task control:

./ender --project /repo task add "task outcome"
./ender --project /repo task list
./ender --project /repo task switch TASK_ID
./ender --project /repo task pause

Memory:

./ender --project /repo memory search "duplicate order retry"
./ender --project /repo memory add "Retries reuse the request ID." --evidence "Passing duplicate-order regression"
./ender --project /repo memory audit

Experiments and CI:

./ender --project /repo experiment create --path /tmp/ender-worktree --branch experiment/name
./ender --project /tmp/ender-worktree experiment diff
./ender --project /repo ci RUN_ID
./ender --project /repo ci RUN_ID --repair

Skills

Skill Purpose
ender Route a complete coding task
ender-onboard Discover setup, checks, and baseline failures
ender-spec Turn an idea into observable requirements
ender-plan Map acceptance criteria to verification
ender-build Implement the smallest complete change
ender-review Review raw code against requirements
ender-test Execute checks and report actual evidence
ender-loop Run bounded, resumable iterations
ender-debug Diagnose a failure before repair
ender-security Review concrete trust boundaries
ender-qa Exercise UI and accessibility behavior
ender-simplify Remove unnecessary complexity
ender-tasks Queue, pause, switch, and resume work
ender-experiment Isolate a proposal in a Git worktree
ender-ci Inspect and reproduce a CI failure
ender-memory Audit, correct, retire, and search knowledge
ender-session Recall context and save a handoff
ender-ship Prepare authorized delivery
ender-help Find the right command

Validation

Run the offline suite:

python3 -m unittest discover -s tests -v

Run the deterministic evaluation self-test:

python3 plugins/enders-game/scripts/evaluate.py --self-test

Optional live evaluation uses your normal host credentials and billing:

python3 plugins/enders-game/scripts/evaluate.py --live --host codex --output /tmp/ender-evaluation.json

Guides

Updating

Pull the latest release, refresh or reinstall the plugin with your host plugin manager, then start a new agent session.

Uninstall:

codex plugin remove enders-game@enders-game
claude plugin uninstall enders-game@enders-game

Remove only the marked Ender activation blocks from project instruction files if you want to undo activation. Project memory remains local under .enders-game/.

License

MIT

About

Evidence-driven coding plugin for Codex and Claude Code

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages