Patties CLI — Overview
patties is the single command-line entry point developers use to work with a Patties project. Three verbs cover the daily loop — dev, build, deploy — plus a …
Mission
patties is the single command-line entry point developers use to work with a Patties project. Three verbs cover the daily loop — dev, build, deploy — plus a dev-only secret for keychain-stored credentials. A separate scaffolder create-patties produces a new project. Nothing else ships in the CLI until a real workflow demands it.
Design pillars
- One command, zero questions —
bun dev(which callspatties dev) must work in a fresh project with no flags. - Bun-native — invoked via
bun bin/patties.ts. The CLI itself usesBun.spawn,Bun.file,Bun.argv. - Fast feedback — startup under 200ms. No top-level network calls.
- Honest output — surface errors with file + line, suggest the next action.
Commands
| Command | Spec |
|---|---|
patties dev | 02-dev-command |
patties build | 03-build-command |
patties deploy | 04-deploy-command |
patties secret | 08-secret-command |
bunx create-patties <name> | 05-create-patties → 09-create-patties-dx → redesigned by 18-create-patties-redesign |
/patties skill · /patties-init flow | 19-patties-agent-skill |
Supporting specs
- 01-entry —
bin/patties.tsdispatch. - 06-config-loading — how every command finds and loads
patties.config.ts. - 07-logging-errors — output conventions, diagnostics, exit codes.
Phase alignment
- Phase 0: entry,
dev, scaffolder seed. - Phase 1:
build,secret. - Phase 2:
deploy. - Phase 3+: no new commands; existing commands generate
AGENTS.mdautomatically. - Dev-DX (post-launch): 09 — overhauls
create-patties(template, README, prompts, agent overlays, name handling). - Dev-DX (post-launch): 18 — redesigns the
create-pattiesprompt flow (agent → type → UI/monorepo → deploy target) and hands off to the agent for feature scaffolding; 19 — the/pattiesskill (components + agent-only pattern modules) and the/patties-initplan-mode onboarding flow.
Non-goals
- An interactive REPL.
- A plugin-extensible command surface (plugins extend the framework, not the CLI). Revisit via RFC if user demand appears.