Skip to content

dotbrains/eden

Repository files navigation

Eden

CI PyPI Python License

Python orchestrator for AI coding agents in sandboxed git worktrees.

Eden creates a fresh git worktree on a new branch, runs a coding agent (Claude Code, Codex, opencode, pi, or any line-streaming CLI) inside a sandbox (Docker, Podman, isolated, Daytona, or Vercel), captures its output, and commits the changes back. You get a branch with one clean commit per iteration, ready to review or merge.

flowchart LR
    Repo[(Host repo)] --> WT[Fresh worktree<br/>on new branch]
    WT --> SB[Sandbox<br/>docker • podman • isolated<br/>daytona • vercel • no_sandbox]
    SB --> Agent[Coding agent<br/>claude_code • codex<br/>opencode • pi • cli_agent]
    Agent -->|stdout stream| Loop{iteration loop}
    Loop -->|commit per iteration| Branch[Eden branch]
    Loop -->|next iteration| Agent
    Branch --> Repo
Loading

Install

pip install eden-agent

Requires Python 3.11+.

Quick example

The simulated_agent runs without any external CLI installed. Run this from inside a git repository:

from pathlib import Path

from eden import run, simulated_agent
from eden.sandboxes.no_sandbox import provider as no_sandbox

result = run(
    cwd=Path.cwd(),
    sandbox=no_sandbox(),
    agent=simulated_agent(
        output="hello from the simulated agent\n<promise>COMPLETE</promise>\n",
    ),
    prompt="ignored by the simulated agent",
    max_iterations=1,
)

print(f"branch: {result.branch}")
print(f"iterations: {len(result.iterations)}")

For a real agent, scaffold a project:

eden init --sandbox docker --agent claude-code --yes
cp .eden/.env.example .env  # then fill in API keys
docker build -t eden:$(basename $(pwd)) -f .eden/Dockerfile .
python .eden/main.py

Documentation

Full documentation lives in docs/:

License

PolyForm Shield 1.0.0.

About

Python orchestrator for AI coding agents in sandboxed worktrees.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages