product-cli — MCP-сервер для Claude Code: граф What/How и проверка
Описывает продукт как связный граф What/How в YAML/Turtle и даёт агенту инструменты для его правки и проверки.
Открыть на GitHubЧто делает product-cli
product-cli — один бинарник на Rust плюс MCP-сервер. Граф продукта лежит файлами под .product/, базы и сервиса нет. Что входит в модель: доменные сущности, команды, события, read-модели, шаги интерфейса, системы и триггеры — это часть What. Контракты, экранная композиция и фичи поставки — How. Связи между ними типизированы, поэтому вопрос «опиши эту систему» превращается в запрос к графу, а не в поиск по устаревшему документу.
Ставится из исходников: cargo install --path product-cli. Внутри бинарника уже лежат скиллы Claude для фаз What→How→Build. product init раскладывает их в .claude/skills/ нового репозитория, --no-skills отключает этот шаг, а product skills install --global кладёт их в ~/.claude/skills/ для всех проектов. После установки скиллов нужна новая сессия Claude, дальше — /product-session. Сессию авторства можно вести не только в Claude: product session start и product author domain умеют поднимать GitHub Copilot CLI, выбор задаётся флагом --cli claude|copilot, полем [author].cli в .product/config.toml или глобальным значением в ~/.config/product/config.toml. Если ничего не задано, берётся claude.
Проверка идёт по SHACL-формам и SPARQL-правилам фреймворка: product domain validate смотрит отдельные узлы, --strict добавляет проверки полноты графа. product mcp --http поднимает MCP-сервер и живую веб-страницу на / с тремя связанными видами — Systems, Domain и Flows.
Какие задачи решает
- описать доменную модель и события так, чтобы их читала машина
- проверить узлы графа на соответствие формам фреймворка
- вывести исполняемую сигнатуру агрегата из его описания
- прогнать сценарии потока для decider
- посмотреть граф What как ER-диаграмму или swimlanes событий
Примеры запросов агенту
- Инициализируй проект командой
product init --demoи покажи, какие узлы попали в модель - Проверь граф строго:
product domain validate --strict - Подними MCP-сервер через
product mcp --httpи объясни, что видно на странице/
Как установить product-cli
Установка
Команды запуска нет в реестре MCP — смотрите README репозитория
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о product-cli
Как установить product-cli в Claude Code?
Соберите бинарник из исходников: cargo install --path product-cli. Затем выполните product init — скиллы Claude для фаз What→How→Build окажутся в .claude/skills/ репозитория. Откройте новую сессию Claude и вызовите /product-session.
Что делает product-cli?
Ведёт граф продукта под .product/ в форматах YAML и Turtle и отдаёт его агенту через MCP-инструменты. Граф описывает доменную модель, события, контракты и фичи поставки, а команды product domain validate и product decider derive проверяют и достраивают его.
Чем ddd отличается от графа .product/?
ddd — отдельный инструмент со своим хранилищем .ddd/ и своими командами, например ddd validate и ddd diff --sarif build.sarif. Граф .product/ он читает как ещё одну управляемую поверхность в команде ddd what.