From dev
Guide a user through setting up a new project from scratch — discover intent, identify needed documents, create them collaboratively, then scaffold the repo and agent harness. Use when starting from scratch, creating a new repo, bootstrapping a project, or the user says "new project" or "set up a project".
How this skill is triggered — by the user, by Claude, or both
Slash command
/dev:greenfield [optional: project name or one-line description][optional: project name or one-line description]This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Guide the user through creating a new project from an empty directory. This is an
Guide the user through creating a new project from an empty directory. This is an interactive, conversational process — not an automated one. You ask questions, the user answers, you push back where reasoning is unclear, and together you build up the project's foundation document by document.
Goal: understand what the project is, who it's for, and what it does.
Ask questions to uncover:
Push back on:
Output: docs/design/INTENT.md — what the project is, who it's for, what it does, non-goals.
Based on the intent, propose which context documents the project needs. The standard set is below, but not every project needs all of them — and some may need extras.
Foundational (docs/design/ — create first, other docs reference these):
docs/design/INTENT.md — already created in Phase 1docs/design/TECH_STACK.md — technologies, frameworks, crates, toolsdocs/design/UX_UI_PRINCIPLES.md — design principles, user profile, interaction patternsdocs/process/CODING_CONVENTIONS.md — style, naming, error handling, dev environmentDesign (docs/design/ — depend on foundational decisions):
5. docs/design/ARCHITECTURE.md — layers, module structure, data flow, key constraints
6. docs/design/DATA_FORMAT_SPEC.md — schemas, file formats, directory layout (if applicable)
7. Domain-specific specs (e.g., docs/design/INVOICE_PDF_SPEC.md — depends on the project)
8. Behavioral specs (specs/*.allium) — if the domain has state machines, invariants, or
transition rules, use /allium:elicit to discover them during this phase
Process (docs/process/ — reference all of the above):
8. docs/process/TESTING_STRATEGY.md — what to test, how, testing pyramid, TDD approach
9. docs/process/REVIEW_GUIDELINES.md — what "done" looks like, common mistakes
10. docs/process/GIT_WORKFLOW.md — branching, PRs, commit conventions
11. docs/process/AI_AGENT_SETUP.md — workflow harness, agent catalog, skills/commands
12. docs/design/PROJECT_PLAN.md — master task checklist with dependency graph
13. docs/design/BACKLOG.md — holding pen for "by the way" ideas surfaced
mid-task; triaged before starting the next task
Present this list to the user and discuss:
Work through the agreed document list in dependency order. For each document:
The order matters because later documents reference earlier ones:
Round 1 — Foundational decisions:
Round 2 — Design:
Round 3 — Process:
assets/backlog-template.md to docs/design/BACKLOG.md, no discussion
needed; starts empty)Once all documents exist:
.gitignore (tailored to the tech stack)CLAUDE.md by invoking the /init skill (Claude Code's built-in CLAUDE.md
generator). Do not hand-write CLAUDE.md from scratch — let /init analyse the repo
(docs, README if any, Cursor / Copilot rules if any) and produce a draft, then review
and amend the draft so it includes the sections other skills depend on:
.claude/conventions/ ("Project-specific review criteria for each reviewer agent")
and docs/design/BACKLOG.md so research agents and /dev:investigate pick it upBased on the tech stack:
flake.nix declaring all system-level tooling (language toolchain, build
tools, linters, platform libraries, any project-specific CLIs) so a contributor
with only Nix installed can enter the full dev shell in one command..envrc containing use flake so direnv auto-loads the shell on cd into
the project. If the user doesn't have direnv installed, call it out — it's part
of the expected workflow.allium for Allium specs), attempt to package them via rustPlatform.buildRustPackage
/ equivalent. If that's non-trivial, leave a commented-out derivation skeleton in
the flake with instructions for the user to enable it later.nix develop end-to-end on your machine before committing to confirm the
shell actually assembles.just dev — run in development modejust test — run testsjust lint — run linterjust fmt-check — check formattingjust build — build for productionjust test-all for slow tests)nix develop -c ...) so it runs in the same environment as local development.If the project uses the agent workflow (AI_AGENT_SETUP.md):
.claude/agents/.claude/skills/.claude/conventions/ based on the project's tech stack
and architecture decisions. Propose which convention files are needed:
architecture.md, security.md, simplicity.md, correctness.md,
consistency.md, docs.mdrust.md for Rust projects, frontend.md for projects with a
frontend, etc./dev:audit to verify the scaffolded project has everything the
harness needsAt the end, verify:
.claude/conventions/)/dev:review-plan or similar)/dev:audit reports a clean statedocs/design/BACKLOG.md exists alongside the project plan with the starter templatenpx claudepluginhub balduinlandolt/dev-claude-plugin --plugin devGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.