Skip to main content

A Claude-Code-style coding agent harness built on choreoai.

Project description

choreoai-cli

A Claude-Code-style coding agent harness built on choreoai.

choreoai-cli is an interactive terminal REPL that runs a coding agent in your current directory using choreoai's LLMAgent, tools, budget, and trace — so the harness itself is budget-bounded and observable.

Status: pre-alpha. This is a minimal but working slice (v0), not a full Claude Code clone.

Features (v0)

  • Interactive REPL (choreoai-cli) with /help, /reset, /exit
  • Polished terminal UI: rich panels/markdown/syntax + prompt_toolkit history/multiline input
  • Live-streamed tool calls via choreoai event subscribers (spinner while the model thinks)
  • Coding tools: read_file, write_file, list_dir, run_shell (path jail under --cwd)
  • Shell commands require confirmation unless --auto is set
  • Built on choreoai: LLMAgent tool loop, Budget + Trace middleware, typed event stream
  • Default model: claude-sonnet-5 (via choreoai / Anthropic)

Install

Requires Python 3.10+.

pip install choreoai-cli

This installs the PyPI package choreoai-cli and its dependency choreoai (also from PyPI).

Install from source

git clone https://github.com/choreo-ai/choreoai-cli
cd choreoai-cli
pip install -e ".[dev]"

Local choreoai development

PyPI requires a normal version pin (choreoai>=0.0.1), not a git URL. For local / offline development against a checkout of the framework:

# Install framework from local checkout first (editable)
pip install -e C:\karthik\repos\choreo   # or: pip install -e /path/to/choreo

# Then install the CLI (and optional dev extras)
pip install -e ".[dev]"

If choreoai is already installed editable, pip install -e ".[dev]" will satisfy choreoai>=0.0.1 without hitting PyPI for that package.

Usage

# Live agent (requires ANTHROPIC_API_KEY)
export ANTHROPIC_API_KEY=sk-ant-...
choreoai-cli

# Skip shell confirmation prompts (use carefully)
choreoai-cli --auto

# Single non-interactive command
choreoai-cli -c "List the files in this directory"

# Custom working directory
choreoai-cli --cwd /path/to/project

REPL commands

Command Action
/help Show help
/reset Clear session budget, shell approvals, and trace
/exit Quit

Anything else is sent to the coding agent as an instruction.

Input uses prompt_toolkit when the terminal is interactive (history, Esc+Enter for multiline submit). Pipes and tests fall back to plain input.

Environment

Variable Required Notes
ANTHROPIC_API_KEY For live Default model is claude-sonnet-5

Offline tests inject a fake BaseChatModel and do not need an API key.

Tests

# Prefer editable local choreoai if you have a checkout
pip install -e /path/to/choreo
pip install -e ".[dev]"
pytest

Tests are offline: no network and no ANTHROPIC_API_KEY.

How it works

  1. Builds a choreoai LLMAgent with a coding-assistant system prompt and file/shell tools.
  2. Wraps each turn in choreoai BudgetMiddleware + TraceMiddleware (onion stack).
  3. Runs the agent tool loop; prints tool calls, the final answer (rich), budget usage, and a short trace summary.

License

MIT © 2026 Karthik Reddy

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

choreoai_cli-0.0.4.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

choreoai_cli-0.0.4-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file choreoai_cli-0.0.4.tar.gz.

File metadata

  • Download URL: choreoai_cli-0.0.4.tar.gz
  • Upload date:
  • Size: 18.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for choreoai_cli-0.0.4.tar.gz
Algorithm Hash digest
SHA256 4de7f5f165d62d4e14a99827489b712e787ed191c78d66fb33aa1288459ccdfd
MD5 6c5f07ba5d62a61db7386e85854c9f1a
BLAKE2b-256 9df83259aa31dc143f8cbda06e79309bee2c558b2fa5f24d20459e79fb1b9392

See more details on using hashes here.

Provenance

The following attestation bundles were made for choreoai_cli-0.0.4.tar.gz:

Publisher: python-publish.yml on choreo-ai/choreoai-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file choreoai_cli-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: choreoai_cli-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for choreoai_cli-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d8f52b40245eb172f61aad9de0319b83e676396563bdf4ef35c8c48ec41ff18c
MD5 a03ec3268479a3b32821b9622e61822a
BLAKE2b-256 df1374dd513432d607cf8a3c47966edf7e647cd13726eea25229cbc039dc0de0

See more details on using hashes here.

Provenance

The following attestation bundles were made for choreoai_cli-0.0.4-py3-none-any.whl:

Publisher: python-publish.yml on choreo-ai/choreoai-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page