Skip to content
Back to projects
Project

DevBlueprint

Live

A reusable engineering setup for new projects - a professional process from commit one, with no lock-in.

Preview of DevBlueprint

DevBlueprint is a reusable engineering setup for new projects, extracted from a real production codebase and made stack-agnostic. One command scaffolds the git workflow, quality gate, code conventions and AI-assistant guardrails into a target directory. Documentation-first: the output is plain files you own and edit - no runtime, no lock-in. You can delete DevBlueprint afterwards, and nothing breaks.

Problem

Every new project starts without a process: the git workflow, quality gate, conventions and AI guardrails get reinvented every time or skipped entirely - especially solo. Running several AI sessions in parallel adds a second problem: the chats keep switching each other's branch. Ready-made frameworks and template repos only solve it at the price of permanent lock-in.

Role

Everything - the idea, extracting the process from a real production codebase, the stack-agnostic core docs, the Bash CLI, the nine stack variants, the bats test setup and the agent integration (CLAUDE.md, --json, setup skill).

The solution

DevBlueprint separates a stack-agnostic core from thin stack overlays. core/ holds the source of truth - the git workflow, engineering standards, conventions, quality-and-testing and the CLAUDE.md templates. Nine variants add only the stack-specific parts: the concrete gate commands, a CI workflow, .gitignore and the worktree configuration. A Bash CLI scaffolds, checks and updates the setup.

  • Two long-lived branches (develop -> master) and one worktree per task via a single wt script - several AI sessions work in parallel without ever switching each other's branch.
  • A quality gate of lint, typecheck, test and build, wired to the stack and enforced locally (pre-commit) as well as in CI (GitHub Actions).
  • Nine stack variants - from web-nextjs and ios-swift through backend-go and rust to the generic Makefile gate - each with a matching gate, CI and setup.sh.
  • Overwrite-safe init adds the workflow to an existing repo too, without overwriting code; update pulls in later core improvements without touching CLAUDE.md, CI or code.
  • Operable by an agent: --json output, an intake.yml plus plan (== init --dry-run) and a /devblueprint-setup skill that interviews, plans and scaffolds only after confirmation.
Features
  • Two-branch workflow with one worktree per taskdone
  • Quality gate locally (pre-commit) and in CIdone
  • Nine stack variantsdone
  • CLI: list, init, plan, update, doctor, detect, versiondone
  • Overwrite-safe init for existing reposdone
  • update re-syncs only the core filesdone
  • detect identifies the stack by fingerprintdone
  • Intake file + plan (dry-run preview)done
  • Machine-readable --json outputdone
  • Agent setup skill (/devblueprint-setup)done
  • doctor --strict and --run-gatedone
  • Optional community-health files (--community)done
Architecture

core/ is the stack-agnostic source of truth and is copied into every project; variants/ only overlay the stack-specific parts. The output is plain files in the target project - there is no runtime and no dependency on DevBlueprint itself.

  • core/ holds the agnostic core (git workflow, standards, conventions, quality-and-testing, CLAUDE.md templates); a variant adds only gate commands, CI, .gitignore and wt.conf.
  • init is overwrite-safe - without --force it overwrites no existing file, so it can be applied to an existing repo.
  • update re-syncs only the core-owned files and never touches CLAUDE.md, wt.conf, CI or code - core improvements reach old projects without destroying their customizations.
  • plan is exactly init --dry-run - the same code path with writes short-circuited, so the preview can never diverge from the real output.
  • Every output is a plain file the target project owns - no framework, no lock-in; DevBlueprint can be deleted afterwards.
Challenges

Reusability without lock-in

Problem

A shared setup as a framework or template repo binds every project to it permanently - updates become a dependency, deviations a fight against the tool.

Solution

Documentation-first: the output is plain files the project owns and edits freely. There is no runtime; after scaffolding, DevBlueprint can be deleted without anything breaking.

Parallel AI sessions without branch collisions

Problem

Several assistant chats on one repo switch each other's branch away - work lands on the wrong state or is lost.

Solution

One worktree per task via a single wt script: each task gets its own directory with its own branch (off develop), the main clone stays on master. Sessions no longer collide.

One workflow, many stacks

Problem

The process should be the same everywhere, but the concrete quality-gate commands, CI and ignore rules differ fundamentally by stack.

Solution

core/ holds the agnostic core, variants/ overlay only the stack-specific parts. A new variant is created by copying a folder and adjusting the gate, wt.conf and CI - it then appears automatically in devblueprint list.

Operable by an agent

Problem

A text CLI is built for humans; an agent must parse the state reliably and confirm before every write.

Solution

list, doctor and version emit --json (doctor still exits non-zero on errors), an intake.yml plus plan (== init --dry-run) shows exactly the planned output, and a /devblueprint-setup skill interviews, writes the intake file and scaffolds only after confirmation.

Timeline
  1. May 2026

    Foundation

    Started as an agent project kit with a CLI scaffold, first docs and CI. Five commits lay the base before the concept is reworked.

  2. 7 July 2026

    Realignment & build-out

    Rebuilt into a documentation-first engineering kit in one concentrated workday: the core docs, the worktree-based workflow, nine stack variants, the CLI commands (detect, --json, intake + plan, update), the Bats test suite and the agent setup skill. 112 of the 117 commits fall on this day - including dogfooding the setup on its own repo.

What I learned
  • A reusable setup must not be a framework: documentation-first, plain files and no runtime beat any template repo, because the project stays the owner and nothing is tied to DevBlueprint.
  • The worktree-per-task approach is the point where parallel AI sessions stop pulling each other's branch out from under them - a single wt script carries the whole workflow.
  • Separating a shared core from thin stack overlays (core/ vs. variants/) keeps nine stacks maintainable: you change the process in one place, and only the stack-specific bits live per variant.
  • For an agent to operate a tool it needs machine-readable state (--json) and a dry run (plan == init --dry-run) - only then can it confirm reliably before writing.
  • Applying the setup to itself (dogfooding) surfaced the gaps fastest.