Getting Started
This page walks through the first useful session. The goal is not to configure every advanced backend immediately; the goal is to make one small, inspected, verified change.
Smallest Useful Path
After installing CodingScaffold in your environment, your first three commands are:
That's it for day one. Everything else on this page is reference material you can come back
to when you actually need it. The other commands (policy, mcp, skills, memory,
team, permissions, tools route) are deliberately out of the first-run mental model —
doctor lists them under "Ignore for now (advanced)" so you don't have to track them
yourself.
What doctor does
Surveys the scaffold artifacts already present in your project (AGENTS.md, PR template,
.coding-scaffold/, etc.), prints which ones exist, and recommends 1-3 next commands
tailored to the state. Read-only — never installs or writes files. Use --json for
machine-readable output.
What pilot does
Safe guided wrapper. Runs only read-only local checks (Python version, git on PATH, the
chosen coding tool's binary on PATH, whether OPENAI_API_KEY / ANTHROPIC_API_KEY /
GITHUB_TOKEN are set, whether Ollama / LM Studio / llama-server are installed) and then
prints the exact 10-minute path tailored to your environment. The recipe may include
install flags such as --install-tools, but pilot itself never installs anything — you make
that call.
Both commands accept --target (defaults to cwd) and --json. Run coding-scaffold doctor --help or pilot --help for the full surface.
What Needs A Model?
The scaffold bootstrap does not need one. coding-scaffold setup run, probe, credentials,
tools adapt, and tools select-model run locally in Python. tools select-model classifies the text and recommends
a route; it does not send the prompt to an LLM.
The first LLM call happens when the coding adapter starts doing agent work, for example when
OpenCode runs /first-session. Before that step, OpenCode needs access to a model through a local
runtime, an authenticated CLI, or a cloud/API provider.
Install
Recommended for using the CLI from any project:
Then open the repo you want to prepare and run:
This installs coding-scaffold into an isolated tool environment and puts the command on your
PATH, so you do not have to activate a virtual environment from the CodingScaffold source checkout
before using it elsewhere.
If you do not use uv, pipx gives the same global-command shape:
If your shell cannot find coding-scaffold after either command, follow the PATH prompt printed by
uv or run pipx ensurepath, then restart the shell.
For contributing to CodingScaffold itself, clone the repo and use the development environment:
Classic venv/pip works too:
On Windows PowerShell outside WSL:
Optional RouteLLM dependencies can be installed with uv sync --extra dev --extra routellm or
python -m pip install -e ".[dev,routellm]".
uv.lock is committed. Use uv sync --extra dev for reproducible local development and CI parity.
Prepare A Project
For a new user, prefer pilot first because it explains the next commands without writing files.
Run direct setup when you already know you want generated scaffold files:
Setup writes .coding-scaffold/ with project facts, provider hints, routing guidance, and
first-session documentation. It also asks which coding environment to use:
opencode: default, recommended for the first rollout.claude-code: native Claude Code project guidance and settings.codex: native Codex project guidance and skills.openclaude: experimental option for teams tracking that workflow.hermes: broader autonomous agent harness with memory, skills, MCP, and backend choices.pi: minimal terminal coding harness with project instructions, sessions, and extensions.both: generate both sets of guidance.manual: skip tool adapter generation and wire your own environment.
If the selected tool is missing and stdin is interactive, setup asks before installing it. Nothing is installed silently. Setup can also configure the knowledge backend and shared Git remote during this setup phase.
When CodingScaffold itself improves later, refresh generated files without overwriting local edits:
Files that still match the last generated checksum are updated in place. Files you edited are left
alone and the newer generated version is staged next to them as .new.
If you need project-local credentials, create an ignored template and fill only the providers you intend to use:
Configure shared knowledge during setup:
If you are joining an experienced team, prefer the team manifest:
Use top-level coding-scaffold doctor --target . until your project actually has a team manifest.
Use coding-scaffold team doctor after team connect or team init.
Install OpenCode
OpenCode is the recommended default adapter for the first team rollout.
Use coding-scaffold setup tool --tool opencode --install when you want the CLI to install a
missing tool without a second prompt, for example in a prepared dev container.
10-Minute Happy Path
This is the first useful path for Lena, the curious coding newbie, and for a small team pilot. The goal is not to enable every governance feature. The goal is one inspected repo, one named verifier, and one tiny change the developer understands.
The command-friendly version is:
The manual version is below when you want to see the shape in advance:
Inside OpenCode:
Then ask:
Continue only if the plan is understandable. For the first edit, keep the scope narrow:
Stop after the first bounded change and review:
- what files were inspected
- what files changed
- which command verifies the change
- whether any generated credential or provider file needs local-only handling
- whether the developer could explain the diff without trusting the agent blindly
For a team under 20 people, run this once with a second developer before adding a shared manifest. When both sessions produce a repeatable shape, add the lightweight team layer:
Leave RouteLLM, multi-agent workflows, large MCP setups, and enterprise policy layering for later. They are useful once the team has a repeated workflow worth standardizing.
Optional Add-Ons
Use the same validate-or-install flow for optional pieces:
llmfit is useful early because it improves hardware-aware model choice. RouteLLM and Open
Multi-Agent are advanced; add them after the first agentic coding loop is working. Obsidian is a
desktop app, so WSL users should usually install it on Windows and open .coding-scaffold/knowledge
as a vault. Context sidecars work without the Caveman add-on; install it only when you want to try
the upstream compression engine with context compress --engine caveman.
Inside OpenCode:
Expected result: the agent inspects before editing, identifies run/test commands, maps key files, and proposes one safe improvement. This command is where a working LLM connection becomes required.
Run One Agentic Loop
Inside OpenCode:
Expected result:
- explorer maps relevant files
- implementer makes a bounded change
- verification runs
- reviewer challenges the result
- you receive changed files, checks, findings, and follow-up
Capture The Habit
If the loop helped, create a reusable skill:
Then create a knowledge base to preserve decisions and useful patterns: