sous-cli
v0.0.10
Published
Sous CLI for terminal-based coding and orchestration
Readme
Sous CLI
This repo builds and ships the Sous CLI.
It includes:
- a build step that writes
dist/cli.js PROACTIVE,KAIROS, andCOORDINATOR_MODEbuild features enabled- a custom
sous modefor research-style multi-agent orchestration
Requirements
- Bun installed and available in your shell
- Anthropic-compatible credentials
If Bun is not currently on PATH, make sure your shell setup includes Bun.
Example ~/.zshrc lines:
# bun completions
[ -s "/Users/frank/.bun/_bun" ] && source "/Users/frank/.bun/_bun"
# bun
export BUN_INSTALL="$HOME/.bun"
export PATH="$BUN_INSTALL/bin:$PATH"
export PATH="$HOME/.bun/bin:$PATH"Notes:
- The completions line is safe even if Bun is not installed yet. It only runs if
/Users/frank/.bun/_bunexists. - The
PATHlines do not install Bun by themselves. Your colleague still needs Bun installed under~/.bunor another location on disk. - If Bun is installed somewhere else, adjust the path accordingly.
Then reload your shell:
source ~/.zshrcInstall from npm
Requirements:
- Node.js 20 or newer
- Anthropic-compatible credentials
Install globally:
npm install -g sous-cliRun the CLI:
sousRun with credentials set inline:
ANTHROPIC_API_KEY=... ANTHROPIC_BASE_URL=... sousUpgrade:
npm install -g sous-cli@latestUninstall:
npm uninstall -g sous-cliLocal development setup
cd /path/to/sous_cli
bun installBuild
Build output is written to dist/cli.js.
cd /path/to/sous_cli
bun run buildWhat the build does:
- bundles
src/entrypoints/cli.tsxtodist/cli.raw.js - prepends
build/macro.js - writes the final runnable CLI to
dist/cli.js
So the file you actually run is:
dist/cli.jsPublish to npm
This repo is configured to publish the sous-cli package and expose the sous binary.
Before publishing:
- make sure you are logged into npm with an account that can publish the package
- make sure Bun is installed, because
npm publishrunsprepublishOnly, which runsbun run build - if you want to preview the package contents first, run
npm pack --dry-run
Recommended publish flow:
cd /path/to/sous_cli
bun install
npm whoami
npm pack --dry-run
npm version patch
npm publishNotes:
- the package is unscoped, so you do not need
--access public - the published package only includes
bin/,dist/cli.js,stubs/, andREADME.md - if your npm account requires publish-time 2FA, npm will prompt for the OTP during
npm publish
Run The CLI
Basic local run:
cd /path/to/sous_cli
bun run dist/cli.jsWith auth:
cd /path/to/sous_cli
ANTHROPIC_API_KEY=... ANTHROPIC_BASE_URL=... bun run dist/cli.jsRun Sous Mode
sous mode is a custom leader-driven team mode for research-style projects.
Behavior:
- the leader starts with team context already initialized
- the leader cannot directly do implementation work
- the leader delegates to teammates
- the leader can use team messaging and shared task tools
Run it with:
cd /path/to/sous_cli
ANTHROPIC_API_KEY=... ANTHROPIC_BASE_URL=... sousOptional fixed team name:
cd /path/to/sous_cli
ANTHROPIC_API_KEY=... ANTHROPIC_BASE_URL=... CLAUDE_CODE_SOUS_TEAM_NAME=sous-test sousOther Modes
Coordinator mode:
CLAUDE_CODE_COORDINATOR_MODE=1 bun run dist/cli.jsProactive mode:
bun run dist/cli.js --proactiveExperimental team mode:
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 bun run dist/cli.jsTypical Workflow
- Install dependencies with
bun install - Build with
bun run build - Run
souslocally, or install the published package withnpm install -g sous-cli - Use
sous --normalto start the previous default mode explicitly
Notes
node_modules/anddist/take most of the disk space in this repo.- If
bun run ...fails because Bun is not found, add the BunPATHexports to your shell config and reload it. dist/cli.jsshould be rebuilt after source changes.
