Напишите OpenClaw: «Исследуй X» → готово.
🇺🇸 English · 🇨🇳 中文 · 🇯🇵 日本語 · 🇰🇷 한국어 · 🇫🇷 Français · 🇩🇪 Deutsch · 🇪🇸 Español · 🇧🇷 Português · 🇷🇺 Русский · 🇸🇦 العربية
pip install -e . && researchclaw run --topic "Your research idea here" --auto-approve
У вас есть идея. Вы хотите статью. Вот и всё.
AutoResearchClaw берёт исследовательскую тему и автономно создаёт полноценную академическую статью — с реальной литературой из arXiv и Semantic Scholar (мультиисточниковый поиск, приоритет arXiv для избежания ограничений по частоте запросов), аппаратно-адаптивными песочными экспериментами (автоопределение GPU/MPS/CPU), статистическим анализом, рецензированием и готовым для конференции LaTeX (ориентир — 5 000–6 500 слов для NeurIPS/ICML/ICLR). Без ручного контроля. Без копирования между инструментами.
| 📄 | paper_draft.md | Полная академическая статья (Введение, Обзор литературы, Метод, Эксперименты, Результаты, Заключение) |
| 📐 | paper.tex | Готовый для конференции LaTeX (шаблоны NeurIPS / ICLR / ICML) |
| 📚 | references.bib | Реальные BibTeX-ссылки из Semantic Scholar и arXiv — автоматическая очистка для соответствия встроенным цитатам |
| 🔍 | verification_report.json | 4-уровневая верификация целостности и релевантности цитирования (arXiv, CrossRef, DataCite, LLM) |
| 🧪 | experiment runs/ | Сгенерированный код + результаты песочницы + структурированные JSON-метрики |
| 📊 | charts/ | Автоматически сгенерированные сравнительные графики с полосами ошибок и доверительными интервалами |
| 📝 | reviews.md | Мультиагентное рецензирование с проверкой согласованности методологии и результатов |
| 🧬 | evolution/ | Уроки для самообучения, извлечённые из каждого запуска |
| 📦 | deliverables/ | Все итоговые материалы в одной папке — готовы к компиляции в Overleaf |
Конвейер работает полностью автономно без вмешательства человека (если только вы не настроите этапы контроля для ручной проверки). Когда эксперименты завершаются ошибкой — система восстанавливается автоматически. Когда гипотезы не подтверждаются — она меняет направление.
researchclaw run --topic "Agent-based Reinforcement Learning for Automated Scientific Discovery" --auto-approve
Конвейер работает не просто линейно. Этап 15 (RESEARCH_DECISION) оценивает результаты экспериментов относительно гипотез и принимает автономное решение:
Каждый цикл PIVOT/REFINE версионирует предыдущие артефакты (stage-08_v1/, stage-08_v2/, ...), поэтому ничего не теряется, а эволюция решений полностью отслеживаема.
На критических этапах используется структурированный протокол дискуссии с участием нескольких «точек зрения» LLM:
Каждый запуск конвейера извлекает детализированные уроки — не просто «ошибка», а почему она произошла:
RuntimeWarning: division by zero)Эти уроки сохраняются в хранилище JSONL с временным затуханием (период полураспада 30 дней) и внедряются как промпт-оверлеи в будущие запуски. Конвейер буквально учится на своих ошибках.
Каждый запуск формирует структурированную базу знаний (хранится в docs/kb/) с 6 категориями:
Фоновый монитор качества, выявляющий проблемы, которые основной конвейер может пропустить:
| 🦞 |
AutoResearchClaw — это сервис, совместимый с OpenClaw. Установите его в OpenClaw и запускайте автономные исследования одним сообщением — или используйте автономно через CLI, Claude Code или любой AI-ассистент для программирования. |
Если вы уже используете OpenClaw в качестве AI-ассистента:
1️⃣ Поделитесь URL репозитория GitHub с OpenClaw 2️⃣ OpenClaw автоматически читает RESEARCHCLAW_AGENTS.md → понимает конвейер 3️⃣ Скажите: "Research [ваша тема]" 4️⃣ Готово — OpenClaw клонирует, устанавливает, настраивает, запускает и возвращает результаты
Вот и всё. OpenClaw автоматически выполняет git clone, pip install, настройку конфигурации и запуск конвейера. Вы просто общаетесь в чате.
RESEARCHCLAW_AGENTS.md → узнаёт роль исследовательского оркестратораREADME.md → понимает установку и структуру конвейераconfig.researchclaw.example.yaml → config.yamlpip install -e . + researchclaw run --topic "..." --auto-approveДля более глубокой интеграции AutoResearchClaw включает систему мостовых адаптеров с 6 опциональными возможностями:
# config.arc.yaml
openclaw_bridge:
use_cron: true # ⏰ Запуск исследований по расписанию
use_message: true # 💬 Уведомления о прогрессе (Discord/Slack/Telegram)
use_memory: true # 🧠 Межсессионное сохранение знаний
use_sessions_spawn: true # 🔀 Параллельные подсессии для одновременных этапов
use_web_fetch: true # 🌐 Веб-поиск в реальном времени при обзоре литературы
use_browser: false # 🖥️ Сбор статей через браузер
Каждый флаг активирует типизированный протокол адаптера. Когда OpenClaw предоставляет эти возможности, адаптеры используют их без изменений в коде. Подробности см. в integration-guide.md.
| Способ | Как |
|---|---|
| Автономный CLI | researchclaw run --topic "..." --auto-approve |
| Python API | from researchclaw.pipeline import Runner; Runner(config).run() |
| Claude Code | Читает RESEARCHCLAW_CLAUDE.md — просто скажите «Проведи исследование по [теме]» |
| OpenCode | Читает .claude/skills/ — тот же интерфейс на естественном языке |
| Любой AI CLI | Предоставьте RESEARCHCLAW_AGENTS.md как контекст → агент автоматически загружается |
Фаза A: Определение области Фаза E: Выполнение экспериментов 1. TOPIC_INIT 12. EXPERIMENT_RUN 2. PROBLEM_DECOMPOSE 13. ITERATIVE_REFINE ← самовосстановление Фаза B: Поиск литературы Фаза F: Анализ и решение 3. SEARCH_STRATEGY 14. RESULT_ANALYSIS ← мультиагентный 4. LITERATURE_COLLECT ← реальный API 15. RESEARCH_DECISION ← PIVOT/REFINE 5. LITERATURE_SCREEN [контроль] 6. KNOWLEDGE_EXTRACT Фаза G: Написание статьи 16. PAPER_OUTLINE Фаза C: Синтез знаний 17. PAPER_DRAFT 7. SYNTHESIS 18. PEER_REVIEW ← проверка доказательств 8. HYPOTHESIS_GEN ← дискуссия 19. PAPER_REVISION Фаза D: Проектирование экспериментов Фаза H: Финализация 9. EXPERIMENT_DESIGN [контроль] 20. QUALITY_GATE [контроль] 10. CODE_GENERATION 21. KNOWLEDGE_ARCHIVE 11. RESOURCE_PLANNING 22. EXPORT_PUBLISH ← LaTeX 23. CITATION_VERIFY ← проверка релевантности
Контрольные этапы (5, 9, 20) приостанавливают работу для подтверждения человеком или пропускаются с
--auto-approve. При отклонении конвейер откатывается назад.
Циклы принятия решений: Этап 15 может запустить REFINE (→ Этап 13) или PIVOT (→ Этап 8) с автоматическим версионированием артефактов.
| Фаза | Что происходит |
|---|---|
| A: Определение области | LLM декомпозирует тему в структурированное дерево задач с исследовательскими вопросами |
| A+: Аппаратное обеспечение | Автоопределение GPU (NVIDIA CUDA / Apple MPS / только CPU), предупреждение при ограниченных ресурсах, адаптация генерации кода |
| B: Литература | Мультиисточниковый поиск (приоритет arXiv, затем Semantic Scholar) реальных статей, скрининг по релевантности, извлечение карточек знаний |
| C: Синтез | Кластеризация находок, выявление пробелов в исследованиях, генерация проверяемых гипотез через мультиагентную дискуссию |
| D: Проектирование | Проектирование плана эксперимента, генерация аппаратно-адаптивного исполняемого Python-кода (уровень GPU → выбор пакетов), оценка потребности в ресурсах |
| E: Выполнение | Запуск экспериментов в песочнице, обнаружение NaN/Inf и ошибок времени выполнения, самовосстановление кода через целенаправленное исправление LLM |
| F: Анализ | Мультиагентный анализ результатов; автономное решение PROCEED / REFINE / PIVOT с обоснованием |
| G: Написание | План → посекционное написание (5 000–6 500 слов) → рецензирование (с проверкой согласованности методологии и доказательств) → ревизия с контролем объёма |
| H: Финализация | Контроль качества, архивирование знаний, экспорт LaTeX с конференционным шаблоном, верификация целостности и релевантности цитирования |
git clone https://github.com/aiming-lab/AutoResearchClaw.git
cd AutoResearchClaw
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
cp config.researchclaw.example.yaml config.arc.yaml
project:
name: "my-research"
research:
topic: "Your research topic here"
llm:
base_url: "https://api.openai.com/v1" # Любая конечная точка, совместимая с OpenAI
api_key_env: "OPENAI_API_KEY" # Имя переменной окружения с вашим ключом
primary_model: "gpt-4o" # Любая модель, поддерживаемая вашей конечной точкой
fallback_models: ["gpt-4o-mini"]
s2_api_key: "" # Опционально: API-ключ Semantic Scholar для повышенных лимитов
experiment:
mode: "sandbox"
sandbox:
python_path: ".venv/bin/python"
# Установите ваш API-ключ
export OPENAI_API_KEY="sk-..."
# 🚀 Запуск полного конвейера
researchclaw run --config config.arc.yaml --auto-approve
# 🎯 Указание темы в командной строке
researchclaw run --config config.arc.yaml --topic "Transformer attention for time series" --auto-approve
# ✅ Проверка конфигурации
researchclaw validate --config config.arc.yaml
# ⏩ Возобновление с определённого этапа
researchclaw run --config config.arc.yaml --from-stage PAPER_OUTLINE --auto-approve
Результаты → artifacts/rc-YYYYMMDD-HHMMSS-<hash>/ с подкаталогом для каждого этапа.
Все пользовательские материалы автоматически собираются в единую папку deliverables/:
artifacts/rc-YYYYMMDD-HHMMSS-<hash>/deliverables/ ├── paper_final.md # Финальная статья (Markdown) ├── paper.tex # Готовый для конференции LaTeX ├── references.bib # Верифицированная библиография BibTeX (с автоочисткой) ├── neurips_2025.sty # Файл стиля конференции (автоматический выбор) ├── code/ # Код экспериментов + requirements.txt ├── verification_report.json # Отчёт о целостности цитирования ├── charts/ # Визуализация результатов (сравнение условий, полосы ошибок) └── manifest.json # Индекс материалов с метаданными
Папка deliverables/ готова к компиляции — она включает конференционные файлы .sty и .bst, так что вы можете скомпилировать paper.tex напрямую с помощью pdflatex + bibtex или загрузить в Overleaf без дополнительных скачиваний.
Этап 4 обращается к реальным академическим API — а не к галлюцинациям LLM. Использует стратегию приоритета arXiv для избежания ограничений Semantic Scholar.
@article{cite_key, ...} с реальными метаданнымиfrom researchclaw.literature import search_papers
papers = search_papers("transformer attention mechanisms", limit=20)
for p in papers:
print(f"{p.title} ({p.year}) — cited {p.citation_count}x")
print(p.to_bibtex())
После написания статьи Этап 23 проверяет каждую ссылку на целостность и релевантность:
| Уровень | Метод | Что проверяется |
|---|---|---|
| L1 | arXiv API id_list | Статьи с arXiv ID — проверяет, что идентификатор действительно существует |
| L2 | CrossRef /works/{doi} + откат на DataCite | Статьи с DOI — проверяет разрешение DOI и совпадение названия (DataCite обрабатывает DOI arXiv 10.48550) |
| L3 | Semantic Scholar + поиск по названию в arXiv | Все остальные — нечёткое сопоставление названий (сходство ≥0,80) |
| L4 | Оценка релевантности LLM | Все верифицированные ссылки — оценка тематической релевантности для исследования |
Каждая ссылка → VERIFIED ✅ · SUSPICIOUS ⚠️ · HALLUCINATED ❌ · SKIPPED ⏭️ · LOW_RELEVANCE 📉
Автоочистка: Галлюцинированные цитаты молча удаляются из текста статьи (без тегов [HALLUCINATED]). Библиографические записи без цитирования удаляются. Итоговый references.bib содержит только верифицированные и процитированные ссылки.
Этап 1 автоматически определяет возможности локального GPU и адаптирует весь конвейер:
| Уровень | Определение | Поведение |
|---|---|---|
| Высокий | NVIDIA GPU с ≥8 ГБ VRAM | Полная генерация кода PyTorch/GPU, автоустановка torch при необходимости |
| Ограниченный | NVIDIA <8 ГБ или Apple MPS | Облегчённые эксперименты (<1M параметров, ≤20 эпох), предупреждение пользователю |
| Только CPU | GPU не обнаружен | Только NumPy/sklearn, без импорта torch, предупреждение с рекомендацией удалённого GPU |
Аппаратный профиль сохраняется в stage-01/hardware_profile.json и влияет на генерацию кода, импорты песочницы и ограничения промптов.
experiment_harness.py внедряется в песочницу с временным ограничителем should_stop(), отклонением NaN/Inf в report_metric() и записью результатов finalize() (вдохновлено паттерном неизменяемой оценки karpathy/autoresearch)results.json с типизированными метриками (не просто разбор stdout)is_metric_name())Конвейер написания ориентирован на стандарты NeurIPS/ICML/ICLR (9+ страниц, 5 000–6 500 слов):
export:
target_conference: "neurips_2025" # или "iclr_2026" или "icml_2026"
| Конференция | Пакет стилей | Колонки |
|---|---|---|
| NeurIPS 2025 | neurips_2025 | 1 |
| ICLR 2026 | iclr2026_conference | 1 |
| ICML 2026 | icml2026 | 2 |
| NeurIPS 2024 | neurips_2024 | 1 |
| ICLR 2025 | iclr2025_conference | 1 |
| ICML 2025 | icml2025 | 2 |
Конвертер Markdown → LaTeX обрабатывает: заголовки секций (с дедупликацией автонумерации), встроенную/выносную математику, жирный/курсивный текст, списки, таблицы (с \caption/\label), рисунки (\includegraphics), блоки кода (поддержка Unicode), перекрёстные ссылки и ссылки \cite{}.
| Контроль | Этап | При отклонении → откат к |
|---|---|---|
| Скрининг литературы | 5 | Повторный сбор литературы (Этап 4) |
| Проектирование экспериментов | 9 | Перегенерация гипотез (Этап 8) |
| Контроль качества | 20 | Переписывание статьи с плана (Этап 16) |
Используйте --auto-approve для пропуска всех контрольных этапов или настройте конкретные этапы в security.hitl_required_stages.
# === Проект ===
project:
name: "my-research" # Идентификатор проекта
mode: "docs-first" # docs-first | semi-auto | full-auto
# === Исследование ===
research:
topic: "..." # Тема исследования (обязательно)
domains: ["ml", "nlp"] # Предметные области для поиска литературы
daily_paper_count: 8 # Целевое число статей на поисковый запрос
quality_threshold: 4.0 # Минимальный балл качества статей
# === Среда выполнения ===
runtime:
timezone: "America/New_York" # Для временных меток
max_parallel_tasks: 3 # Лимит параллельных экспериментов
approval_timeout_hours: 12 # Таймаут контрольного этапа
retry_limit: 2 # Число повторных попыток при сбое этапа
# === LLM ===
llm:
provider: "openai-compatible" # Тип провайдера
base_url: "https://..." # Конечная точка API (обязательно)
api_key_env: "OPENAI_API_KEY" # Переменная окружения для API-ключа (обязательно)
api_key: "" # Или укажите ключ здесь напрямую
primary_model: "gpt-4o" # Основная модель
fallback_models: ["gpt-4o-mini"] # Резервная цепочка
s2_api_key: "" # API-ключ Semantic Scholar (опционально, повышенные лимиты)
# === Эксперименты ===
experiment:
mode: "sandbox" # simulated | sandbox | docker | ssh_remote
time_budget_sec: 600 # Макс. время выполнения за запуск (по умолчанию: 600 с)
max_iterations: 10 # Макс. число итераций оптимизации
metric_key: "val_loss" # Имя основной метрики
metric_direction: "minimize" # minimize | maximize
sandbox:
python_path: ".venv/bin/python"
gpu_required: false
allowed_imports: [math, random, json, csv, numpy, torch, sklearn]
max_memory_mb: 4096
docker:
image: "researchclaw/experiment:latest"
network_policy: "setup_only" # none | setup_only | pip_only | full
gpu_enabled: true
memory_limit_mb: 8192
auto_install_deps: true # Автоопределение импортов → requirements.txt
ssh_remote:
host: "" # Имя хоста GPU-сервера
gpu_ids: [] # Доступные идентификаторы GPU
remote_workdir: "/tmp/researchclaw_experiments"
# === Экспорт ===
export:
target_conference: "neurips_2025" # neurips_2025 | iclr_2026 | icml_2026
authors: "Anonymous"
bib_file: "references"
# === Промпты ===
prompts:
custom_file: "" # Путь к пользовательскому YAML промптов (пусто = по умолчанию)
# === Безопасность ===
security:
hitl_required_stages: [5, 9, 20] # Этапы, требующие подтверждения человека
allow_publish_without_approval: false
redact_sensitive_logs: true
# === База знаний ===
knowledge_base:
backend: "markdown" # markdown | obsidian
root: "docs/kb"
# === Уведомления ===
notifications:
channel: "console" # console | discord | slack
target: ""
# === Мост OpenClaw ===
openclaw_bridge:
use_cron: false # Запуск исследований по расписанию
use_message: false # Уведомления о прогрессе
use_memory: false # Межсессионное сохранение знаний
use_sessions_spawn: false # Параллельные подсессии
use_web_fetch: false # Веб-поиск в реальном времени
use_browser: false # Сбор статей через браузер
Вдохновлено проектами:
MIT — подробности в LICENSE.
Создано с 🦞 командой AutoResearchClaw