What it looks like
A full sprint in 4 commands. The agent pushes back, scopes down and ships what matters.
I need Stripe payments. Users should subscribe to a monthly plan.
How many users do you have? If pre-launch, validate willingness to pay first.
200 active users. Some asked about a pro plan.
Scope: REDUCE.
Checkout + webhook. Let's go.
You said "payments." The agent said "validate willingness to pay first" and shipped a checkout link instead of a 2-week billing system. Install nanostack →
The sprint
Each skill supports --quick, --standard, --thorough. Quick requires 9/10 confidence to report. Thorough flags at 3/10.
Opinionated stack defaults
/nano doesn't just plan. It enforces product standards. When the output is user-facing, it picks specific tools. All defaults are configurable per project or globally.
Stack defaults are configurable. Run bin/init-stack.sh to auto-detect your stack from package.json, go.mod or requirements.txt. Override per project (.nanostack/stack.json) or globally (~/.nanostack/stack.json). Only configure what you want to change.
UI: Dark mode from day one. Mobile responsive. shadcn/ui components, not raw CSS.
SEO: Semantic HTML, meta tags, Core Web Vitals, sitemap, robots.txt.
LLM SEO: JSON-LD structured data, llms.txt at root, clean URLs, Q&A-style content.
CLI: Color output, --json flag, progress indicators, actionable errors, exit codes (0/1/2).
Cross-skill intelligence
Each skill persists a JSON artifact. The next skill reads it. Context flows through the entire sprint. When skills disagree, precedent rules resolve the conflict.
Scope drift detection
5 of 10. View all on GitHub →
// .nanostack/review/20260329-150000.json { "schema_version": "1", "phase": "review", "branch": "feat/freshness-dot", "mode": "standard", "summary": { "blocking": 0, "should_fix": 1, "nitpicks": 1, "positive": 2 }, "scope_drift": { "status": "clean", "planned_files": ["src/Badge.tsx", "src/lib/freshness.ts"], "actual_files": ["src/Badge.tsx", "src/lib/freshness.ts"] }, "conflicts": [] }
Guard
AI agents run destructive commands. Guard blocks them with a safer alternative. The agent reads the suggestion, retries with the safe version. No manual intervention.
Command: git push --force origin main
Fails if remote has changed since last fetch.
7 of 28. Plus 9 warn rules. Full list →
Parallel sprints & autopilot
/conductor coordinates multiple agents. /think --autopilot runs the full sprint unattended. All artifacts stay local.
/think → /nano → build ─┬─ /review (Agent A) ─┐
├─ /qa (Agent B) ├─ /ship
└─ /security (Agent C) ─┘Autopilot mode
Autopilot: review clean (5 findings, 0 blocking). Running /security...
Autopilot: security grade A. Running /qa...
Autopilot: qa passed (12 tests, 0 failed). Running /ship...
Autopilot: done. Sprint journal saved.
Stops for: blocking findings, critical vulns, test failures, or unanswerable product questions.
The know-how system
Every sprint generates artifacts, journals and learnings. The knowledge compounds across sprints. Each new sprint benefits from every previous one.
.nanostack/
├── think/ # scope decisions, validated premises
├── plan/ # specs, planned_files for drift detection
├── review/ # findings, scope drift reports
├── qa/ # test results, screenshots, WTF scores
├── security/ # vulnerability reports, STRIDE models
├── ship/ # PR metadata, CI results, deploy status
├── conductor/ # parallel sprint state, phase locks
├── config.json # project settings, agent detection, custom phases
└── know-how/
├── journal/ # dated sprint summaries (Obsidian-compatible)
├── learnings/ # accumulated insights across sprints
└── conflict-precedents/ # resolution patternsInstall
git clone https://github.com/garagon/nanostack.git ~/.claude/skills/nanostack cd ~/.claude/skills/nanostack && ./setup
Full features: rename, analytics, sprint journal, project setup.
-g installs globally (all projects). --full-depth installs all 8 skills. Copies files. No advanced features (rename, analytics, journal).
Requires: macOS, Linux, or Windows (Git Bash / WSL). git, jq. No build step. Zero dependencies.
Extend
A skill is a folder with a SKILL.md file. Register custom phases in .nanostack/config.json and they compose with the core sprint. Stack defaults, skills and config follow three levels: project → user → defaults.
# my-skill/SKILL.md --- name: deploy-aws description: Deploy to AWS with CloudFormation --- You are a deployment specialist. Follow these steps: 1. Validate CloudFormation template 2. Run preflight checks (account, region, permissions) 3. Deploy stack with change set preview 4. Verify endpoints respond with 200 ## Next Step Run /qa --quick to verify the deployment.
Full guide: Extending nanostack →
The Zen of Nanostack
- 1.Question the requirement before writing the code.
- 2.Delete what shouldn't exist. Don't optimize what's left until you do.
- 3.If nobody would use a broken v1, the scope is wrong.
- 4.Narrow the scope, not the ambition.
- 5.Evidence beats conviction. Conviction beats consensus.
- 6.Ship the version that ships today.
- 7.One sprint, one order. No step gets skipped.
- 8.Every step should know what the step before it decided.
- 9.Fix it or ask. Never ignore it.
- 10.Zero findings is an honest answer. Invented findings are not.
- 11.Security is not a tradeoff. It is a constraint.
- 12.The output should look better than what was asked for.
- 13.If the plan is hard to explain, the plan is wrong.