Протокол продолжения для агентов ИИ-программирования. Память проекта хранится в обычных
файлах Markdown внутри проекта (.saipen/), поэтому любой совместимый холодный агент —
без истории чата, без памяти сессии — может запустить /saipen continue, прочитать
сохранённые next_action, и продолжить работу без необходимости спрашивать у пользователя
что-либо ещё. Состояние принадлежит проекту, а не памяти одного поставщика моделей.
Один комманд для возобновления. Состояние в обычных файлах. Проверенные контракты.
Репозиторий проверяет себя при каждом push; установка, состояние, проверки и удаление — всё локальное — никакой облачной службы, никакого демона, никакой базы данных.
v8.0.1 | Спецификация | Руководство | Ядро | Обслуживание | Стиль | Интерфейс | Соответствие | MIT
Короткие кнопки, чтоб пальцы не отсохли: cc ведёт проект к схождению (продолжает активную цель, если она задана), sss докладывает статус и код не лапает, st ставит чекпоинт и жмёт тормоз. Вся карта из 19 шорткатов; на русской раскладке работают сс, ссс, аа, ее, еее, рр. ff → focus; xx → cut; vv → build; zz → undo.
Project
|
+-- .saipen/STATE.md ------ what is happening right now (phase, ticket, mode, next_action)
+-- .saipen/BOARD.md ------ what work exists (DOING / TODO / DONE / BLOCKED)
+-- .saipen/LOG.md -------- why the project reached this state (event history)
+-- .saipen/KNOWLEDGE/ ---- what durable facts must survive sessions
|
v
/saipen continue
|
v
cold agent
|
v
next_action -> work -> checkpoint -> next ticket
Живая память проекта хранится в .saipen/ — обычных файлах, которые вы можете читать, сравнивать и
коммитить вместе с кодом. Холодный агент отвечает на пять вопросов только из файлов:
| Файл / поле | Ответы |
|---|---|
STATE.md |
Что происходит прямо сейчас? (фаза, активный тикет, режим работы, блокировщик) |
BOARD.md |
Какие работы существуют / какие активны? (граф тикетов: DOING, TODO, DONE, BLOCKED) |
LOG.md |
Почему проект достиг этого состояния? (дописываемый граф событий) |
KNOWLEDGE/ |
Какие устойчивые факты проекта должны выжить сессиями? |
next_action (в STATE.md) |
Какое точное действие должен выполнить следующий агент? |
Это контрольный договор, а не рекомендация по дизайну: saipen stop и каждый
переход тикета пишут файлы в фиксированном порядке, и результат проверяется
валидатором. Ничего не хранится в хостедной базе данных, и ничего не теряется, когда сессия заканчивается.
1. Установите один раз на машину — обучает Claude Code, Codex, Gemini, OpenCode,
Aider, Antigravity и любой общий ~/.agents/skills читатель (FreeBuff и т.д.):
git clone https://github.com/vacterro/saipen
cd saipen
powershell -ExecutionPolicy Bypass -File .\bootstrap\inject.ps1 # Windows
bash bootstrap/inject.sh # macOS / LinuxWhat that touches, so nothing is a surprise: it appends a marked
<!-- SAIPEN:BEGIN -->...<!-- SAIPEN:END --> блок к инструкционным
файлам агента, которые у вас уже есть (~/.claude/CLAUDE.md, ~/.config/opencode/AGENTS.md,
~/.codex/AGENTS.md, ~/.gemini/GEMINI.md) — сначала создавая резервные копии в .bak] —
и копирует протокол в соответствующие папки навыков. Ничего вне этих путей, никакого демона, никаких сетевых вызовов.
2. Запустите проект — откройте агента в вашей папке, введите:
saipen set
Нет установки? Вставьте одну строку в любой агент:
Сначала прочитайте <clone>/saipen/BOOT.md (ядро холодного запуска), затем <clone>/saipen/INDEX.md + <clone>/saipen/STYLE.md и следуйте им.
Изменили мнение? Один комманд возвращает всё на место:
powershell -ExecutionPolicy Bypass -File .\bootstrap\uninstall.ps1 # Windows
bash bootstrap/uninstall.sh # macOS / LinuxОно удаляет точно отмеченный блок (оставляя остальную часть вашего файла в покое), сначала сохраняет копию .uninstalled.bak, а затем удаляет папки с навыками.
SAIPEN направлена на конкретную проблему: ИИ-агент для кодирования, который ничего не запоминает после окончания сессии. Другие инструменты и привычки частично решают эту проблему:
| Подход | Для чего полезен | Что не несёт |
|---|---|---|
| История чата / память модели | Удобно, никакой настройки | Зависит от сессии и поставщика; не сохраняется вместе с проектом, поэтому холодный агент никогда её не увидит |
Статический AGENTS.md / файл с инструкциями |
Прочие правила и соглашения | Сам по себе не представляет текущее состояние задачи, next_action, или историю восстановления |
| Система отслеживания проблем / TODO-лист | Управление задачами и задержками | Сам по себе не определяет семантику продолжения агента — что должен прочитать и выполнить холодный агент при возобновлении |
| SAIPEN | Живое состояние выполнения, очередь задач, история событий, прочие знания и проверяемые правила продолжения — всё это в обычных файлах рядом с кодом | Ничего; именно эта комбинация и является контрактом |
Разница не в каком-то одном файле. SAIPEN делает шаг возобновления проверяемым машиной: первое действие холодного агента после /saipen continue определяется сохранённым next_action и проверяется валидатором, а не восстанавливается из памяти.
SAIPEN сочетает в себе нормативный протокол в обычных файлах с выполнимыми, ориентированными на сбой проверками. Репозиторий демонстрирует проектирование протокола/машины состояний, инструменты на Python, схемы состояния, рассуждения о восстановлении, регрессионные тесты, границы рабочих процессов с несколькими агентами и дисциплину спецификаций.
- Проектный контракт. SPEC.md определяет модель продолжения, основанную на файлах, и устойчивый контракт на диске; CORE.md и MAINTENANCE.md управляют текущим нормативным поведением.
- Проверяемое состояние. Канонический валидатор с использованием только стандартной библиотеки читает живую схему STATE и проверяет переходы фаз, зависимости тикетов, связи графа событий, инварианты между документами, возможности и состояние восстановления.
- Охват сбоев. CONFORMANCE.md сопоставляет требования с фикстурами сценариев; исполнитель сценариев выполняет структурные тесты на прохождение/провал, включая повреждённое состояние восстановления, недопустимые переходы, циклы зависимостей и ограничения только для чтения.
- Контроль регрессии. audit_checks.py изменяет известные хорошие копии и доказывает, что проверки валидатора всё ещё могут выдать ошибку, а не принимает постоянно зелёный результат как доказательство.
- Выполняемый уровень. saipen.py предоставляет операции с журналом состояния; bootstrap/ содержит помощники для установки, удаления и экспорта, с необязательным установщиком хука pre-commit.
- Явные компромиссы. Основное состояние протокола — это обычные файлы без зависимости во время выполнения. Каноническая валидация и CLI-инструменты требуют Python, но используют только его стандартную библиотеку и не требуют установки
pip.
Три уровня, строго односторонние зависимости:
CORE continuation / state / checkpoint / validation required
└─ MAINTENANCE autonomous HUNT / ADD / CLEAN evolution optional, on top of Core
└─ GOAL MODE / SUBAGENTS opt-in throughput/execution optional
Ядро не зависит от поддержки: при отключённой автономной эволюции SAIPEN всё ещё является полным протоколом продолжения — холодный агент всё ещё возобновляется.
- Ядро машины состояний —
INIT → PLAN → SCOUT → BUILD → VERIFY → REVIEW → SHIP → DONE | BLOCKED. - Автономное обслуживание — доска остановлена (ничего рабочего в
## TODO, ничего в## DOING) и неBLOCKED? Автоматические переходыHUNT(сканирует баги) →ADD(развивает функции) →HUNT, вопросы не задаётся. Сессия, сидящая наBLOCKED, никогда не автоматически охотится (Maintenance § 2.1). - Режим цели —
/saipen goal <objective>поворачивает доску и запускает цель вперёд через VERIFY/REVIEW, падая в автономное обслуживание до тех пор, пока не сработает правило завершения или выполнение не достигнет своего предела (3 волны / 20 тикетов, затем контрольные точки и отчёты) (Maintenance § 2.4). - Укрепление — пакетный ввод разбирается на хирургические тикеты
(CORE § 1.8); продолжение грязного дерева сохраняет незавершённую работу (CORE § 1.5);
секретоподобные значения удаляются из журналов (
sk-***) (CORE § 1.2).
Ежедневные точки входа; полная текущая поверхность находится в Core § 1.10.
| Команда | Делает |
|---|---|
/saipen set |
Принять проект: создать состояние .saipen/ |
/saipen continue |
Возобновить из сохранённого состояния проекта — без повторного краткого изложения |
/saipen plan |
Превратить запрос или сырую очередь в тикеты |
/saipen goal <text> |
Автономное выполнение волны против новой цели |
/saipen validate |
Запустить проверки соответствия |
/saipen status |
Только для чтения: фаза, тикеты, блокировщики, устаревание |
/saipen stop |
Контрольная точка и остановка |
More commands
| Команда | Делает |
|---|---|
/saipen hunt |
Принудительно запустить обход дефектов/улучшений сейчас |
/saipen markhunt |
Сухая, неограниченная проверка — записывает находки, ничего не исправляет |
/saipen ship |
Контрольные ворота; коммит, тег и отправка, когда разрешено |
/saipen clean |
Очистка доски и состояния |
/saipen translate |
Изолированная фабрика перевода |
/saipen prepare / /saipen collect |
Упаковать работу для передачи / интегрировать готовый пакет |
/saipen test |
Запустить объявленный набор тестов, только отчёт |
/saipen crew |
Фиксированный порядок цепочки команд (охота → воспроизведение → ввод → сборка → перевод → документирование → отправка) |
/saipen improve |
Мета-контрольная проверка улучшений протокола |
/saipen sub ... |
Создать/принять только для чтения подагентов |
Ключи пакетов. ee/qq готовят полные пакеты перевода/вики без
интеграции; eee/qqq принимают только готовые пакеты, затем интегрируют, проверяют,
рассматривают и отправляют.
saicrew. sc / saipen crew (extensions/subs/crew.md) проходит всю
встроенную команду в фиксированном порядке — датчики (saihunt, saitest, saipython, saiui),
производители (saitranslate, saiwiki) и Core как единственный основной писатель —
до тех пор, пока следующий свежий проход не оставит ничего реального для изменения. Он добавляет ровно один
свой механизм: устойчивую цель оркестрации (execution_intent: converge with converge_target: crew), которая делает цепочку возобновляемой и
восстанавливаемой из доказательств. saipen crew --dry-run --json выводит
цепочку только для чтения; bootstrap/saipen_crew.* — ОПЦИОНАЛЬНЫЙ вручную
многооконный помощник, никогда не то, что saipen crew означает. См.
extensions/subs/crew.md.
- LLM или модель — это протокол, которым следуют агенты, а не интеллект.
- IDE или база данных с хостингом памяти — состояние — это обычные файлы в вашем проекте; ничего не хостится.
- Замена Git — Git всё ещё владеет историей версий; коммитируйте
.saipen/как любой другой код. - Распределённое согласие — смотрите границу параллелизма ниже.
- Гарантия того, что LLM будет принимать правильные инженерные решения — это уменьшает потери контекста и дрейф поведения; это не делает стохастических агентов непогрешимыми.
Задача SAIPEN — это продолжение/контракт состояния плюс проверка и инструменты — передача следующему агенту проверенного машиной начального состояния, а не волшебства.
Граница параллелизма. Мутации журналируемого состояния (SAIOPS) используют проектный OS-лок и журнал восстановления (OPS § 5). Обычные редактирования проекта и отсоединённые писатели находятся вне этого лока. SAIPEN не является распределённым согласием, поэтому отсоединённые писатели требуют внешней координации (SPEC).
| Проект | Отношение к SAIPEN |
|---|---|
| SAIPENVIEW | Локальный центр управления для проектов SAIPEN на Windows — автоматически обнаруживает .saipen/ рабочие пространства, визуализирует живое состояние и вердикты соответствия, управляет тикетами и запускает AI CLI. Спутник, а не авторитет. |
| SAIWORK | Нисходящий форк CodeNomad, интегрирующий SAIPEN: вставляет BOOT.md/STYLE.md в запуски OpenCode, предоставляет ярлыки SAIPEN и представления состояния проекта, добавляет постоянную очередь приглашений. |
| FastPrompter | Переносимый Windows-черновик и менеджер фрагментов, автоматически обнаруживает .saipen/ папки и добавляет только-для-чтения просмотрщик STATE/BOARD/LOG. |
| Документ | Что это такое |
|---|---|
| SPEC.md | Формальная архитектура, цели проектирования, тест-литмус |
| CORE.md | Нормативное продолжение, конечный автомат, и контракт команды |
| MAINTENANCE.md | Автономное обслуживание и Режим Цели |
| CONFORMANCE.md | Выполняемые/поведенческие требования и правила валидатора |
| GUIDE.md | Человеческое руководство |
| RFC.md | Перенаправление совместимости на разделённые нормативные документы |
| STYLE.md | Стиль и голос коммуникации агента |
| UI.md | Устаревшие руководства по дизайну золотого интерфейса |
| Брошюра | Презентационная брошюра — EN / RU / ET / DED / JA |
All 33 translated guides
🇷🇺 Русский · 🇺🇸 English · 🇪🇪 Eesti · 🇯🇵 日本語 · 👴 Версия Деда
🇺🇦 Українська · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano
🇵🇹 Português · 🇳🇱 Nederlands · 🇵🇱 Polski · 🇸🇪 Svenska · 🇩🇰 Dansk
🇫🇮 Suomi · 🇳🇴 Norsk · 🇨🇳 中文 · 🇰🇷 한국어 · 🇹🇭 ไทย
🇻🇳 Tiếng Việt · 🇸🇦 العربية · 🇮🇱 עברית · 🇹🇷 Türkçe · 🇮🇳 हिन्दी
🇮🇩 Bahasa Indonesia · 🇬🇷 Ελληνικά · 🇨🇿 Čeština · 🇷🇴 Română · 🇭🇺 Magyar
🇧🇬 Български · 🇸🇰 Slovenčina · 🇭🇷 Hrvatski
Язык ответа. Агент по умолчанию отвечает на эстонском — это настройка, а не требование протокола, и ничего другого в SAIPEN не связано с Эстонией.
Протокол, код, коммиты и каждый документ остаются на английском при каждом значении. Меняйте только в одном месте: строке reply_language: вверху
saipen/STYLE.md. et эстонский, en английский, ru русский,
auto выбирает из сообщения, которое вы отправили.
Адаптеры. Платформа, не охваченная инъектором (DeepSeek, Qwen, отдельный
OpenAI и т.д.)? Заметки по каждой платформе живут в extensions/adapters/.




