Looking for the canonical first-10-minutes path? See ../FIRST_10_MINUTES.md. This document covers a deeper specific topic.
This is the shortest path from "never seen Forge" to "watching it generate a working Python package."
git clone <this-repo> atomadic-forge && cd atomadic-forge
pip install -e ".[dev]"
forge doctor # confirms installForge needs an LLM to do the actual writing. Pick the cheapest path that works for you:
# Free local (recommended for testing — no quota, fully private):
ollama pull qwen2.5-coder:7b
export FORGE_OLLAMA=1
export FORGE_OLLAMA_MODEL=qwen2.5-coder:7b
# If your machine is busy, use the small fallback instead:
export FORGE_OLLAMA_MODEL=qwen2.5-coder:1.5b
export FORGE_OLLAMA_NUM_PREDICT=768
export FORGE_OLLAMA_TIMEOUT=180
# OR free cloud (Google AI Studio):
export GEMINI_API_KEY=$(your-free-key)forge demo run --preset calcForge will:
- Scaffold a complete Python package skeleton (pyproject + README + tier dirs + tests/conftest).
- Ask the LLM to emit the calculator code as a JSON array of files.
- Materialise those files, run the wire scan, run the LLM's own tests.
- Iterate until certify passes (typically 1–3 rounds).
- Invoke the generated CLI as a smoke test.
- Write
DEMO.mdsummarising the run.
The whole thing finishes in 30–90 seconds depending on your LLM. The final output is a real, importable, pip-installable Python package.
cd ./forge-demo-calc
forge certify . --package calc
pytest tests/
python -m calc.a4_sy_orchestration.cli 7 + 6forge classifies JS / TS the same way it classifies Python — no Node
install required. Try the offline showcases:
forge demo run --preset js-counter # clean JS package, certify 60/100
forge demo run --preset js-bad-wire # the same package with one upward
# import — wire flags it
forge demo run --preset mixed-py-js # one Python tier + one JS tier
# under the same rootEach writes to ./forge-demo-<preset>/ and emits a DEMO.md summarising
what recon, wire, and certify saw. No LLM key needed — these run
offline against pre-built source. See
06-javascript-quickstart.md for a full
walk-through with your own JS repo.
- 02-your-first-package.md — building from your own intent string.
- 03-the-five-tier-law.md — why every file has to live in exactly one tier.
- 04-plug-in-llms.md — switching providers.
- 06-javascript-quickstart.md — running the polyglot pipeline on your own JS / TS repo.