opencode-tris — the open source AI coding agent, Trinity Asylum edition.
English | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | 日本語 | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ��ทย | Türkçe | Українська | বাংলা | Ελληνικά | Tiếng Việt
Note
opencode-tris is a fork of opencode. It is not built by the
opencode team and is not affiliated with them in any way. The CLI is installed as opencode-tris, so
it can live side by side with an upstream opencode install.
curl -fsSL https://opencode-tris.vercel.app/install | bashInstall a specific version:
curl -fsSL https://opencode-tris.vercel.app/install | bash -s -- --version 1.18.25Install without touching your shell config (you add the directory to PATH yourself):
curl -fsSL https://opencode-tris.vercel.app/install | bash -s -- --no-modify-pathThe installer downloads the release archive for your platform from
the releases page, puts the binary in
$HOME/.opencode-tris/bin/opencode-tris, and adds that directory to your PATH.
To uninstall, run opencode-tris uninstall.
cd <project>
opencode-tris # start the TUI
opencode-tris run "..." # one-shot prompt
opencode-tris auth login # connect a provider
opencode-tris upgrade # update to the latest release
opencode-tris --help # everything elseopencode-tris keeps its own state, so it can run side by side with upstream opencode without either one stepping on the other:
| opencode-tris | opencode | |
|---|---|---|
| Config | ~/.config/opencode-tris/ |
~/.config/opencode/ |
| Data, sessions, auth | ~/.local/share/opencode-tris/ |
~/.local/share/opencode/ |
| Cache, state | ~/.cache/opencode-tris/, ~/.local/state/opencode-tris/ |
…/opencode/ |
| Binary | ~/.opencode-tris/bin/opencode-tris |
~/.opencode/bin/opencode |
Nothing is shared, so copy ~/.config/opencode/opencode.json into ~/.config/opencode-tris/ to carry
an existing setup over — everything in that directory is merged, with opencode-tris.json* applied last
— and run opencode-tris auth login to connect providers.
Inside a project, opencode-tris reads its own files first and falls back to opencode's, so a repo that is already set up needs no changes:
opencode-tris.json/opencode-tris.jsonc, elseopencode.json/opencode.jsonc.opencode-tris/(agents, commands, skills, plugins, themes, tools), else.opencode/
The preference is per directory: a directory holding opencode-tris.json ignores the opencode.json
beside it rather than merging the two, so you can override settings for the fork alone. Anything
opencode-tris creates in a project — a new agent, an installed plugin, a written plan — goes into
.opencode-tris/, unless the project only has .opencode/, in which case that is used.
OPENCODE_* environment variables are read as-is, so they apply to both CLIs. For the four that point
at config and storage locations — OPENCODE_CONFIG, OPENCODE_CONFIG_CONTENT, OPENCODE_CONFIG_DIR
and OPENCODE_DB — an OPENCODE_TRIS_-prefixed variable takes precedence when set, so you can target
this CLI alone.
opencode-tris includes two built-in agents you can switch between with the Tab key.
- build - Default, full-access agent for development work
- plan - Read-only agent for analysis and code exploration
- Denies file edits by default
- Asks permission before running bash commands
- Ideal for exploring unfamiliar codebases or planning changes
Also included is a general subagent for complex searches and multistep tasks.
This is used internally and can be invoked using @general in messages.
Everything in the upstream opencode docs applies, with opencode replaced
by opencode-tris on the command line.
bun install
bun dev # run from source
bun run --cwd packages/opencode build # build binaries into packages/opencode/dist
bash ./install-site/build.sh # build the install site served at /installReleases are cut by the release workflow, which builds the CLI for
every supported platform and uploads the archives that install downloads.
Please read our contributing docs before submitting a pull request.
Built on opencode — MIT licensed.
