← Discover MCPs and Agents
y
MCPAI & MLGitHub

yottacode

Sovereign AI coding agent for your terminal

Links

README

From the repo.

yottacode

Sovereign AI coding agent for your terminal.
A local-first coding agent that turns issues into tested pull requests while you stay in control of every model, command, and file change.

Model-agnostic · Local-first · Approval-first · GitHub-ready

License: MIT Go Release CI Docs

Getting startedDocsProvidersSecurityGitHubContributing

       yottacode
yottacode GitOps demo

Try it in 60 seconds

Install on Linux or macOS:

curl -fsSL https://yottacode.ai/cli/install.sh | bash

Run setup once:

yottacode setup

Open a repository and try a read-only first task:

cd your-repo
yottacode

Then ask:

Review this repo, identify one low-risk improvement, and show me a plan before editing.
Prefer local models?

Start with Ollama if you want to try yottacode without API keys:

ollama pull qwen2.5-coder   # or llama3.1 / deepseek-coder-v2
yottacode setup

Watch the Ollama setup walkthrough: Get started with yottacode and Ollama.

Prefer a hosted provider?

Configure a hosted model during setup, or set the matching environment variable before running yottacode:

export OPENAI_API_KEY=...
yottacode setup

See docs/providers.md for OpenAI, OpenRouter, Anthropic, Gemini, Google Vertex AI, xAI, ChatGPT/Copilot OAuth, Ollama, and other OpenAI-compatible provider setup.

Manual install: pinned version, no installer script
export VERSION=<latest-release> # for example: 0.4.0
# Swap linux/darwin and amd64/arm64 to match your machine
curl -fsSL https://github.com/yottadynamics/yottacode/releases/download/v${VERSION}/yottacode_${VERSION}_linux_amd64.tar.gz \
  | tar -xz
install -m 0755 ./yottacode "$HOME/.yottacode/bin/yottacode"

Available archives: yottacode_${VERSION}_{linux,darwin}_{amd64,arm64}.tar.gz; checksums are published in SHA256SUMS on each release.

Windows users should run yottacode under WSL.

More install options: docs/installation.md.


Why yottacode?

If you want...yottacode gives you...
Model choiceOpenAI, first-class OpenRouter setup, Anthropic, Gemini, Google Vertex AI, xAI, ChatGPT/Copilot OAuth, Ollama, NVIDIA NIM-compatible workflows, vLLM, Together, and other /v1-compatible endpoints
Local-first controlPlain-file sessions, memory, approvals, checkpoints, and no telemetry
Real repo workflowsBranches, commits, PRs, CI checks, reviews, issues, comments, and isolated worktrees
Team-safe automationPermission rules, path validation, approval previews, plan mode, and rollback checkpoints
LSP code intelligenceLocal LSP tools for Go, TypeScript/JavaScript, Python, and Rust
One-shot automationyottacode run for CI/CD, ticket resolution, and scripted workflow automation
IDE integrationACP protocol support so yottacode can connect to compatible IDEs and agent frontends
Repeatable team workflowsAgent Skills for review checklists, runbooks, releases, migrations, and project-specific playbooks

Built for control and privacy

Autonomy is useful only when you can trust the loop. yottacode is designed around explicit control: no telemetry, no analytics, plain files under ~/.yottacode/, and model traffic only to providers you configure.

ControlWhat it means
Approval-first mutationsFile writes, shell commands, git operations, and other risky actions pause for approval with a diff, command, or write preview.
Path validationEdits stay inside the working tree and block risky targets like secrets and SSH/cloud credentials.
Project permissionsTeam rules can allow, ask, or deny specific tools and paths.
Plan modeyottacode can investigate read-only first, produce a plan, and wait before implementation.
Checkpoints and rollbackConversation and repo changes can be checkpointed and rolled back.
Local model optionOllama keeps model traffic on your machine.
Plain-file memoryUser and project memory live under ~/.yottacode/ and can be inspected or deleted.

Tools run on the host by default. For stronger shell-command isolation, enable the optional Podman command sandbox with [sandbox] backend = "podman"; it runs approved run_bash/run_tests commands and document subprocess helpers in GHCR-published containers. See docs/sandbox.md and docs/security-and-allow-lists.md.

Provider costs depend on the model you choose. yottacode reports token usage where providers expose it; see docs/cost.md for current cost-tracking behavior.


