abri docs

What is otto?

A CLI-native credential manager that keeps secrets local, encrypted, and out of your AI agents' context.

Your credentials are scattered across .env files, MCP config JSON, shell profiles, and cloud consoles. That was always messy — but now AI agents read all of it, silently and constantly, wherever they run. The mess became a live wire.

otto keeps your secrets in an encrypted vault on your machine and injects them exactly where they're needed: shell sessions, scripts, git operations, SSH connections, and AI tool configurations. No cloud account holds your keys. No browser extension. Just a CLI that works the way developers already work.

How it works

otto runs a background daemon that holds your unlocked vault key in memory. The CLI is a thin client that talks to the daemon over a Unix domain socket, which gives you sub-100ms reads without re-entering your password on every access.

otto cli ──► otto daemon ──► encrypted SQLite vault
               │
               ├── SSH agent
               ├── git-credential helper
               ├── git commit signing
               └── auto-lock after timeout

Credentials use path-style names — anthropic/api-key, github/token — not vault-item-field ceremony. The vault is a single encrypted SQLite file: easy to back up, nothing to configure. See Security architecture for how the encryption works.

Built for the agentic age

The tools that inject secrets are the point:

  • otto run starts a process with credentials in its environment — nothing lands in a file on disk.
  • The SSH agent and git helpers mean ssh, git push, and commit signing work with keys that never sit unencrypted in ~/.ssh.
  • otto serve goes further for AI agents: the agent's environment holds only a base URL and a scoped, expiring token. otto injects the real API key at the transport layer, so the model never sees the secret — not in its context, not in its config file.

Where this is going

otto is the data plane of Abri: a coordination plane over developer identity. The next stages connect your machines into a mesh — vaults syncing peer-to-peer over SSH, ephemeral machines (CI runners, agent sandboxes) acting as proxy nodes that hold zero secrets on disk, and a control plane that coordinates the fleet but never custodies a key.

Today, otto is a fast, local, single-machine credential manager you can adopt on its own terms. Start with installing otto.