abulafia
Research-first CLI agent built on Pi and alphaXiv
Package details
Install abulafia from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:abulafia- Package
abulafia- Version
0.2.44- Published
- Aug 4, 2026
- Downloads
- 763/mo · 763/wk
- Author
- enicaster
- License
- MIT
- Types
- extension, skill, prompt
- Size
- 136.2 MB
- Dependencies
- 7 dependencies · 0 peers
Pi manifest JSON
{
"extensions": [
"./extensions"
],
"prompts": [
"./prompts"
],
"skills": [
"./skills"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
Документация
- Индекс документации — с какого руководства начать.
- Руководство пользователя — установка, 302AI, команды, workflows и story-сценарии.
- Справочник навыков и агентов — назначение каждого skill и agent.
- Архитектура — устройство CLI, Pi runtime, моделей, Journal-Yuga и артефактов.
- Руководство разработчика — добавление skills, workflows, agents, stories и extensions.
- Установка и запуск — Windows installer и установка из исходников.
Установка в два клика на Windows
Полная актуальная инструкция находится в INSTALL_AND_RUN.md.
- Скачайте
Abulafia-Setup-<версия>-x64.exeсо страницы Releases. - Откройте файл двойным щелчком и нажмите
Установить. - Запустите Abulafia с рабочего стола или из меню «Пуск».
В установщик уже входят Abulafia, Node.js и все production-зависимости. Git,
Node.js, npm и Bun пользователю устанавливать не нужно. Установщик также
создаёт ярлыки и добавляет команду abulafia в пользовательский PATH.
abulafia --version
abulafia doctor
Теперь интерфейс запускается из каталога любого исследовательского проекта:
cd C:\work\my-research
abulafia
Первичная настройка 302.AI:
abulafia model login 302ai
abulafia model set 302ai/gpt-5.4
API key сохраняется в пользовательском состоянии Abulafia, поэтому передавать его при каждом запуске не нужно. Доступные модели:
abulafia model list
abulafia model set 302ai/gpt-5.4
abulafia model set 302ai/gpt-5.4-nano
Установка из исходников нужна только разработчикам:
git clone https://github.com/Enicast/Abulafia.git
cd .\Abulafia
npm install
npm run cli:install
Skills, workflows и story-сценарии
В Abulafia SKILL.md обычно не запускается напрямую. Навык либо подключает агенту инструкцию, либо указывает на workflow из prompts/*.md. Workflow можно вызвать двумя способами. В интерактивной консоли ведущий / необязателен для известных workflow: deepresearch ... и /deepresearch ... эквивалентны.
Интерактивно:
npm run dev
Затем внутри REPL:
/deepresearch <topic>
/lit <topic>
/review <artifact>
/draft <task>
/compare <source-a> <source-b>
/story A01 <input>
/story S01 <input> <task>
/evaluate-stories all ./outputs/my-story-run
Сразу из консоли:
abulafia deepresearch "AI agents in legal education"
abulafia lit "AI governance in universities"
abulafia review .\papers\article.md
abulafia draft "Напиши черновик статьи про AI в юридическом образовании"
abulafia compare .\docs\abulafia.md .\docs\claude-code.md
abulafia story A01 .\articles\article.md
abulafia story S01 .\article.md "Нужно понять, в какие журналы это можно подать и какие доработки нужны"
abulafia evaluate-stories all .\outputs\my-story-run
Основное соответствие skills и workflow-команд:
| Skill | Команда |
|---|---|
skills/deep-research |
/deepresearch |
skills/literature-review |
/lit |
skills/peer-review |
/review |
skills/paper-writing |
/draft |
skills/source-comparison |
/compare |
skills/paper-code-audit |
/audit |
skills/replication |
/replicate |
skills/autoresearch |
/autoresearch |
skills/watch |
/watch |
skills/jobs |
/jobs |
skills/session-log |
/log |
skills/story-* |
/story |
skills/story-evaluation |
/evaluate-stories |
Запуск A01-A10 и S01-S11
Сценарии A01-A10 и S01-S11 теперь оформлены как отдельные story-агенты. У каждого story ID есть собственный agent definition в .abulafia/agents/ и paired skill в skills/.
Интерактивная команда /story и прямой CLI-вызов abulafia story запускают агентный сценарий через модель и доступные инструменты. Локальный детерминированный runner без обращения к модели доступен только под явным именем story-local; он нужен для smoke-теста структуры, а не для анализа. evaluate-stories валидирует уже созданный артефакт.
Пример: проанализировать статью через A01 Briefer:
abulafia story A01 .\articles\article.md
Пример: быстро проверить S01 локальным runner-ом без расходов 302AI:
abulafia story-local S01 .\article.md "Нужно проверить только структуру выходных файлов"
Готовая демонстрация Journal-Yuga из консоли лежит в:
demo/journal-yuga-console/
Посмотреть команды без запуска модели:
.\demo\journal-yuga-console\run-demo.ps1
Запустить демонстрацию S01:
.\demo\journal-yuga-console\run-demo.ps1 -Run
Запустить цепочку исследовательских MegaAgent stories:
abulafia story chain A01-A10 .\articles\article.md
Запустить цепочку Journal-Yuga stories:
abulafia story chain S01-S11 .\articles\article.md
Запустить несколько конкретных stories:
abulafia story A01,A02,A03 .\articles\article.md
Проверить созданный результат по методике:
abulafia evaluate-stories A01 .\outputs\<slug>\A01-briefer-brief.md
Проверить все 21 story-артефакта из мокового запуска:
abulafia evaluate-stories all .\outputs\my-story-run
Внутренняя схема запуска:
/story A01 input
-> prompts/story.md
-> direct story contract: .abulafia/agents/story-a01-briefer.md
-> skill contract: skills/story-a01-briefer/SKILL.md
-> outputs/<slug>/A01-briefer-brief.md
-> outputs/<slug>/story-run-report.md
Для Journal-Yuga stories (S01-S11) добавляется общий слой journal-yuga-common:
/story S01 input
-> prompts/story.md
-> direct story contract: .abulafia/agents/story-s01-journal-pool.md
-> skill contracts: skills/journal-yuga-common/SKILL.md + skills/story-s01-journal-pool/SKILL.md
-> outputs/journal-yuga-runs/<slug>/state.yaml
-> outputs/journal-yuga-runs/<slug>/S01-journal-pool.md
-> outputs/journal-yuga-runs/<slug>/story-run-report.md
Important runtime detail: story-* names are Abulafia story specifications, not guaranteed subagent runtime modes. If Pi's subagent tool does not explicitly list a story-* name, /story executes the story contract directly and may use built-in subagents only for narrow supporting work.
Ход работы вместо working
Abulafia подключает расширение live-status, которое заменяет стандартное сообщение ожидания на продуктовый статус вида Ход работы: .... В interactive UI он показывает:
- текущий workflow или story;
- активный инструмент и целевой файл/запрос;
- модель;
- последний результат инструмента;
- содержимое live-status файла, если workflow его ведет.
Для длинных workflow агент обновляет:
outputs/.status/abulafia-live-status.md
Туда записывается публичный операционный статус: этап, задействованные contracts/skills, источники и досье, рабочая гипотеза, последние предложения и следующий шаг. Это не raw chain-of-thought модели; скрытые рассуждения не выводятся и не подменяются выдуманным текстом.
Journal-Yuga агент сначала собирает критерии приемки. Если данных недостаточно, он пишет состояние запуска и задает только блокирующие вопросы. Чтобы остановить уточнения и заставить агента работать с тем, что есть, используйте ключевую фразу:
хватит вопросов
Каждый Journal-Yuga run хранит состояние в:
outputs/journal-yuga-runs/<slug>/
state.yaml
intake.md
acceptance-criteria.md
decision-log.md
journal-search-log.md
Локальная память по журналам находится здесь:
knowledge/journals/
index.yaml
_template.md
*.md
Порядок поиска для Journal-Yuga:
- основная база
knowledge/journals/journal_yuga_venue_database.md; - досье журналов
knowledge/journals/*.md; - курированный список
knowledge/journals/index.yaml; - web search только если локальных данных недостаточно.
Если агент извлек полезное наблюдение по журналу в ходе задачи, он автоматически дописывает его в соответствующее досье, не удаляя старые наблюдения.
Только навыки
Если вам нужны только исследовательские навыки без полного терминального приложения:
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/Enicast/Abulafia/main/scripts/install/install-skills.sh | bash
Windows (PowerShell):
irm https://raw.githubusercontent.com/Enicast/Abulafia/main/scripts/install/install-skills.ps1 | iex
Это установит библиотеку навыков в ~/.codex/skills/abulafia.
Если нужна установка локально в репозиторий:
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/Enicast/Abulafia/main/scripts/install/install-skills.sh | bash -s -- --repo
Windows (PowerShell):
& ([scriptblock]::Create((irm https://raw.githubusercontent.com/Enicast/Abulafia/main/scripts/install/install-skills.ps1))) -Scope Repo
Это установит навыки в .agents/skills/abulafia внутри текущего репозитория.
Эти установщики скачивают встроенные деревья skills/ и prompts/, а также repo-level guidance файлы, на которые ссылаются эти навыки. Они не устанавливают терминал Abulafia, встроенный runtime Node, хранилище авторизации или Pi-пакеты.
Что вы вводите → что происходит
$ abulafia "what do we know about scaling laws"
→ Ищет по статьям и вебу, готовит исследовательскую справку с цитатами
$ abulafia deepresearch "mechanistic interpretability"
→ Многоагентное исследование с параллельными исследователями, синтезом и проверкой
$ abulafia lit "RLHF alternatives"
→ Литературный обзор с консенсусом, разногласиями и открытыми вопросами
$ abulafia audit 2401.12345
→ Сравнивает утверждения статьи с публичным кодом
$ abulafia replicate "chain-of-thought improves math"
→ Воспроизводит эксперименты на локальных или облачных GPU
Рабочие сценарии
Можно формулировать запросы естественным языком или использовать slash-команды как сокращения.
| Команда | Что делает |
|---|---|
/deepresearch <topic> |
Многоагентное исследование с упором на источники |
/lit <topic> |
Литературный обзор по поиску статей и первичным источникам |
/review <artifact> |
Имитация peer review с уровнем серьёзности и планом правок |
/audit <item> |
Аудит расхождений между статьёй и кодовой базой |
/replicate <paper> |
Воспроизведение экспериментов на локальных или облачных GPU |
/compare <topic> |
Матрица сравнения источников |
/draft <topic> |
Черновик в академическом стиле на основе результатов исследования |
/autoresearch <idea> |
Автономный цикл экспериментов |
/watch <topic> |
Регулярный мониторинг темы |
/outputs |
Просмотр всех исследовательских артефактов |
Агенты
Четыре встроенных исследовательских агента, которые запускаются автоматически.
- Researcher — собирает доказательства из статей, веба, репозиториев и документации
- Reviewer — проводит имитацию peer review с градацией серьёзности замечаний
- Writer — готовит структурированные черновики на основе исследовательских заметок
- Verifier — проверяет встроенные цитаты, URL источников и убирает битые ссылки
Навыки и инструменты
- AlphaXiv — поиск статей, Q&A, чтение кода и аннотации (через CLI
alpha) - Docker — изолированное выполнение в контейнерах для безопасных экспериментов на вашей машине
- Web search — Perplexity, Exa или Gemini при наличии доступа; режим
autoиспользует цепочку Brave, DuckDuckGo и Bing как безключевой fallback - Session search — индексированный поиск по предыдущим исследовательским сессиям
- Preview — просмотр в браузере и экспорт артефактов в PDF
- Modal — serverless GPU-вычисления для всплесковых тренировок и инференса
- RunPod — постоянные GPU-поды с SSH-доступом для долгих экспериментов
Как это работает
Система построена на базе Pi для agent runtime, alphaXiv для поиска и анализа статей, а также CLI-инструментов для вычислений и исполнения. Возможности поставляются в виде Pi skills — Markdown-инструкций, которые синхронизируются в ~/.abulafia/agent/skills/ при запуске. Каждый результат привязан к источникам — утверждения сопровождаются прямыми ссылками на статьи, документацию или репозитории.
История звёзд
Участие в разработке
Полное руководство для контрибьюторов смотрите в CONTRIBUTING.md.
git clone https://github.com/getcompanion-ai/abulafia.git
cd abulafia
nvm use || nvm install
npm install
npm test
npm run typecheck
npm run build