Use yottacode when your terminal session becomes the workflow

  • You are reviewing a PR and need more than a summary. Ask yottacode to read the diff, inspect the touched code, check CI, identify risk, and draft the exact follow-up comment.
  • A test is failing and the fix is not obvious. Let yottacode reproduce the failure, trace callers, patch the code, add a regression test, and rerun checks before you commit.
  • You need to make a safe infrastructure or GitOps change. Update YAML, Helm values, Terraform, or deployment config with approval-gated diffs instead of copy-pasting snippets between chat and your editor.
  • You are jumping into a repo you do not know yet. Use plan mode, LSP, file search, memory, and session recall to map the codebase before anything mutates.
  • You want an agent to carry the boring GitHub steps. Turn an issue into a branch, commits, CI inspection, PR body, and reviewer-ready summary without leaving the TUI.
  • You need model choice without changing your workflow. Start with local Ollama, use a cloud model when needed, and switch providers mid-session without moving the task to another tool.

Browse reusable workflows in yottacode-skills.


Project status

yottacode is pre-1.0 and actively developed. The CLI, config, and on-disk formats are still stabilizing, but the core terminal workflow is usable today for real repositories.

Good first areas for contributors:

  • Docs, examples, and first-run polish.
  • Provider adapters and setup diagnostics.
  • Workflow skills for real engineering tasks.
  • Bug reports from real terminal sessions.
  • Tests around approval, GitHub, memory, and worktree behavior.

Support the project

If yottacode looks useful, a GitHub star helps the project reach more developers, attract contributors, and grow the ecosystem. Bug reports, setup feedback, and workflow ideas are just as valuable — open an issue.


Documentation

Browse the full documentation online at yottacode.ai/docs. The guides below are the in-repo copies.

SectionDescription
docs/quickstart.mdFirst successful session
docs/installation.mdBuild and install options
docs/configuration.mdFlags, env vars, config file, diagnostics
docs/providers.mdProvider setup and switching
docs/models.mdModel configuration
docs/tools.mdBuilt-in tools and approval behavior
docs/lsp.mdLSP code intelligence for Go, TypeScript/JavaScript, Python, and Rust
docs/github.mdGitHub integration: auth, tools, permissions
docs/security-and-allow-lists.mdApprovals, permissions, path policy, isolation
docs/worktrees.mdParallel sessions and .worktreeinclude
docs/memory.mdMemory and context persistence
docs/sessions.mdSession management and recall
docs/tui-slash-commands.mdTUI command reference
docs/cli.mdCLI command reference
docs/run-recipes.mdyottacode run scripting and CI recipes
docs/architecture.mdInternals
docs/development.mdContribution workflow
docs/troubleshooting.mdCommon issues
docs/faq.mdFrequently asked questions

Contributing

yottacode is built in the open, and contributions are welcome — from typo fixes and docs improvements to provider adapters, workflow skills, and core agent features.

Before opening a PR, please keep changes focused, include tests/docs for behavior changes, and make sure go test ./... and go vet ./... pass.

See CONTRIBUTING.md for the full guide. Please report vulnerabilities privately through SECURITY.md, not public issues.


Development

yottacode is a single, pure-Go binary targeting Go 1.26+ on Linux and macOS (amd64/arm64).

Build

go build -o yottacode ./cmd/yottacode

Test

go test ./...                    # unit tests — fast, no network
go vet ./...                     # static checks
govulncheck ./...                # reachable dependency/toolchain CVEs
go test -race ./...              # race detector
go test -cover ./...             # coverage
go test -tags=integration ./...  # live-provider tests, needs API keys

Most extension work lands in a documented seam: built-in tools, slash commands, provider adapters, MCP integration, skills, and TUI workflows. See docs/development.md for the full guide — project layout, the model-catalog refresh, provider diagnostics, and release versioning.


License

MIT. See LICENSE.

Collected info

  • 7 stars
  • 3 forks
  • Language: Go
  • Source updated: 8/30/2026

Config for your environment

Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.

Tool

OS

Config file: ~/.cursor/mcp.json

{
  "mcpServers": {
    "mcp-server": {
      "url": "{MCP_ENDPOINT_URL}"
    }
  }
}

Paste into mcpServers in the config file. Restart Cursor after saving.

If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.