Skip to main content

Open-source AI coding and research agent framework

Project description

Eden CLI

CI PyPI version Python versions License: MIT Code style: Ruff

Eden CLI is an open-source AI coding and research agent framework. It provides workspace intelligence, multi-model consensus planning, code analysis, research tools, and interactive shell capabilities — all from your terminal.

Features

  • Workspace Intelligence — Auto-detect project types (Python, Dart, JS/TS, Rust, Go), parse code structure, build symbol indexes and dependency graphs
  • Multi-Model Consensus — Query multiple local LLMs (via Ollama) and find agreement across models for more reliable answers
  • Planning Engine — Analyze intent, decompose tasks, generate patches, and review code changes
  • Research Tools — Search web, docs, GitHub, packages (PyPI/npm), and Q&A sites from the CLI
  • Interactive Shell — Rich REPL with theme support, command history, slash commands
  • Model Management — 9 built-in models with easy switching
  • Profiles & Themes — Named profiles, 5 built-in color themes
  • Secure Credential Storage — Providers and API keys encrypted with PBKDF2 + HMAC
  • Offline Mode — Graceful fallback when no network is available
  • Plugin System — Extend with custom commands and tools

Installation

Recommended: install with pipx

pipx install eden-cli

Or with uv

uv tool install eden-cli

Optional: tree-sitter parsers

For improved code analysis accuracy, install the parser extras:

pipx install eden-cli[parsers]
# or
uv tool install eden-cli --with eden-cli[parsers]

Verify installation

eden version

You should see output like:

Eden CLI v0.1.1
  Build:    2025-07-05T12:00:00Z
  Python:   3.12.5
  Platform: Linux-6.8.0-x86_64-with-glibc2.39

Quick Start

Run eden in a project directory

Navigate to a project and run eden. It will auto-detect the project type:

cd my-python-project
eden

Doctor — check your setup

eden doctor

Config — view and set configuration

eden config show
eden config set app.debug true

Chat — interactive shell

eden chat

Research — search from the CLI

eden research search "python async patterns"
eden research docs "fastapi middleware"
eden research github "click cli library"
eden research package "rich"
eden research qa "how to use pytest fixtures"
eden research compare "fastapi flask starlette"

Consensus — multi-model agreement

eden consensus solve "Write a Python function to merge two sorted lists"
eden consensus models

Plan — generate implementation plans

eden plan create "Add rate limiting to the API"
eden plan analyze "Refactor the database layer"

Model management

eden model list
eden model switch qwen2.5-coder:7b

Profile management

eden profile list
eden profile create work
eden profile switch work

Theme management

eden theme list
eden theme switch nord

Provider & credentials

eden provider
eden login
eden login openrouter --key sk-or-v1-...
eden provider remove groq

System info

eden info
eden version

Development

Setup

git clone https://github.com/eden-cli/eden.git
cd eden
uv venv
uv pip install -e ".[dev,parsers]"

Run tests

pytest tests/

Run linter

ruff check eden/
ruff format --check eden/
mypy eden/

Build package

python -m build
twine check dist/*

Project Structure

eden/
├── __init__.py           # Package exports, version
├── _version.py           # Version management
├── app.py                # Eden context bootstrap
├── cli/                  # CLI layer (Typer)
│   ├── main.py           # Root Typer app
│   ├── commands/         # Sub-command implementations
│   └── ui/               # Terminal UI helpers
├── config/               # Configuration (YAML + env vars)
├── consensus/            # Multi-model consensus engine
├── core/                 # DI container, events, lifecycle
├── credentials/          # Encrypted credential storage
├── intelligence/         # Code scanning, parsing, indexing, queries
├── logging/              # Logging setup
├── memory/               # Session and repository memory
├── models/               # Model manager
├── modes/                # Operation modes (research, review)
├── offline/              # Offline detection
├── onboarding/           # First-run wizard
├── planning/             # Intent analysis, task decomposition, patching
├── plugins/              # Plugin system
├── profiles/             # Named profiles
├── providers/            # AI provider registry
├── research/             # Research engine (web, GitHub, docs, packages)
├── shell/                # Interactive REPL
├── telemetry/            # Telemetry manager
├── themes/               # Theme system
├── tools/                # Tool framework
└── workspace/            # Workspace detection and session management

Upgrading

pipx upgrade eden-cli
# or
uv tool upgrade eden-cli

Uninstalling

pipx uninstall eden-cli
# or
uv tool uninstall eden-cli

License

MIT

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

eden_cli-0.1.1.tar.gz (98.0 kB view details)

Uploaded Source

Built Distribution

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

eden_cli-0.1.1-py3-none-any.whl (108.7 kB view details)

Uploaded Python 3

File details

Details for the file eden_cli-0.1.1.tar.gz.

File metadata

  • Download URL: eden_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 98.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for eden_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 884b5db7bf1dca8701a5a03a8cd2a63d6e3fe810c5831e718c4b017ff183c1c7
MD5 41174b96d1e34e930357be631ffc8ba8
BLAKE2b-256 1bbc5c2d9467d396b47d61abafe6282f049e636d9a1810255be1d87e39a69e45

See more details on using hashes here.

File details

Details for the file eden_cli-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: eden_cli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 108.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for eden_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 571b6f287003a53477038e7d53e405ef7dd7ec9036070d43740402685f1705b5
MD5 73a9d36f01df797ca0e7fdaa2a81d882
BLAKE2b-256 c3aabd41e32974dee54987adc5a17cd920b9f34af3ec6316f720bae43a63298e

See more details on using hashes here.

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