Quickstart
This guide gets yottacode running against a model provider and starts your first coding session.
Install yottacode
One-liner (Linux + macOS, amd64 + arm64):
curl -fsSL https://raw.githubusercontent.com/yottadynamics/yottacode/main/install.sh | bashThe installer drops yottacode into ~/.yottacode/bin/ (no sudo), verifies the release archive against published SHA256 sums, and appends a PATH export to your shell rc โ making a timestamped backup of the rc first.
Skip the rc edit (you manage PATH yourself):
curl -fsSL https://raw.githubusercontent.com/yottadynamics/yottacode/main/install.sh \
| bash -s -- --no-modify-rcPin a specific version instead of “latest”:
curl -fsSL https://raw.githubusercontent.com/yottadynamics/yottacode/main/install.sh \
| VERSION=0.2.0 bashVerify the install:
yottacode --versionNote
yottacode checks GitHub for a newer release once a day on startup and offers to upgrade before the TUI starts. Set YOTTACODE_NO_UPDATE_CHECK=1 to disable. Windows users should run yottacode under WSL. For build-from-source and pinned-archive paths, see Installation.
Configure a provider
yottacode does not guess a default model or endpoint. The fastest way to configure one is the wizard:
yottacode setupThe wizard writes ~/.yottacode/config.toml and ~/.yottacode/.env, probes providers where possible, and can be rerun later with /setup from inside the TUI.
Or configure manually โ you need a model id, a base URL, and (for some providers) an API key. Pick one:
ollama serve
ollama pull <your-model-id>
export YOTTACODE_PROVIDER=ollama
export YOTTACODE_MODEL=<your-model-id>
export YOTTACODE_BASE_URL=http://localhost:11434/v1
yottacodeOllama ignores API keys; yottacode handles that internally.
See Providers for the full list.
Ask for help in the TUI
Launch yottacode from a project directory:
cd ~/src/my-project
yottacodeTry prompts like:
summarize this repositoryfind the tests for the session package and explain how persistence worksadd a regression test for the bug described in this issueUseful interactive commands:
/helpโ list slash commands/providerโ add, remove, or switch providers/modelโ open model picker or/model <name>to switch directly/planโ toggle plan mode (also Shift+Tab) for research before implementation/themeโ change the color theme/skillsโ menu to enable/disable, install, uninstall, check, and update skills/sessionsโ resume, rename, or export sessions/memoryโ edit USER.md / YOTTACODE.md or browse agent-managed memories/doctorโ actively probe the configured endpoint/initโ draft or refresh.yottacode/YOTTACODE.md
Use one-shot mode for scripts
yottacode run "summarize the public API of this repo"yottacode run prints the final answer to stdout and sends status/tool progress to stderr, so it composes cleanly with pipes, redirects, and CI logs.
Understand approvals
yottacode reads and inspects your repo without prompting; mutating actions usually ask first. You will see approval modals for file writes, shell commands, destructive git operations, and similar changes.
Caution
yottacode does not provide an in-process sandbox. For real isolation, run it inside a container or devcontainer.