STAN is a CLI that bridges your IDE with your favorite LLM and drives a rapid, powerful, low-friction, design-first iterative development process. Real-world AI-assisted development for professional engineers!
STAN produces a single source of truth for AI‑assisted development: a tarball of your repo plus deterministic text outputs from your build/test/lint/typecheck scripts.
You get portable, auditable, reproducible context—locally and in CI.
Because a freaking chatbot shouldn’t gaslight your code.
npm i -g @karmaniverous/stan
# or
pnpm add -g @karmaniverous/stan
# or
yarn global add @karmaniverous/stan
stan init
Build & Snapshot
Make any changes you like to your code. Then snapshot your code base and outputs from test, build & diagnostic scripts with:
stan run
Share & Baseline
Commit your changes.
Attach .stan/output/archive.tar
and your script outputs to your chat along with your requirements or comments. Or nothing: STAN will just advance your current dev plan. Use the smaller archive.diff.tar
in subsequent turns to make the most your context window.
Then baseline your next differential archive with:
stan snap
Discuss & Patch
Iterate in chat until you have a set of patches that advance your dev plan in the direction you want to go. These will include updates to your requirements and your dev plan, as well as a detailed commit message!
If you exhaust your context window, say handoff
, copy the resulting document, and paste it into a new chat thread along with your latest artifacts.
Apply each patch with:
stan patch
Repeat
When all your tests are passing and all your requirements are met, you're done!
Minimal example:
stanPath: .stan
includes: []
excludes: []
scripts:
build: npm run build
lint: npm run lint
test: npm run test
typecheck: npm run typecheck
See STAN Configuration for more!
stan run # runs all configured scripts and writes archives
stan run -p # print plan only, no side effects
stan run -S # do not run scripts (combine with -A/-p)
stan run -A # do not create archives
stan run -c -s test # combine archives & outputs
stan run -q -s lint test # sequential run subset in provided order
stan run -x test # run all except “test”
stan snap
stan snap undo | redo | set <index> | info
stan snap -s # stash before snap; pop after
stan patch # from clipboard
stan patch --check # validate only
stan patch -f file.patch # from file
See CLI Usage & Examples for more!
Guides:
-p
, -S
, -A
, and -c
.archive.tar
/archive.diff.tar
, combine mode, and snapshot history.
Additional references:The following documents are maintained by STAN and live under <stanPath>/system/
in your repo:
stan.project.md
contains your evolving project requirements.stan-todo.md
contains your evolving development plan.Case studies:
Comparison: Why STAN Over Alternatives?
Tutorial: Quickstart (End‑to‑End)
FAQ: answers to common questions and pitfalls.
Contributing: Dev Quickstart
See the Contributing — Dev Quickstart for local setup and workflow tips.
Keep the loop simple. Each stage ends with one command.
Favor small, testable modules; treat >300 LOC as design feedback.
Improve the project prompt (
BSD‑3‑Clause