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 v1.0.0
  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-1.0.0.tar.gz (103.6 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-1.0.0-py3-none-any.whl (115.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for eden_cli-1.0.0.tar.gz
Algorithm Hash digest
SHA256 386cc4afb33f0dff6bc090095cca9e1667f04ce760be06d637d916884a44b9a3
MD5 27ad39c91538d52e3fad45025bc5ee0e
BLAKE2b-256 c36402dd60a853477eb2c8d91d14b038daa7dd03c7a793657c9b0125737835d7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: eden_cli-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 115.9 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-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4c71f2131524948ceef49a7cbdf7f2c8092199221ded72ffe6ec766b855ff47c
MD5 be8c55784b00be34b1e41c69ebce9fd1
BLAKE2b-256 ded339502b8862f42e9cccf2f660a0a01c595586055fc6b65fd8cfc60f0b08f2

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