Skip to main content

CLI-First deterministic multi-agent orchestration library

Project description

DeterminAgent

CLI-First Deterministic Multi-Agent Orchestration Library

PyPI version Python 3.10+ License: Apache 2.0 Coverage

Orchestrate powerful AI workflows at zero extra cost. DeterminAgent controls multiple AI CLI tools (Claude Code, Copilot CLI, Gemini CLI, OpenAI Codex) using LangGraph to create deterministic pipelines powered by your existing flat-rate subscriptions.


🚀 First Contact

DeterminAgent is a Python library for developers who want to build complex, multi-agent systems without paying for expensive per-token API calls. By wrapping the CLI tools you already pay for, DeterminAgent allows you to build production-grade workflows for $0 in variable costs.

Key Features

  • Library-Only: Full control in pure Python. No proprietary YAML DSL.
  • Subscription Arbitrage: Uses your flat-rate CLI subscriptions.
  • Deterministic: Powered by LangGraph state machines.
  • Zero-Latency: Controls local tools via subprocess.

📦 Installation

From PyPI (Recommended)

pip install determinagent

From Source

For the latest development version or to contribute:

# Clone the repository
git clone https://github.com/Experto-AI/determinagent.git
cd determinagent

# Install dependencies and set up environment
poetry install

# Verify installation
poetry run python -c "import determinagent; print(determinagent.__version__)"

Prerequisites


⚡ Quick Start

Library Usage

from determinagent import UnifiedAgent, SessionManager

# Create a deterministic agent
writer = UnifiedAgent(
    provider="claude",
    model="balanced",
    role="Technical Blogger",
    session=SessionManager("claude")
)

# Send a prompt - zero per-token cost!
response = writer.send("Explain LangGraph in 3 sentences.")
print(response)

Template Flows

Don't start from scratch. Use our pre-built Python templates in the flows/ directory:

  • flows/blog/: Complete Writer → Editor → Reviewer workflow with human review.
Blog Flow

To run the blog flow:

python flows/blog/main.py "My Blog Topic" --writer claude --editor copilot

🧩 Compatibility Matrix

Provider Adapter Status Session Support Web Search Model Aliases
Claude Code ✅ Alpha ✅ Native (Resume) ✅ Yes fast, balanced, powerful, reasoning, free
Copilot CLI ✅ Alpha ❌ No (Fresh Session) ✅ Yes fast, balanced, powerful, reasoning, free
Gemini CLI ✅ Alpha ❌ No (Fresh Session) ❌ No fast, balanced, powerful, reasoning, free
OpenAI Codex ✅ Alpha ❌ No (Fresh Session) ❌ No fast, balanced, powerful, reasoning, free

🎯 Model Alias Map

DeterminAgent resolves model aliases per provider so you can keep flows consistent.

Alias Claude Code Gemini CLI Copilot CLI OpenAI Codex
fast haiku gemini-3-flash-preview claude-haiku-4.5 gpt-5.1-codex-mini
balanced sonnet gemini-3-pro-preview claude-sonnet-4.5 gpt-5.1-codex
powerful opus gemini-3-pro-preview claude-opus-4.5 gpt-5.1-codex-max
reasoning opus gemini-3-pro-preview gpt-5.2 gpt-5.1-codex-max
free haiku gemini-3-flash-preview claude-haiku-4.5 gpt-5.1-codex-mini

Notes:

  • You can always pass an exact model string to override the alias.
  • Availability depends on your provider plan and CLI version.
  • Gemini 3 preview models require enabling Preview Features in Gemini CLI; if unavailable, pass gemini-2.5-pro or gemini-2.5-flash.
  • Codex CLI does not enumerate models in --help; defaults mirror Codex model names exposed by Copilot CLI.

🛠️ Troubleshooting

Common Issues

  1. ProviderNotAvailable: CLI command 'claude' not found

    • Ensure the tool is installed and available in your $PATH.
    • Run claude --version manually to verify.
  2. Authentication Errors

    • DeterminAgent uses your local sessions. Ensure you are logged in to the CLI tool (e.g., copilot auth status or claude login).
  3. Subprocess Timeouts

    • Some agents (like Writer) can take a few minutes for long content. Ensure your environment doesn't kill long-running processes.

Debug Mode

Set LOG_LEVEL=DEBUG to see the full subprocess commands and raw output.


📖 Documentation

DeterminAgent Architecture

Core Documentation

API Reference

Tutorials

Community


📜 License

Apache License 2.0 - see LICENSE for details.

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

determinagent-0.14.1.tar.gz (29.6 kB view details)

Uploaded Source

Built Distribution

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

determinagent-0.14.1-py3-none-any.whl (35.9 kB view details)

Uploaded Python 3

File details

Details for the file determinagent-0.14.1.tar.gz.

File metadata

  • Download URL: determinagent-0.14.1.tar.gz
  • Upload date:
  • Size: 29.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for determinagent-0.14.1.tar.gz
Algorithm Hash digest
SHA256 6ae0530156d2cfaa1c22c418a9589478828dd7bfcdb2ed70cc346059a1b36315
MD5 74ba18b9806dc2be9c89c78e74be64ef
BLAKE2b-256 554d1b7dea9034ee014c53ed4df764f61dfb6264c6604d388efa95e672ff2486

See more details on using hashes here.

Provenance

The following attestation bundles were made for determinagent-0.14.1.tar.gz:

Publisher: publish.yml on Experto-AI/determinagent

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

File details

Details for the file determinagent-0.14.1-py3-none-any.whl.

File metadata

  • Download URL: determinagent-0.14.1-py3-none-any.whl
  • Upload date:
  • Size: 35.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for determinagent-0.14.1-py3-none-any.whl
Algorithm Hash digest
SHA256 efbb16467564e64f26ea8422fb05c00956d32c450ba5b1a0f8daab35a639cc9a
MD5 97026f6174f47ae152c7527623829daa
BLAKE2b-256 6c17cf14b5c1f4153b2e3750a1e4640f7c0d464479c20b735ffa2dde0d70e067

See more details on using hashes here.

Provenance

The following attestation bundles were made for determinagent-0.14.1-py3-none-any.whl:

Publisher: publish.yml on Experto-AI/determinagent

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