ctx-manager
ctx-manager
Провайдер-агностический CLI и MCP-сервер для контекстной инженерии, предназначенный для мультиязычной агентной разработки.
ctx-manager располагается между вашей папкой Docs/ (PRD, архитектурные документы, планы фаз, спецификации API) и AI-агентами кодирования (Claude Code, Cursor, Windsurf), сокращая расход токенов двумя способами:
Детерминированная нарезка документов на основе заголовков — извлекайте именно тот раздел, который нужен из файла-чертежа, а не весь файл целиком. Структурный подход (регулярные выражения по Markdown-заголовкам), а не RAG/эмбеддинги.
Дополняемый, проверяемый через git файл
Memory_Ledger.md— точное состояние сессии, чтобы агенты не выводили заново и не галлюцинировали то, что уже было создано. Каждая запись проверяется по реальному выводуgit statusперед тем, как быть помеченной как проверенная.
Работает одинаково в Rust, Go, TypeScript, Python или любом другом стеке — ctx-manager никогда не касается исходного кода вашего приложения, только Docs/.
Установка
uvx --from ctx-manager ctx --helpНикакой настройки virtualenv, глобальная установка не требуется.
Related MCP server: Claude Session MCP
Использование
Нарезка файла-чертежа по заголовку:
ctx build --slice "PRD.md > 5. Feature List"Выводит содержимое выбранного раздела в stdout — передайте его в CLAUDE.md или туда, откуда ваш агент читает контекст.
Автоматическая нарезка следующей фазы на основе истории журнала:
ctx build --auto-phaseЧитает Memory_Ledger.md для последней завершённой фазы и автоматически вырезает раздел следующей фазы из Phase_file.md — без ручного указания --slice. Если в журнале ещё нет записей о завершённых фазах, возвращается к Фазе 0 с предупреждением.
Добавление проверенной записи в журнал сессии:
ctx append-ledger --summary "Implemented the login endpoint" --category completedПроверяет git status вашего проекта перед записью и добавляет префикс [Verified: N files changed], [Reasoning/State Only] или [Unverified: not a git repo] в зависимости от того, что найдено — так заявленное агентом «готово» сверяется с тем, что реально произошло на диске.
Запуск как MCP stdio-сервер (для Cursor, Windsurf, Claude Desktop):
ctx mcpПредоставляет query_slice, append_ledger_entry и get_current_phase как MCP-инструменты, вызывая тот же самый код, что и CLI-команды выше.
Конфигурация
ctx-manager ищет вверх от текущей директории файл .context/config.toml. Если он не найден, используются разумные значения по умолчанию (папка Docs/, Memory_Ledger.md и т.д.) с однократным предупреждением.
[project]
docs_dir = "Docs/"
ledger_file = "Memory_Ledger.md"
phase_file = "Phase_file.md"
[blueprint_files]
files = ["PRD.md", "Architecture.md", "API_Spec.md"]
[git]
scope = "docs_dir" # or "repo_root"Полностью переопределите поиск с помощью --project-root.
Интеграция с Claude Code
Примеры хуков SessionStart/SessionEnd (автообновление CLAUDE.md перед сессией через --auto-phase, автоматическое логирование в журнал после) находятся в examples/claude_code_hooks/.
Принципы проектирования
Docs/на входе,Docs/на выходе — никогда не касается исходного кода приложения, на любом языке.Дешёвое перед тяжёлым — stdlib
reперед эмбеддингами,subprocess gitперед библиотекой git, локальный stdio перед любым сетевым сервисом.Журнал только на добавление — ни один путь кода не перезаписывает
Memory_Ledger.mdцеликом. Никогда.Громкий сбой, а не тихий — отсутствующий заголовок или файл возвращает явную ошибку, а не пустое содержимое, на котором агент мог бы галлюцинировать.
Полное описание архитектуры см. в Docs/Architecture.md и Docs/PRD.md (этот проект использует сам себя — его собственная папка Docs/ нарезается и отслеживается ctx-manager во время его собственной разработки).
Ограничения
ctx-manager не может помешать агенту обойти его. Ничто здесь не мешает агенту с прямым доступом к файловой системе читать Docs/PRD.md напрямую, вместо того чтобы идти через ctx build. Это структурное ограничение, а не отсутствующая функция — CLI на основе подпроцессов не имеет доступа к вызовам чтения файлов другого процесса.
Если вам нужно реальное принуждение (а не просто соглашение), оно должно исходить от самого агентного рантайма:
Claude Code: используйте правила
permissions.denyв.claude/settings.json, чтобы заблокировать инструменту Read прямой доступ кDocs/*.md, вынуждая полагаться наCLAUDE.md, который генерируетctx build --auto-phase. См. документацию Claude Code по правам доступа — это не то, чтоctx-managerнастраивает за вас.MCP-клиенты (Cursor, Windsurf и т.д.): любые средства контроля доступа к файловой системе, которые предоставляет этот клиент, если они есть — вне контроля
ctx-manager.
Без одного из этих механизмов ctx-manager — это соглашение, которому агент должен следовать, подкреплённое проверенной историей сессий (журналом), а не песочница.
Разработка
git clone <this-repo>
cd ctx-manager
uv sync
uv run pytestЛицензия
MIT — см. LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Project memory, documentation and controlled secret access for AI coding agents.
Versioned documentation registry and semantic search for AI tools and coding assistants.
Shared project context for AI agents and teams: docs, tasks, and messages that stay current.
Shared memory for coding agents. Stop re-explaining your codebase every session.
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceEnables maintaining consistent project documentation and progress logs across development workflows. Provides tools for logging changes, tracking project phases, and keeping architecture docs synchronized with day-to-day development work.1-
- AlicenseAqualityDmaintenanceProvides Claude Code with programmatic session awareness to track context usage, session history, and task progress. It enables intelligent context reset recommendations and automatic synchronization of project planning documentation.5MIT
- AlicenseNot gradedqualityAmaintenanceProvides persistent memory for AI coding agents across sessions by saving and loading session context like tasks, decisions, and blockers.1,859 npmMIT

RepoPrimerofficial
AlicenseAqualityDmaintenanceProvides fresh project context to coding agents by combining Markdown documentation and live Git state, enabling deterministic startup briefs and bounded document retrieval for MCP-compatible tools.43 npmApache 2.0