Claude Engineer is an interactive command-line interface (CLI) that leverages the power of Anthropic's Claude-3.5-Sonnet model to assist with software development tasks.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
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!
This project represents the third major iteration of Claude Engineer, building upon the success of Claude Engineer v2. Key improvements from previous versions include:
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.
For the best possible experience install uv
# 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
# 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
A sleek, modern web UI with features like:
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
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:
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
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.
The core Assistant class provides:
The assistant supports various configuration options through the Config class:
requirements.txt
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.
MIT
This project builds upon the foundations of Claude Engineer v2, enhancing its capabilities with self-improving tool generation and advanced token management.
Claude Engineer v3 comes with a comprehensive set of pre-built tools:
toolcreator
): Creates new tools based on natural language descriptions, enabling the frameworkβs self-improvement capabilities.uvpackagemanager
): Interface to the UV package manager for Python dependency management, supporting package installation, removal, updates, and virtual environment management.e2bcodetool
): Securely executes Python code in a sandboxed environment powered by E2B. This tool enables Claude to write and run Python code directly, making it capable of data analysis, visualization, and complex computations. Requires an E2B API key available at e2b.dev.lintingtool
): Runs the Ruff linter on Python files to detect and fix coding style or syntax issues, with support for automatic fixes and customizable rules.createfolderstool
): Creates new directories and nested directory structures with proper error handling and path validation.filecreatortool
): Creates new files with specified content, supporting both text and binary files.filecontentreadertool
): Reads content from multiple files simultaneously, with smart filtering of binary and system files.fileedittool
): Advanced file editing with support for full content replacement and partial edits.diffeditortool
): Performs precise text replacements in files by matching exact substrings.duckduckgotool
): Performs web searches using DuckDuckGo.webscrapertool
): Intelligently extracts readable content from web pages while removing unnecessary elements.browsertool
): Opens URLs in the systemβs default web browser.screenshottool
): Captures screenshots of the entire screen or specific regions, returning base64-encoded images ready for Claudeβs vision capabilities.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.
Add these to your .env
file:
ANTHROPIC_API_KEY=your_anthropic_key
E2B_API_KEY=your_e2b_key