Claude Engineer

by Doriandarko (community) · Claude, Windows, macOS, Linux

Assistant AI Assistants Open Source >1 года

Интерактивный CLI (и веб-интерфейс), использующий Claude 3.5 Sonnet для задач разработки ПО. Позволяет Claude генерировать и управлять собственными инструментами, постоянно расширяя возможности в ходе диалога. Один из самых ранних и известных Claude-агентов для терминала.


Установка
# --- macOS / Linux ---
# Install uv
curl -LsSf 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 (PowerShell) ---
# 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
показать оригинал переведено ИИ

Claude Engineer v3 🤖

Мощный самоулучшающийся ИИ-ассистент, предназначенный для создания и управления ИИ-инструментами с помощью Claude 3.5. Эта платформа позволяет Claude генерировать и управлять собственными инструментами, постоянно расширяя свои возможности через общение. Доступна как в виде CLI, так и современного веб-интерфейса!

История и эволюция

Этот проект представляет собой третью крупную итерацию Claude Engineer, развивающую успех Claude Engineer v2. Ключевые улучшения по сравнению с предыдущими версиями включают: - Обновление до модели Claude 3.5 Sonnet - Улучшенное управление токенами с помощью нового API подсчёта токенов Anthropic - Система самоулучшающегося создания инструментов - Оптимизированная обработка диалогов - Более точное отслеживание и визуализация использования токенов - Возможности автономной генерации инструментов - Отсутствие необходимости в automode, так как Claude может самостоятельно решать, когда запускать инструменты автоматически и последовательно.

Описание

Claude Engineer v3 — это сложная платформа, позволяющая Claude расширять собственные возможности через динамическое создание инструментов. Во время общения Claude может выявлять потребности в новых инструментах, проектировать их и внедрять автоматически. Эта архитектура самоулучшения означает, что платформа становится мощнее с каждым использованием.

Установка

Для наилучшего опыта установите uv

macOS и 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

Варианты интерфейса

1. Веб-интерфейс 🌐

Стильный современный веб-интерфейс с такими функциями, как: - Визуализация использования токенов в реальном времени - Возможность загрузки и анализа изображений - Рендеринг Markdown с подсветкой синтаксиса - Адаптивный дизайн для всех устройств - Индикаторы использования инструментов - Чистый минималистичный интерфейс

Веб-интерфейс Claude Engineer v3

Для запуска веб-интерфейса:

# Using uv (recommended)
uv run app.py

# Or using traditional Python
python app.py

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

2. Интерфейс командной строки (CLI) 💻

Мощный терминальный интерфейс с: - Форматированием текста - Индикаторами выполнения - Визуализацией использования токенов - Прямым взаимодействием с инструментами - Подробным выводом отладки

Для запуска CLI:

# Using uv (recommended)
uv run ce3.py

# Or using traditional Python
python ce3.py

Выберите интерфейс, который лучше всего подходит для вашего рабочего процесса: - Веб-интерфейс: Отлично подходит для визуальной работы, анализа изображений и более современного опыта - CLI: Идеален для разработчиков, интеграции с системами и работы в терминале

Функции самоулучшения

  • 🧠 Автономное выявление и создание инструментов
  • 🔄 Динамическое расширение возможностей во время общения
  • 🎯 Умное управление зависимостями инструментов
  • 📈 Обучение на основе шаблонов использования инструментов
  • 🔍 Автоматическое выявление пробелов в возможностях
  • 🛠️ Самооптимизация существующих инструментов

Основные функции

  • 🔨 Динамическое создание и загрузка инструментов
  • 🔄 Возможность горячей перезагрузки новых инструментов
  • 🎨 Богатый консольный интерфейс с индикаторами выполнения
  • 🧩 Фреймворк абстракции инструментов с чистыми интерфейсами
  • 📝 Автоматическая генерация кода инструментов
  • 🔌 Простая интеграция с ИИ Claude 3.5
  • 💬 Сохранение истории общения с управлением токенами
  • 🛠️ Отображение использования инструментов в реальном времени
  • 🔄 Поддержка автоматического связывания инструментов
  • ⚡ Система динамического импорта модулей
  • 📊 Расширенное отслеживание токенов с помощью API подсчёта токенов Anthropic
  • 🎯 Точное управление контекстным окном
  • 🔍 Улучшенная обработка ошибок и отладка
  • 💾 Управление состоянием общения

Структура проекта

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

Функции по интерфейсам

Функции веб-интерфейса

  • 🖼️ Загрузка и анализ изображений с помощью Claude Vision
  • 📊 Визуальная шкала использования токенов
  • 🎨 Чистый современный дизайн с Tailwind CSS
  • 📝 Рендеринг Markdown с подсветкой синтаксиса
  • 🔄 Обновления в реальном времени
  • 📱 Адаптивный дизайн для всех устройств
  • 🖥️ Индикаторы использования инструментов
  • ⌨️ Отправка сообщений с помощью Command/Ctrl + Enter

Функции CLI

  • 🎨 Форматирование текста
  • 📊 ASCII-шкала использования токенов
  • 🔄 Индикаторы выполнения в реальном времени
  • 🛠️ Прямое взаимодействие с инструментами
  • 📝 Подробный вывод отладки
  • 💻 Интерфейс, оптимизированный для терминала

Выберите интерфейс, который лучше всего соответствует вашему рабочему процессу и предпочтениям. Оба интерфейса предоставляют доступ к одним и тем же мощным возможностям Claude Engineer, просто представленным по-разному.

Ключевые компоненты

Класс Assistant

Основной класс Assistant предоставляет: - Динамическую загрузку и управление инструментами - Обработку общения в реальном времени с отслеживанием токенов - Автоматическое создание и валидацию инструментов - Выполнение и связывание инструментов - Богатый вывод в консоль с индикаторами выполнения - Оптимизацию использования токенов

Параметры конфигурации

Ассистент поддерживает различные параметры конфигурации через класс Config: - MODEL: Спецификация модели Claude 3.5 Sonnet - MAX_TOKENS: Максимальное количество токенов для отдельных ответов


  • MAX_CONVERSATION_TOKENS: Общий лимит токенов для бесед
  • TOOLS_DIR: Каталог для хранения инструментов
  • SHOW_TOOL_USAGE: Переключатель отображения использования инструментов
  • ENABLE_THINKING: Переключатель индикатора мышления
  • DEFAULT_TEMPERATURE: Настройка температуры модели

Требования

  • Python 3.8+
  • Ключ API Anthropic (доступ к Claude 3.5)
  • Необходимые пакеты в requirements.txt
  • Поддержка терминала Rich

Участие в разработке

Принимаются любые вклады! Не стесняйтесь отправлять Pull Request. Для крупных изменений сначала откройте issue, чтобы обсудить, что вы хотите изменить.

Лицензия

MIT

Благодарности

Этот проект основан на базе Claude Engineer v2, расширяя его возможности за счёт самоулучшающейся генерации инструментов и продвинутого управления токенами.

Встроенные инструменты

Claude Engineer v3 поставляется с обширным набором предустановленных инструментов:

Основные инструменты

  • 🛠️ Создатель инструментов (toolcreator): Создаёт новые инструменты на основе описаний на естественном языке, обеспечивая возможности самоулучшения фреймворка.

Инструменты для разработки

  • 📦 Менеджер пакетов UV (uvpackagemanager): Интерфейс к менеджеру пакетов UV для управления зависимостями Python, поддерживает установку, удаление, обновление пакетов и управление виртуальными окружениями.
  • 🐍 Исполнитель кода E2B (e2bcodetool): Безопасно выполняет Python-код в изолированной среде, предоставляемой E2B. Этот инструмент позволяет Claude писать и запускать Python-код напрямую, что делает его способным к анализу данных, визуализации и сложным вычислениям. Требуется ключ API E2B, доступный на e2b.dev.
  • 🔍 Инструмент линтинга (lintingtool): Запускает линтер Ruff для Python-файлов, чтобы обнаруживать и исправлять проблемы со стилем кода или синтаксисом, с поддержкой автоматических исправлений и настраиваемых правил.

Инструменты файловой системы

  • 📂 Создание папок (createfolderstool): Создаёт новые каталоги и вложенные структуры каталогов с корректной обработкой ошибок и проверкой путей.
  • 📝 Создатель файлов (filecreatortool): Создаёт новые файлы с указанным содержимым, поддерживает как текстовые, так и бинарные файлы.
  • 📖 Чтение содержимого файлов (filecontentreadertool): Читает содержимое из нескольких файлов одновременно, с умной фильтрацией бинарных и системных файлов.
  • ✏️ Редактирование файлов (fileedittool): Продвинутое редактирование файлов с поддержкой полной замены содержимого и частичных правок.
  • 🔄 Редактор Diff (diffeditortool): Выполняет точные замены текста в файлах, сопоставляя точные подстроки.

Веб-инструменты

  • 🔍 DuckDuckGo (duckduckgotool): Выполняет веб-поиск с помощью DuckDuckGo.
  • 🌐 Веб-скрапер (webscrapertool): Интеллектуально извлекает читаемый контент с веб-страниц, удаляя ненужные элементы.
  • 🌍 Браузер (browsertool): Открывает URL-адреса в системном браузере по умолчанию.

Утилиты

  • 📸 Инструмент скриншотов (screenshottool): Делает снимки экрана всего экрана или определённых областей, возвращая изображения в формате base64, готовые для использования возможностей зрения Claude.

Каждый инструмент разработан так, чтобы быть: - Самодокументируемым с подробными описаниями - Устойчивым к ошибкам с всесторонней обработкой ошибок - Композитным для сложных операций - Безопасным с надлежащей проверкой входных данных - Кроссплатформенным, где это применимо

Инструменты динамически загружаются и могут быть расширены во время работы через Создатель инструментов, позволяя ассистенту непрерывно расширять свои возможности в зависимости от потребностей пользователя.

Требуемые ключи API

  1. Ключ API Anthropic: Требуется для доступа к Claude 3.5
  2. Ключ API E2B: Требуется для выполнения Python-кода. Получите свой ключ на e2b.dev

Добавьте их в файл .env:

ANTHROPIC_API_KEY=your_anthropic_key
E2B_API_KEY=your_e2b_key

История звёзд

График истории звёзд

Войдите, чтобы оставить комментарий