Эти скрипты превращают markdown-процесс в более жесткий workflow.
CI smoke-check for the CLI lives in .github/workflows/ci.yml.
- Python 3.10+
- запуск из корня
codex-workflow-kitили из проекта, где уже лежатAGENTS.mdиOPERATING_RULES.md - по умолчанию скрипты пишут в
.codex/memory/ - если среда запрещает запись в скрытую
.codex/, используй--memory-dir memory
python3 tools/bootstrap.py --target ../my-project
python3 tools/validate_workflow.pyЭто стандартный режим для реального проекта с .codex/memory.
python tools/bootstrap.py --target ..\my-project
python tools\validate_workflow.pyЕсли среда блокирует запись в скрытую .codex/, используй --memory-dir memory как fallback для template или sandbox режима.
Сканирует репозиторий и выводит структурированный JSON summary.
python tools/scan_project.py --target .Можно писать в файл:
python tools/scan_project.py --target . --output scan-summary.jsonГенерирует черновик CODEBASE_INDEX на основе structural scan.
python tools/init_index.py --target . --output CODEBASE_INDEX.generated.mdJSON-режим в stdout:
python tools/init_index.py --target . --format json --output -Генерирует черновик TEST_INDEX на основе scan summary и команд проекта.
python tools/init_test_index.py --target . --output TEST_INDEX.generated.mdMarkdown в stdout:
python tools/init_test_index.py --target . --output -Генерирует черновик CHANGE_AREAS на основе directory и entrypoint heuristics.
python tools/init_change_areas.py --target . --output CHANGE_AREAS.generated.mdJSON-режим:
python tools/init_change_areas.py --target . --format json --output -Обновляет машинные секции существующего CODEBASE_INDEX.md без полного перетирания файла.
python tools/refresh_index.py --target . --index CODEBASE_INDEX.mdКратко объясняет, что scanner обнаружил и почему.
python tools/explain_scan.py --target .Markdown-режим:
python tools/explain_scan.py --target . --format markdownРазворачивает mandatory core в новый проект.
python tools/bootstrap.py --target ..\my-projectС перезаписью существующих workflow-файлов:
python tools/bootstrap.py --target ..\my-project --forceТолько core-профиль:
python tools/bootstrap.py --target ..\my-project --profile corePreview what bootstrap would do without writing files:
python tools/bootstrap.py --target ..\my-project --dry-runUpdate an existing local install without resetting live memory:
python tools/bootstrap.py --target ..\my-project --force --skip-memoryСоздает или полностью обновляет .codex/memory/current-task.md.
python tools/scaffold_task.py --goal "Fix session pagination" --scope "bot/sessions, handlers" --tests "tests/test_sessions.py"Пример для template/sandbox режима:
python tools/scaffold_task.py --memory-dir memory --goal "Fix session pagination"Добавляет новую запись в .codex/memory/handoffs.md.
python tools/create_handoff.py --role worker --objective "Update session keyboard callbacks" --owned-files "bot/keyboards/sessions.py" --out-of-scope "handlers, server"Архивирует задачу в .codex/memory/done.md и сбрасывает current-task.md.
python tools/close_task.py --task "Fix session pagination" --files "bot/keyboards/sessions.py, tests/test_sessions.py" --verification "pytest tests/test_sessions.py"Проверяет наличие mandatory core-файлов и базовую дисциплину памяти.
python tools/validate_workflow.pyДля template/sandbox режима:
python tools/validate_workflow.py --memory-dir memoryТребует явно отметить обязательные ворота приемки.
python tools/acceptance_check.py --scope --behavior --verification --regression --memoryWith concrete checks:
python tools/acceptance_check.py --scope --behavior --verification --regression --memory --require-current-task-updated --verification-command "python -B -m unittest discover -s tests -v"python -B -m unittest discover -s tests -v- Скрипты специально простые и предсказуемые.
- Они не пытаются анализировать архитектуру за тебя.
- Их цель: сделать нарушение процесса более заметным и дорогим.
bootstrap.pyпо умолчанию копирует весь workflow kit;--profile coreоставляет только уменьшенный набор.scan_project.pyиinit_index.pyстроят черновик архитектурной карты, но не заменяют ручной review.init_test_index.pyиinit_change_areas.pyдают черновики для test map и change areas, а не финальную архитектурную истину.refresh_index.pyобновляет только машинные секции и должен использоваться поверх уже просмотренного человеком индекса.- Генераторы поддерживают
--output -для stdout и--format jsonтам, где это имеет смысл.