si is an AI-first CLI for orchestrating coding agents across multiple Codex and Muse accounts.
Quick links: docs/index.mdx · docs/CLI_REFERENCE.md · docs/RELEASING.md
- Codex workers: profile-scoped tmux lifecycle under
si codex(profile,spawn,stop,remove,shell,tail,list,respawn,tmux). - Muse workers: the same profile-scoped lifecycle under
si muse. - Third-party API integrations now live in the standalone
orbitrepo and CLI:orbit <provider> .... - Docs workflow: Mintlify content under
docs/, validated with the external Mintlify CLI.
rust/: primary Rust workspace and shipping CLI implementation.docs/: Markdown + Mintlify docs content.
Use one of these install paths:
# npm (global launcher package)
corepack pnpm install -g @aureuma/si
# Homebrew
brew install aureuma/si/siHomebrew uses user/repo/formula for external taps, so brew install aureuma/si is not a valid formula path.
Direct source install remains available and installs the si launcher on this host:
cargo run --quiet --locked -p si-tools --bin si-release -- installer run --forcePrerequisites:
- Rust
1.94.0for local source builds (seerust-toolchain.toml). - Installed
sifor normal usage, ortarget/release/siif you want to run the just-built binary directly from source.
Build the local source binary:
cd /path/to/si
cargo build --release --locked --bin siRun the built binary directly without installing it:
target/release/si --helpFast local iteration (rebuilds only when Rust sources change, then execs the fresh binary):
./tools/si-dev --helpCodex lifecycle:
si codex spawn --profile <profile> --workspace "$PWD"
si codex spawn --profile <profile> --slot review --workspace "$PWD"
si codex spawn --profile <profile> --slot release --workspace "$PWD"
si codex respawn --profile <profile> --slot review --workspace "$PWD"
si codex list
si codex shell --profile <profile> --slot review -- bash
si codex tail --profile <profile> --slot review
si codex stop --profile <profile> --slot review
si codex remove --profile <profile> --slot reviewEnroll two profiles per provider (browser/device approval at login is the
only manual step), then verify isolation:
si codex profile add work --email work@example.com
si codex profile add personal --email personal@example.com
si codex profile login work
si codex profile login personal
si muse profile add work --email work@example.com
si muse profile add personal --email personal@example.com
si muse profile login work
si muse profile login personal
si codex profile list
si muse profile listMuse lifecycle mirrors Codex:
si muse spawn --profile <profile> --workspace "$PWD"
si muse list
si muse tail --profile <profile> --slot review
si muse stop --profile <profile> --slot review
si muse remove --profile <profile> --slot reviewMintlify docs tooling:
mintlify validate
mintlify devsi codex ...: Codex agent runtime operations.si muse ...: Muse agent runtime operations.orbit ...: third-party API integrations in the standaloneAureuma/orbitrepo.
Full command surface: run si --help and command-specific help (si <command> --help).
Run module tests:
cargo run --quiet --locked --manifest-path rust/crates/si-tools/Cargo.toml --bin si-test-runner -- workspaceRun the staged Rust workspace checks:
cargo fmt --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspaceRun installer smoke tests:
cargo run --quiet --locked -p si-tools --bin si-release -- installer hostRun the full local test stack in one command:
cargo run --quiet --locked --manifest-path rust/crates/si-tools/Cargo.toml --bin si-test-runner -- allScenario coverage and expected behavior are documented in docs/HOST_TEST_MATRIX.md.
Release process:
Versioning rules:
- SI uses one repo-wide version.
- The canonical hard-coded source is root
Cargo.tomlunder[workspace.package].version. - Every commit bumps PATCH in that one place; minor releases reset PATCH to
0and are the only tagged releases.
Published GitHub Releases automatically include multi-arch CLI archives for:
- Linux (
amd64,arm64) - macOS (
amd64,arm64)
Local preflight command:
cargo run --quiet --locked -p si-tools --bin si-release -- self assets --out-dir .artifacts/release-preflightcargo run --quiet --locked -p si-tools --bin si-release -- npm package --out-dir .artifacts/release-preflight
These commands default to the current SI workspace version from root Cargo.toml; pass --version only when you intentionally need a detached tag/version target.
This repository is licensed under GNU Affero General Public License v3.0 (AGPL-3.0).
See LICENSE.
