git submodule

Ship a feature
every day.

Delta installs into any repo as a git submodule and runs nightly via GitHub Actions — a PR lands in your inbox each morning.

How it works

1

Product agent picks what to build

Reads your product vision, principles, and completed feature history from .delta/config.yml. Ranks the backlog by user value and writes a tight feature brief with acceptance criteria.

2

Developer agent builds it

Reads the brief, explores your codebase to understand existing patterns, then implements the feature using TDD — failing tests first, then minimal code to pass. One atomic commit.

3

A PR lands in your inbox

The feature branch is pushed and a pull request is opened with the full brief as the description. Review it, check the preview, merge or close. Delta runs again tomorrow.

Install

bash
# 1. Add Delta as a submodule
git submodule add https://github.com/derrybirkett/delta delta
bash delta/install.sh

# 2. Describe your product
$EDITOR .delta/config.yml

# 3. Add your Anthropic API key to GitHub repo secrets
#    Settings → Secrets → ANTHROPIC_API_KEY

# 4. Commit and push — the daily cycle fires at 2am UTC
git add .delta/ .github/ Makefile .gitmodules
git commit -m "chore: install delta"
git push

Configure

Everything Delta needs to know lives in .delta/config.yml in your repo.

product: name: My App vision: "What is this app for? Who does it help?" # drives backlog generation target_user: "Your primary user in one sentence" principles: - simplicity first - mobile responsive avoid: [] # features to never spec stack: framework: nextjs styling: tailwind testing: vitest allowed_deps: [] # new packages the dev agent may install

Changelog

v0.1.0 2026-05-19
  • Initial release
  • Product agent: backlog management, brief generation, acceptance criteria
  • Developer agent: TDD cycle, commit, blocked detection
  • GitHub Actions workflow template for nightly cycles
  • Docker support for local cycle runs
  • Validated with live PR cycle on a Next.js test repo