aiDragon
Saphira Agents
Our C-written terminal installer and manager for AI coding agents on Saphira Linux. It handles the installation details that are awkward on musl, while leaving your choice of tools and credentials with you.
Start here
Install the package, then choose the coding agents and provider SDKs you want from the TUI.
apk add saphira-agents
saphira-agents --setup
A normal user gets a per-user install by default. Running as root or with sudo can offer a machine-wide install where the selected tool supports it. Credentials, provider logins, sessions and API keys remain your own: Saphira Agents installs tooling; it does not collect or configure credentials.
Why a Saphira installer exists
Linux support does not automatically mean musl support. A vendor may assume a different libc, publish an unsuitable binary, document an unofficial npm name, or expect its installer script to make decisions locally. Saphira Agents records the paths we have actually tested instead of asking each user to discover those details again.
- Some vendors publish proper musl binaries; some do not.
- Some npm names are unofficial or misleading.
- Some packages require narrowly approved lifecycle scripts.
- Some tools are better installed from verified vendor artefacts.
The menu contains agents that we have made work on Saphira's musl environment. If an option does not install and end with a working command on Saphira, it is not included merely to make the list longer.
How installation works
Saphira Agents uses more than one installation backend. npm is used where the upstream package is appropriate. direct is used where a vendor supplies a proper musl binary. Direct artefacts are resolved and integrity-checked rather than installed by blindly piping a vendor script into a shell.
A few packages need lifecycle scripts. Where that is required, the installer grants a narrow approval for that package; it does not globally trust arbitrary npm scripts.
Coding agents
Coding agents are the programs you actually run. The current catalogue has ten tested choices.
| Agent | Package or backend | Install scope | Note |
|---|---|---|---|
| OpenCode | @opencode/cli | User, global | Narrow script approval |
| Codex | @openai/codex | User, global | — |
| Claude Code | @anthropic-ai/claude-code | User only | Narrow script approval |
| Devin | direct:devin | User, global | — |
| Copilot CLI | @github/copilot | User, global | — |
| Kiro | direct:kiro-cli | User, global | — |
| Antigravity | direct:agy | User, global | — |
| Qwen Code | @qwen-code/qwen-code | User, global | Narrow script approval |
| Auggie | @augmentcode/auggie | User, global | Narrow script approval |
| Goose | direct:goose | User, global | — |
A short TUI session
The menu is deliberately plain: choose the items, choose a scope when available, and let the selected policy perform the installation.
$ saphira-agents --setup
Coding agents
[ 1] OpenCode @opencode/cli [user, global]
[ 2] Codex @openai/codex [user, global]
[ 3] Claude Code @anthropic-ai/claude-code [user-only]
Select (numbers, space-separated, empty for none): 1
Provider SDKs
[ 1] Anthropic @ai-sdk/anthropic [user, global]
[ 2] OpenAI @ai-sdk/openai [user, global]
...
Select (numbers, space-separated, empty for none):
Scope [user/global] (default user):
OpenCode: installed @opencode/cli@latest
saphira-agents: done (per-user scope)
Provider SDKs
Provider SDKs are integrations that coding agents and other software can use; they are not coding-agent programs themselves. Each provider name links to its own developer or product page. The separate models.dev link is a neutral catalogue reference.
| Provider | Models | Package | Install scope |
|---|---|---|---|
| Anthropic | models.dev | @ai-sdk/anthropic | User, global |
| OpenAI | models.dev | @ai-sdk/openai | User, global |
| models.dev | @ai-sdk/google | User, global | |
| Azure | models.dev | @ai-sdk/azure | User, global |
| AWS Bedrock | models.dev | @ai-sdk/amazon-bedrock | User, global |
| Google Vertex | models.dev | @ai-sdk/google-vertex | User, global |
| xAI | models.dev | @ai-sdk/xai | User, global |
| Meta | models.dev | @ai-sdk/openai | User, global |
| Z.AI | models.dev | @ai-sdk/openai-compatible | User, global |
| DeepSeek | models.dev | @ai-sdk/openai-compatible | User, global |
| NVIDIA | models.dev | @ai-sdk/openai-compatible | User, global |
| MiniMax | models.dev | @ai-sdk/anthropic | User, global |
| Moonshot | models.dev | @ai-sdk/openai-compatible | User, global |
| Alibaba | models.dev | @ai-sdk/openai-compatible | User, global |
| Cohere | models.dev | @ai-sdk/cohere | User, global |
| Baseten | models.dev | @ai-sdk/openai-compatible | User, global |
| Cerebras | models.dev | @ai-sdk/openai-compatible | User, global |
| Chutes | models.dev | @ai-sdk/openai-compatible | User, global |
| Cloudflare AI Gateway | models.dev | ai-gateway-provider | User, global |
| Databricks | models.dev | @ai-sdk/openai-compatible | User, global |
| DeepInfra | models.dev | @ai-sdk/openai-compatible | User, global |
| DigitalOcean | models.dev | @ai-sdk/openai-compatible | User, global |
| Fireworks | models.dev | @ai-sdk/openai-compatible | User, global |
| Groq | models.dev | @ai-sdk/groq | User, global |
| Together AI | models.dev | @ai-sdk/togetherai | User, global |
| Thinking Machines | models.dev | @ai-sdk/anthropic | User, global |
| Hugging Face | models.dev | @ai-sdk/openai-compatible | User, global |
| Mistral | models.dev | @ai-sdk/mistral | User, global |
| OpenRouter | models.dev | @openrouter/ai-sdk-provider | User, global |
| Poolside | models.dev | @ai-sdk/openai-compatible | User, global |
| SiliconFlow | models.dev | @ai-sdk/openai-compatible | User, global |
| Vultr | models.dev | @ai-sdk/openai-compatible | User, global |
| Venice AI | models.dev | venice-ai-sdk-provider | User, global |
| Vercel AI Gateway | models.dev | @ai-sdk/gateway | User, global |
| Xiaomi | models.dev | @ai-sdk/openai-compatible | User, global |
| LiteLLM | models.dev | @ai-sdk/openai-compatible | User, global |
Installing an SDK does not create an account or configure credentials. Follow the provider's normal authentication instructions and keep credentials out of source trees.
Commands
saphira-agents --setup
saphira-agents --list
saphira-agents --installed
saphira-agents --update
- --setup
- — choose and install agents and SDKs.
- --list
- — show the available selections and their packages.
- --installed
- — show packages recorded by Saphira Agents.
- --update
- — update software previously installed and recorded through Saphira Agents, using that item's appropriate installation policy.
Saphira-native foundation
The installer sits on tooling packaged for Saphira; it does not replace the operating system environment. Saphira-built Node.js 24 is the default, with Node.js 22 available separately where compatibility genuinely requires it. Saphira Agents does not download another Node runtime, install nvm, or bootstrap an upstream Node distribution.
- ripgrep provides fast local source search, a normal part of an effective coding-agent environment.
- RTK and the complete RTK-AI tooling reduce noisy agent and tool output, helping conserve context.
- Grit is optional tooling for agent and worktree coordination and locking.
- Bubblewrap is available as part of the Saphira environment for tools that need isolation.
OpenCode
OpenCode is one of the supported coding agents. Its ordinary site is available at opencode.ai.
Want to try OpenCode? Our referral link gives $5 OpenCode credit. It is a referral link; using it is entirely optional.
In short
apk add saphira-agents
saphira-agents --setup