- Мультиязычность – единый интерфейс
LanguageSupportдля анализаторов, синтаксических лекарей, классификаторов ошибок. Добавление языка — один модуль. - Интеллектуальный конвейер – конечный автомат с фазами: анализ, классификация, приоритизация, поиск корневой причины, генерация патча (включая LLM и эвристики), применение, валидация, принятие решения.
- LLM‑оркестрация – поддержка OpenAI, Anthropic, DeepSeek, Ollama. Опциональный цикл «Генератор → Критик → Рефайнер» с итеративным улучшением.
- Изолированное выполнение – все изменения применяются во временной копии проекта. Только после успешного аудита патчи переносятся в оригинал.
- Адаптивная стабильность – «губернатор стабильности» на основе скользящего окна здоровья системы подстраивает пороги принятия, бюджет итераций и максимальный размер патча.
- Параллельная обработка – ошибки группируются по файлам и могут
исправляться одновременно (настраивается через
parallel_workers). - Безопасность – проверка инвариантов (сохранение бизнес‑логики), Circuit Breaker, AntiLoop, финальный аудит.
- Telegram‑бот – мониторинг состояния, управление уведомлениями, перезапуск конвейера.
- Python ≥ 3.10
- Для Rust‑проектов:
rustup,cargo,cargo-audit - Для Python‑проектов:
flake8(опциональноbandit,mypy) - Для JS/TS: Node.js,
eslint,typescript - Для C++:
g++ - Для C#:
dotnet - Для LLM‑генерации: API‑ключ к одному из провайдеров или локальный Ollama
git clone https://github.com/yourname/webbles-fix.git
cd webbles-fix
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python run.pyПосле запуска откроется интерактивное меню. Конфигурация (LLM, Telegram,
параметры конвейера) сохраняется в webles_config.json.
Запустите CLI, выберите «1. Запустить (CLI + Telegram бот)». Бот стартует в фоновом потоке. Доступные команды:
/start– показать клавиатуруСтатус– текущее состояние конвейераУведомления вкл/Уведомления выклПерезапуск– инструкция по перезапускуСтоп– запрос остановки
- Язык: Python 3.10+
- Анализ кода:
cargo check/clippy(Rust),flake8(Python),eslint/tsc(JS/TS),g++(C++),dotnet build(C#) - LLM‑провайдеры: OpenAI, Anthropic, DeepSeek, Ollama
- Планирование: Incremental Sandbox (hardlink‑based), beam search, мемоизация состояний
- Конфигурация: JSON (
webles_config.json) - Логирование: Python
loggingс ротацией файлов
graph TD
CLI[CLI / run.py] --> Controller
Bot[Telegram Bot] --> Controller
Controller --> PipelineEngine
subgraph PipelineEngine
PE[run()] --> Analyze[AnalyzeStage]
Analyze --> Classify --> Prioritize --> RootCause
RootCause --> Generate[GeneratePatchStage]
Generate --> Apply[ApplyPatchStage]
Apply --> Validate[ValidateStage]
Validate --> Decide[DecideStage]
Decide -->|ACCEPT| NextError
Decide -->|REJECT/RETRY| Rollback
Rollback --> NextError
NextError -->|есть ошибки| Prioritize
NextError -->|нет ошибок| Completed
end
Generate --> LLMClient[LLMClient<br/>OpenAI/Anthropic/DeepSeek/Ollama]
Validate --> CompilerChecks
Validate --> LintChecks
Validate --> SecurityChecks
PipelineEngine --> AuditManager
PipelineEngine --> StateManager[(.webbles_fix_state.json)]
PipelineEngine --> StabilityGovernor
StabilityGovernor --> SystemHealthEvaluator
Принимаются любые вклады: исправления багов, улучшение документации,
добавление новых языковых провайдеров. Инструкции в
CONTRIBUTING.md. Для новичков есть задачи с меткой
good first issue.
MIT © 2026