Skip to content

Installation

Requirements

  • Python 3.12 or later — orchcore uses tomllib, modern type syntax, and current asyncio APIs
  • uv (recommended) or pip for package management

Install from PyPI

uv pip install orchcore
pip install orchcore

Install from Source

git clone https://github.com/AbdelazizMoustafa10m/orchcore.git
cd orchcore
uv pip install -e ".[dev]"

This installs orchcore in editable mode with all development dependencies (mypy, pytest, pytest-asyncio, hypothesis, ruff, coverage).

Optional Extras

orchcore keeps its core dependency footprint minimal. Optional extras add display and observability support:

Extra Install Command What It Adds
rich uv pip install orchcore[rich] Rich >= 13.0 for styled terminal output
tui uv pip install orchcore[tui] Textual >= 0.40 for TUI dashboards
telemetry uv pip install orchcore[telemetry] OpenTelemetry tracing support with OTLP gRPC and HTTP exporters
dev uv pip install orchcore[dev] mypy, pytest, pytest-asyncio, hypothesis, ruff, coverage

Core Dependencies

orchcore has four core dependencies:

Package Version Purpose
pydantic >= 2.10 Data validation and typed models
pydantic-settings >= 2.7 Layered configuration with TOML support
Jinja2 >= 3.1 Prompt template rendering
tzdata >= 2024.1 Timezone database fallback for named reset times on Windows and slim containers

Type Hints (PEP 561)

orchcore is PEP 561 compliant — the package includes a py.typed marker file. When you install orchcore, mypy and other type checkers automatically discover its inline type annotations. No stub packages are needed.

Verify Installation

python -c "import orchcore; print(orchcore.__version__)"

Agent CLI Prerequisites

orchcore orchestrates external agent CLIs as subprocesses. You need at least one agent CLI installed and on your PATH:

Agent Install Docs
Claude Code npm install -g @anthropic-ai/claude-code claude.ai/code
Codex npm install -g @openai/codex OpenAI Codex
Gemini CLI npm install -g @google/gemini-cli Gemini CLI

orchcore itself does not handle agent authentication — each agent CLI manages its own login or API-key flow. By default, orchcore launches agent subprocesses with a filtered environment, so inherited provider variables such as ANTHROPIC_API_KEY, OPENAI_API_KEY, or GEMINI_API_KEY may be omitted unless you passlist them with env_passlist, use env_policy = "inherit", or supply explicit values through env_vars.

Next Steps