About new-project
new-project is a skill for planning and safely bootstrapping software projects, whether new or existing. It uses presets and a capability catalog to create a blueprint, then gates changes behind checks and approval.
Key features
- 01Plan projects with presets and capabilities
- 02Create read-only project blueprints
- 03Initialize or bootstrap existing projects
- 04Audit scaffolds and repair issues
- 05Check toolchain and configuration health
Use cases
- 01Plan a new Python or Node project
- 02Add missing files to an existing repository
- 03Audit project conventions and configuration
- 04Plan docs, GitHub CI, or AI instructions
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ wyattowalsh/ agents --skill new-projectAfter installing, type/new-projectin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
data/capabilities.jsoncapabilities.schema.jsoncommand-groups.jsonconflicts.jsonpackage-aliases.jsonpresets.jsonpresets.schema.jsonevals/evals.jsonevals/fixtures/cloud-config-present/wrangler.jsoncevals/fixtures/dirty-worktree-repair/README.mdevals/fixtures/empty-repo/.gitkeepevals/fixtures/existing-ai-configs/AGENTS.mdevals/fixtures/existing-docs-root/docs/README.mdevals/fixtures/existing-node-repo/package.jsonevals/fixtures/existing-python-repo/pyproject.tomlevals/fixtures/preferences-present/.new-project-preferences.jsonreferences/adding-preferences.mdai-agent-instructions.mdai-apps.mdartifact-templates.mdcapability-model.mdcloud-deploy-dns.mdconventional-commits-release.mddata-platforms.mddesign-system.mddocs-fumadocs.mddocs-starlight-react.mdgithub-ci-release.mdintake-and-routing.mdnode-pnpm-npm.mdDetails
From the project READMENew Project
Plan and safely bootstrap modern software projects from typed presets and capability preferences.
Dispatch
$ARGUMENTS | Action |
|---|---|
| Empty | Gallery: show modes, presets, preference categories, examples; do not edit |
prefs, prefs list, catalog | Preferences: list capability categories and defaults |
prefs validate | Preferences: validate capability and preset catalogs |
prefs add <id> | Preferences: explain the safe preference addition workflow |
preset list | Presets: show curated presets and tradeoffs |
plan <name-or-path> | Plan: read-only blueprint for a new or existing target |
init <name>, new <name> | Init: new target setup after preflight, blueprint, and approval |
bootstrap <path>, init-existing <path> | Bootstrap Existing: non-destructive missing-file setup |
audit <path> | Audit: read-only scaffold and convention health report |
repair <path> | Repair: approved additive repair based on audit findings |
doctor <path> | Doctor: validate toolchain/config health without changing files |
docs <path> | Docs: classify docs-lite, docs-themed, docs-interactive, or docs-product |
docs-lite <path>, starlight <path> | Docs Lite: Astro Starlight static docs profile |
docs-themed <path> | Docs Themed: Starlight plus CSS/Tailwind brand layer |
docs-interactive <path> | Docs Interactive: Starlight plus React islands |
docs-product <path>, fumadocs <path> | Docs Product: Next.js plus Fumadocs advanced docs profile |
ai <path>, agents <path> | AI Instructions: AGENTS, nested AGENTS, Claude Code, OpenCode, Codex planning |
github <path> | GitHub: CI, templates, release workflow planning |
python <name>, uv <name> | Init/Plan: Python-focused preset |
node <name>, web <name>, next <name> | Init/Plan: Node/web preset |
data <name> | Init/Plan: Supabase, SQLite, DuckDB, notebooks preset |
aws <name>, agentcore <name> | Plan: Bedrock/AgentCore planning; provider mutation is opt-in |
monorepo <name>, nx <name> | Init/Plan: monorepo preset |
full <name>, max-free <name> | Plan: comprehensive blueprint; apply module-by-module only |
| Natural language new repo/bootstrap request | Auto-classify, then ask only high-impact missing questions |
| Product feature request | Refuse or redirect to implementation skills |
| Agent or MCP server request | Refuse or redirect to agent-conventions or mcp-creator |
| Destructive or force request | Stop, explain risk, require file-by-file approval |
Operating Flow
- Classify the request as new project, existing repo bootstrap, audit, repair, preferences, docs, AI instructions, GitHub, cloud/data, or refusal.
- Read
references/intake-and-routing.mdfor ambiguous or natural-language requests. - Run read-only preflight before any mutating mode.
- Resolve presets and capabilities from
data/, not from ad hoc prose. - Produce a blueprint with files, commands, skipped existing files, risks, approvals, and validation.
- Apply only after explicit approval, one module at a time.
- Run validation and summarize created, skipped, and deferred work.
Pattern Implementation
Classification-Gating
Classify every request before acting: new project, existing bootstrap, audit, repair, preferences, docs, AI instructions, GitHub, cloud/data, or refusal. Ambiguous requests stay read-only until the missing choice is resolved.
Progressive-Disclosure
Keep SKILL.md as the routing contract. Load references for domain detail, data files for preferences, scripts for deterministic checks, and templates only for report rendering.
Scaling-Strategy
Add future stacks as capabilities and presets first. Change the dispatch table only when a new top-level mode is needed.
Canonical Vocabulary
Use these canonical terms exactly.
| Term | Meaning |
|---|---|
| Preset | Curated setup bundle, such as minimal, python-api, docs-lite, or monorepo |
| Capability | Atomic setup feature, such as python.uv, docs.starlight, or github.actions-ci |
| Blueprint | Read-only project setup plan with files, commands, risks, approvals, and checks |
| Apply step | One approved mutation unit from a blueprint |
| External side effect | Cloud, deploy, release, DNS, account, or provider mutation |
Reference File Index
| File | Purpose | Read When |
|---|---|---|
references/workflow.md | End-to-end safe setup flow | Mutating modes |
references/capability-model.md | Capability schema and conflict semantics | Preference/catalog work |
references/presets.md | Presets and tradeoffs | Preset selection |
references/preference-catalog.md | Human-readable preference list | prefs, planning |
references/adding-preferences.md | Future preference extension workflow | prefs add, maintenance |
references/intake-and-routing.md | Classification and ambiguity handling | Natural language inputs |
references/scaffold-profiles.md | Artifact matrices by preset | Blueprinting |
references/python-uv.md | uv, uvx, pyproject, Python packages | Python profiles |
references/node-pnpm-npm.md | pnpm, npm/npx, TypeScript, Next, Astro, Nx, Changesets | Node profiles |
references/docs-starlight-react.md | Starlight docs-lite/themed/interactive guidance | Docs light modes |
references/docs-fumadocs.md | Fumadocs docs-product guidance | Docs product mode |
references/design-system.md | DESIGN.md and anti-slop design guidance | Web/docs/design profiles |
references/data-platforms.md | Supabase, SQLite, DuckDB, Kaggle, Colab | Data/notebook profiles |
references/ai-apps.md | Pydantic AI, LangGraph, Vercel AI SDK, Bedrock, AgentCore | AI app profiles |
references/github-ci-release.md | Actions, releases, least-privilege CI | GitHub mode |
references/cloud-deploy-dns.md | Vercel, Cloudflare DNS, AWS deploy gates | Cloud modes |
references/precommit-quality-gates.md | pre-commit and CI mirroring | Quality gates |
references/conventional-commits-release.md | Conventional Commits, Changesets, releases | Release profile |
references/ai-agent-instructions.md | AGENTS, nested AGENTS, Claude Code, OpenCode, Codex | AI instruction mode |
references/openspec-governance.md | OpenSpec setup and generated artifact policy | OpenSpec profile |
references/security-supply-chain.md | Secrets, package generators, Docker, CI, supply chain | Risky modes |
references/validation-and-repair.md | Audit, doctor, repair workflow | Audit/repair/doctor |
references/artifact-templates.md | Skeletons and template guidance | Artifact generation |
Script Index
| Script | Purpose |
|---|---|
scripts/preferences.py | List, validate, resolve, merge, and explain preferences |
scripts/preflight.py | Read-only project detection and risk flags |
scripts/blueprint.py | Build a JSON blueprint from request, preset, and capabilities |
scripts/validate_catalog.py | Validate schemas, dependencies, conflicts, templates, and references |
scripts/validate_plan.py | Validate blueprint safety before apply |
scripts/version_check.py | Query package/version facts for selected packages |
scripts/doctor.py | Verify existing scaffold health without mutations |
scripts/render_report.py | Render report data for HTML templates |
Scripts use argparse, JSON stdout, diagnostics on stderr, and --help. They must not read secret files.
Safety Gates
- Preflight first for scaffold, bootstrap, repair, docs, AI, GitHub, cloud, or apply modes.
- Blueprint before mutation or package install.
- Skip existing files by default; overwrite requires file-by-file approval.
- Preserve detected package managers unless migration is approved.
- Never ask users to paste secrets into chat, and never read secret files.
- Generate
.env.exampleor.env.template, not real credentials. - Cloud, deploy, release, DNS, Docker, and account mutations require explicit provider-specific approval.
- GitHub Actions default to
permissions: contents: read; add only narrow permissions. - Docker Compose templates must avoid privileged mode, host networking, Docker socket mounts, broad host mounts, root services, and public DB binds by default.
- Generated AI instructions must not bypass approvals, disable credential guards, auto-deploy, or ignore higher-priority instructions.
Critical Rules
- Use the capability catalog for stack selection; do not hardcode preferences only in prose.
- Distinguish
uvxone-off tools fromuv runproject commands. - Prefer
pnpmfor new Node projects, but preserve detected npm/yarn/bun unless migration is approved. - Prefer Starlight for lightweight docs; use Fumadocs only when product/API/docs-heavy requirements justify it.
- Make Tailwind v4 and shadcn/ui opt-in outside web/product profiles; add only needed shadcn components.
- Never claim
latestwithout live registry or official-doc evidence gathered during the run. - Do not create agents or MCP servers; redirect those requests.
- Do not create branches, worktrees, commits, pushes, releases, or PRs unless explicitly requested.
- Mirror local quality gates in GitHub Actions or document why CI was deferred.
- Include mobile-first responsive UI requirements in web/docs/design profiles.
- Update evals when dispatch modes, presets, capabilities, or safety gates change.
- Keep this body under 500 lines; move details to references.
Validation Contract
Before declaring changes to this skill complete, run:
python skills/new-project/scripts/check.py
uv run pytest tests/test_new_project.py
uv run python skills/new-project/scripts/preflight.py --path . --format json
After changing skill definitions, public descriptions, references, or eval behavior, invoke docs-steward if available.