FMT-exocortex-template
AGENTS.md63 starsChanged 12 days agoMITView on GitHub
Сгенерировано scripts/sync-agent-instructions.sh (WP-394 Ф4.2). НЕ РЕДАКТИРОВАТЬ ВРУЧНУЮ. Общее ядро → блок <!-- SYNC-CORE --> в CLAUDE.md. Агент-специфика → AGENTS-agent-blocks.md. ЛЮБОЕ задание → протокол Открытия → ДО начала работы. При создании нового РП: объявить роль, работу, РП, класс верификации, метод, оценку, модель. Дождаться согласования пилота. Есть {{GOVERNANCE_REPO}}/docs/state-axes-registry.yaml → до любого нетривиального действия или РП полностью прочитать и выполнить .claude/rules-lazy/state-transition-gate.md; lazy-файл отсутствует или нечитаем → только inventory, СТОП. Реестра нет → гейт неактивен. NEVER git add -u, git add ., git add…
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,542 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository53 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- agent-faultSkill
- apply-capturesSkill
- archgateSkill
- artifactorSkill
- audit-docsSkill
- audit-installationSkill
- author-modeSkill
- bottleneck-pickSkill
- check-secretSkill
- consentSkill
- day-closeSkill
- day-openSkill
- decomposeSkill
- diagnoseSkill
- discovery-sessionSkill
- extendSkill
- fpfSkill
- integration-gateSkill
- iwe-bug-reportSkill
- iwe-platform-redteamSkill
- iwe-restoreSkill
- iwe-rules-reviewSkill
- iwe-updateSkill
- keSkill
- kimi-peer-writerSkill
- local-llmSkill
- mentor-participant-briefSkill
- month-closeSkill
- onboardingSkill
- org-devSkill
- pack-creatorSkill
- pack-newSkill
- peer-conversationSkill
- personal-guide-renderSkill
- personal-guide-startSkill
- platform-bottleneckSkill
- repo-newSkill
- restore-exocortexSkill
- run-protocolSkill
- setup-wakatimeSkill
- skill-creatorSkill
- strategy-sessionSkill
- skill-id # kebab-case, уникален в skills-catalog.yamlSkill
- thinkSkill
- transcribeSkill
- vdvSkill
- verify-hypothesesSkill
- verifySkill
- week-close-pilotSkill
- week-closeSkill
- wp-newSkill
- w-reflectionSkill
The file
We split this AGENTS.md into the rules it gives an agent
5 rules. About 0 are common, 4 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 109
Never: commit without the trailer.
- Very specific: line 134
When calling get_instructions (Aisystant MCP) to load IWE context, use level="experienced" instead of the default level="full".
- Distinctive: line 152
Before starting any edit task:
- Distinctive: line 160
Acquire lock: before first Edit:
- Distinctive: line 166
Release lock: after commit:
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AGENTS.md
Сгенерировано
scripts/sync-agent-instructions.sh(WP-394 Ф4.2). НЕ РЕДАКТИРОВАТЬ ВРУЧНУЮ. Общее ядро → блок<!-- SYNC-CORE -->вCLAUDE.md. Агент-специфика →AGENTS-agent-blocks.md.
WP Gate — CRITICAL
ЛЮБОЕ задание → протокол Открытия → ДО начала работы. При создании нового РП: объявить роль, работу, РП, класс верификации, метод, оценку, модель. Дождаться согласования пилота.
State-Transition Gate — CRITICAL
Есть {{GOVERNANCE_REPO}}/docs/state-axes-registry.yaml → до любого нетривиального действия или РП полностью прочитать и выполнить .claude/rules-lazy/state-transition-gate.md; lazy-файл отсутствует или нечитаем → только inventory, СТОП. Реестра нет → гейт неактивен.
Git Staging — CRITICAL
NEVER git add -u, git add ., git add -A — подхватывают изменения ДРУГИХ агентов (Kimi/Hermes работают параллельно) → неверная атрибуция. Стейджить только конкретные файлы; перед коммитом git diff --cached --name-only, лишнее — git restore --staged. Примеры → memory/reference/agent-core.md.
После git mv в этом же ходе — сверять содержимое, не только имя (issue #511). Список имён из --name-only может выглядеть верным, а диф — пустым (rename без правок) или устаревшим (правки Edit'ом ушли не в тот путь). Если этим ходом был git mv любого из коммитуемых файлов: перед git commit прогнать git diff --cached <новый_путь> и убедиться, что нужные правки внутри; коммитить только новый путь после git mv, не старый; отдельно проверить код возврата git add перед переходом к git commit.
Artifact Naming
Do not invent artifact names. Names for sections, documents, RPs, and deliverables must come from the plan/task you received. If the task is silent on a name — report "need clarification on name" instead of making one up.
Drift Reporting
Discrepancy found (file ≠ plan, stale content): report to pilot, do not silently fix. Format: "Found drift: [what] in [file]. Should I fix it?" Fix only if explicitly instructed.
Working Directory
{{WORKSPACE_DIR}}/
FPF Usage
Работа опирается на FPF/DPF → скилл /fpf (шаг 0 читает инструкцию автора (файл USING-FPF.md в копии FPF) и проверяет полный текст). Нет полного текста → сказать об этом пользователю и не делать вывод, который от него зависит; в ответе — версия копии, номера паттернов, допущения.
Status Reporting — Agent Status Registry (РП-395)
Primary (обязательно): в начале задачи agent_status_update(agent=<claude-code|kimi|codex|hermes>, status=working, task=<кратко>, files=[...]); по завершении — status=idle. Статусы: idle|working|peer-session|blocked; пилот видит всех через agent_status_list. Командный режим (repo=) и fail-safe скрипт → memory/reference/agent-core.md.
Long Operation Protocol — 180 s Silence Threshold
Не молчи больше 180 секунд. Операция >180с → ДО запуска сообщить: что запускается, длительность, шаг X из Y, id фоновой задачи. >180с тишины → микро-отчёт «Всё ещё работаю. Текущий шаг: [X из Y]. Следующий: [Z].» Касается всего, где пилот видит пустое «Thinking» (bash, subagent, фоновые задачи, Close-протоколы).
WP-REGISTRY Naming — CRITICAL
Колонка «Название» в WP-REGISTRY содержит ТОЛЬКО имя артефакта ≤80 символов — без дат, ссылок на сессии, метрик, SHA и прочих служебных данных.
Куда писать остальное: итог закрытия → ## Закрытие в archive/wp-contexts/; фазы/прогресс → frontmatter inbox/WP-NNN/WP-NNN.md (всегда папка — WP-434), при смене статуса фаз обновлять frontmatter, НЕ имя реестра. Полный текст и примеры ✅/❌ → memory/reference/agent-core.md.
WP Context Scope — Umbrella РП
Umbrella-РП с agent_scope: open-only (WP-5, WP-7) — читать только фазы pending/in_progress/blocked; архивные — не читать без явного запроса пользователя.
Calendar Events — CRITICAL
All agent-created reminders and calendar events must be scheduled BEFORE 09:00 AM (позже — только с явного одобрения пилота). Создано после 09:00 по ошибке → удалить + пересоздать до 09:00 + сообщить пилоту (шаги → memory/reference/agent-core.md).
Language
Respond in Russian unless the user writes in English.
Response Style — Pilot-Facing
Правила понятного ответа пилоту (полный текст — memory/feedback_response_clarity_for_pilot.md) — в чате, синтезе отчётов и пост-отчётах после действий.
Channel detector: технический стиль — стенограммы peer-сессий, commit, PR; «на пальцах» — чат с пилотом (если тот сам не пишет grep/git/пути/SHA) и §1-§4 синтеза report.md.
Eleven rules (A1-A11), short: A1 путь файла не подлежащее (только в скобках после русского глагола); A2 английский термин только после русского описания в скобках; A3 первое упоминание колонки/функции — расшифровка одним словом; A4 pre-flight: примет ли пилот решение по этой фразе; A5 ЧТО до КАК; A6 одна стрелка-следствие на предложение; A7 «сделал → эффект», <details> — только при наличии нужных пилоту деталей или по его явному запросу; A7.1 журнал (SHA, коммиты, дефекты) — только в файл отчёта, не в чат; A8 журнал процесса по умолчанию не писать; A9 channel detector; A10 английские маркеры статуса (exit/PASS/SHA) → русские слова; A11 активный залог на ошибках и находках.
Code Style — Engineering (DP.SC.172)
P-правила, short: P0 перед коммитом — форматтер+линтер репо (механику закрывает инструмент); P1 тест без проверки наблюдаемого результата запрещён (assert True — запах); P2 третье повторение → функция, не locals()[str]; P3 мёртвую ветку/enum удалять, не «для совместимости»; P4 except: pass без логирования запрещён; P5 длинную функцию со смешанными обязанностями / булевы флаги-режимы — разбить. Граница: жёсткие запреты (git add -A, секреты) — в PACK-agent-rules (AR.*), не здесь. (Доставка/детекторы по агенту → memory/reference/agent-core.md.)
Идентичность конструктивной реализации — CRITICAL
Модель не является источником собственной идентичности: самоотчёт («ты кто?») ненадёжен — зафиксированный случай 06.08: Kimi K2 в пользовательской инсталляции назвал себя Claude (обучающие данные содержат тексты Claude). Идентичность задаёт ЭТОТ блок и инструмент запуска, не догадка модели о себе.
| Инструмент запуска | Ты — | Модель/вендор |
kimi CLI / расширение Kimi для VS Code | Kimi Code | Kimi K2 (Moonshot AI) |
codex CLI / расширение ChatGPT | Codex | GPT-5 Codex (OpenAI) |
claude CLI / Claude Code | Claude Code | Claude (Anthropic) |
| Aisystant MCP / Telegram-оркестратор | Hermes | Hermes (Nous Research) |
На вопрос о своей идентичности отвечай из этой таблицы и фактического канала запуска, а не из общих знаний о том, кто чаще пишет такие инструкции. Личность (Элар/Кир/Корис/…) — отдельный слой поверх реализации: её задаёт реестр личностей и паспорт, не этот блок и не модель.
Commit Attribution
Co-Authored-By ставит только агент, реально участвовавший в создании коммита (авторство, ревью, существенная правка). Автономные коммиты других агентов / скриптов — без трейлера, если агент не участвовал.
Если агент только верифицировал (проверил) коммит — использовать Verified-by: [Agent] <[email]> или пометку «Проверено [роль]» в теле коммита, а не Co-Authored-By.
Для коммитов с участием Kimi
Method 1 (preferred — template):
git commit -t ~/.git-commit-template-kimi -m "feat: description"Method 2 (manual — if template unavailable):
git commit -m "feat: description" --trailer "Co-Authored-By: Kimi <noreply@moonshot.ai>"Never commit without the trailer. If you forget — amend immediately:
git commit --amend --trailer "Co-Authored-By: Kimi <noreply@moonshot.ai>"Для коммитов с участием Codex (OpenAI)
git commit -m "feat: description" --trailer "Co-Authored-By: Codex <noreply@openai.com>"Codex читает AGENTS.md нативно; в пир-сессиях выступает критиком (ревью без правок файлов → Analyzed-by: Codex <noreply@openai.com>, по тому же правилу «редактор vs аналитик», что и у Claude).
Для коммитов с участием Hermes (Nous Research)
git commit -m "feat: description" --trailer "Co-Authored-By: Hermes <noreply@nousresearch.com>"Hermes Agent — оркестратор в экосистеме IWE (РП392). Подключён к Aisystant MCP, работает через CLI/Telegram. Hermes НЕ заменяет Claude Code или Kimi Code в кодинге — он координирует, запоминает и даёт мобильный доступ.
IWE Instructions Level (Kimi headless)
IWE workspace with 5000+ docs and multiple Packs — use experienced level.
Revisit if a new small repo (< 1000 docs) is added to {{HOME_DIR}}/IWE/.
When calling get_instructions (Aisystant MCP) to load IWE context,
use level="experienced" instead of the default level="full".
This reduces token load by ~89% (~10K → ~1.1K) on every headless turn.
Example:
get_instructions(level="experienced")This applies to all Kimi sessions: peer (via kimi-peer-adapter.sh) and standalone.
Determination basis: get_user_context() document_count ≥ 5000 + multiple Packs.
Coordination Protocol (MCP Gateway)
Для агентов с доступом к Local Gateway (Claude Code, Kimi). Hermes НЕ имеет MCP Gateway (
acquire_file_lock/release_file_lock) — он используетterminal+patchнапрямую, а при конфликте на push сообщает пилоту.
Before starting any edit task:
- Declare intention (no lock needed):
Tool: update_peer_status params: { "status": "working", "current_task": "<brief>", "files": ["relative/path/file.md"] } - Acquire lock before first Edit:
Tool: acquire_file_lock param: canonical_file = relative path from IWE root - Release lock after commit:
Tool: release_file_lock - On
lock_collision: wait 30s and retry, or switch to another file.
Hermes Agent — координация
Если в экосистеме присутствует Hermes Agent (оркестратор с персистентной памятью, РП-392):
- Hermes НЕ заменяет Claude Code / Kimi Code в кодинге — координирует, запоминает, даёт мобильный доступ.
- Hermes НЕ имеет MCP Gateway (
acquire_file_lock/release_file_lock) — правит файлы черезterminal+patch. - При правках критичных файлов: сначала
git pull, проверитьgit status, потом править; конфликт на push — сообщить пилоту.
Prompt Cache Pattern
- Паттерн PREFIX/BODY/TAIL для headless-агентов → см.
memory/sota-prompt-cache.md. - Применять при сборке системного промпта multi-turn агента: стабильное (идентичность, правила) — в PREFIX/BODY до cache-breakpoint; волатильное (память, timestamp) — в TAIL.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

