claude-engineer README

The project's README from github.com/Doriandarko/claude-engineer. As one markdown file: README.md.

Claude Engineer v3 🤖

A powerful self-improving AI Assistant designed for creating and managing AI tools with Claude 3.5. This framework enables Claude to generate and manage its own tools, continuously expanding its capabilities through conversation. Available both as a CLI and a modern web interface!

History and Evolution

This project represents the third major iteration of Claude Engineer, building upon the success of Claude Engineer v2. Key improvements from previous versions include:

Description

Claude Engineer v3 is a sophisticated framework that allows Claude to expand its own capabilities through dynamic tool creation. During conversations, Claude can identify needs for new tools, design them, and implement them automatically. This self-improving architecture means the framework becomes more powerful the more you use it.

Installation

For the best possible experience install uv

macOS and Linux

# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# Or using wget if curl is not available:
# wget -qO- https://astral.sh/uv/install.sh | sh

# Clone and setup
git clone https://github.com/Doriandarko/claude-engineer.git
cd claude-engineer
uv venv
source .venv/bin/activate

# Run web interface
uv run app.py

# Or run CLI
uv run ce3.py

Windows

# Install uv
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# Clone and setup
git clone https://github.com/Doriandarko/claude-engineer.git
cd claude-engineer
uv venv
.venv\Scripts\activate


# Run web interface
uv run app.py

# Or run CLI
uv run ce3.py

Interface Options

1. Web Interface 🌐

A sleek, modern web UI with features like:

Claude Engineer v3 Web Interface

To run the web interface:

# Using uv (recommended)
uv run app.py

# Or using traditional Python
python app.py

# Then open your browser to:
http://localhost:5000

2. Command Line Interface (CLI) 💻

A powerful terminal-based interface with:

To run the CLI:

# Using uv (recommended)
uv run ce3.py

# Or using traditional Python
python ce3.py

Choose the interface that best suits your workflow:

Self-Improvement Features

Core Features

Project Structure

claude-engineer/
├── app.py             # Web interface server
├── ce3.py            # CLI interface
├── config.py         # Configuration settings
├── static/           # Web assets
│   ├── css/         # Stylesheets
│   └── js/          # JavaScript files
├── templates/        # HTML templates
├── tools/           # Tool implementations
│   ├── base.py      # Base tool class
│   └── ...         # Generated and custom tools
└── prompts/         # System prompts
    └── system_prompts.py

Features by Interface

Web Interface Features

CLI Features

Choose the interface that best matches your workflow and preferences. Both interfaces provide access to the same powerful Claude Engineer capabilities, just presented in different ways.

Key Components

Assistant Class

The core Assistant class provides:

Configuration Options

The assistant supports various configuration options through the Config class:

Requirements

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Acknowledgments

This project builds upon the foundations of Claude Engineer v2, enhancing its capabilities with self-improving tool generation and advanced token management.

Built-in Tools

Claude Engineer v3 comes with a comprehensive set of pre-built tools:

Core Tools

Development Tools

File System Tools

Web Tools

Utility Tools

Each tool is designed to be:

The tools are dynamically loaded and can be extended during runtime through the Tool Creator, allowing the assistant to continuously expand its capabilities based on user needs.

API Keys Required

  1. Anthropic API Key: Required for Claude 3.5 access
  2. E2B API Key: Required for Python code execution capabilities. Get your key at e2b.dev

Add these to your .env file:

ANTHROPIC_API_KEY=your_anthropic_key
E2B_API_KEY=your_e2b_key

Star History

Star History Chart

claude-engineer (Doriandarko/claude-engineer)

assistant
Searching Database…

What is this?Claude Engineer is a self-improving AI assistant framework built on Claude 3.5 Sonnet that can generate and manage its own tools during a conversation, expanding its own capabilities over time. It ships with both a CLI and a web interface for software development tasks.
Is this a CLI tool, a web app, or both?Both: it is a Python framework that exposes two interfaces — a terminal-based CLI and a modern web UI — sharing the same underlying Assistant engine and tool system.
How do I get it running?Install the 'uv' Python package manager first for the best experience, then run either the web interface or the CLI entry point from the project.
Do I need an Anthropic API key?Yes, you need an Anthropic API key for Claude 3.5 access and Python 3.8+. An E2B API key is also required if you want the code-execution tool to run Python in a sandbox.
What are the main limits I should know about?Code execution via the E2B tool requires its own separate paid API key beyond Anthropic's, so some built-in tools won't work without extra signup. Tool creation is autonomous, meaning Claude decides when and how to build tools, which can be less predictable than manually defined ones.
Does it run on Windows as well as macOS/Linux?Yes, installation instructions are provided separately for macOS/Linux and for Windows, and the CLI and web server both run cross-platform via Python.
What built-in tools come out of the box?It ships with a Tool Creator, a UV package manager interface, an E2B sandboxed Python code executor, a Ruff-based linting tool, file system tools (create folder, create/read/edit files, diff editor), web tools (DuckDuckGo search, web scraper, browser opener), and a screenshot tool.
How does the self-improvement feature actually work?During a conversation, Claude can identify a missing capability, design a new tool for it using the built-in Tool Creator, and hot-load that tool so it is usable immediately, without restarting the app.
What's different between the web UI and CLI?The web UI adds image upload/analysis with Claude Vision, a visual token-usage progress bar, and Tailwind-styled markdown rendering, while the CLI offers a rich terminal interface with an ASCII token bar and direct, debug-friendly tool interaction — both share the same Assistant engine.
How is this different from Claude Engineer v2?V3 upgrades to the Claude 3.5 Sonnet model, adds Anthropic's token-counting API for precise usage tracking, introduces autonomous/self-improving tool creation, and removes the need for a separate 'automode' since Claude now decides when to run tools on its own.
Size
1.3 MB
Stars
11.2K
Updated
CommitDec 12
Age
2y
Commits · 90 Days