Made-with: Cursor
4.2 KiB
Воркспейс dnd_project (корень: cursorAi)
Этот каталог — единая точка входа в Cursor для всей экосистемы DNDGamePlayer: общие правила, агенты, пайплайн и чеклисты лежат в .cursor/ здесь, а не в отдельных репозиториях.
Родительская папка на диске: D:\Work\my_projects\dnd_project (рядом с cursorAi лежат остальные репозитории).
Репозитории
| Каталог | Репозиторий | Назначение |
|---|---|---|
cursorAi |
воркспейс Cursor | Документация (этот файл), единые настройки .cursor/. Отдельного приложения нет. |
../dnd_player |
DNDGamePlayer | Electron: редактор и проигрыватель игр (React, Pixi.js, .dnd.zip, лицензирование). Основной код и полный CI-набор: lint, typecheck, test, build. |
../project-converter |
dnd-project-converter | Утилита: конвертация .dnd.zip, добавление превью сцен (WebP). Свой package.json, отдельный Electron-пакет. |
../DndGamePlayerLicenseServer |
dndgameplayer-license-server | HTTP-сервис лицензий (Ed25519, активация, отзыв). Node ≥20, без npm-зависимостей в манифесте. |
Связь клиента и сервера лицензий описана в README сервера и в коде плеера (bundledPublicKey и переменные окружения).
Сборка и проверки
dnd_player: из каталога репозитория —npm install,npm run dev,npm run build,npm run lint,npm run typecheck,npm run test.project-converter: отдельногоbuildнет;npm install,npm run dev. Синтаксис:node --checkпо файлам вsrc/.DndGamePlayerLicenseServer:npm start(илиnode src/server.mjs); синтаксис:node --checkдляsrc/иlib/.
Хук stop в Cursor (см. .cursor/hooks.json) запускает финальную проверку: стадии в .cursor/pipeline-state.json и команды lint / typecheck / test выполняются в каталоге dnd_player, если воркспейс открыт из cursorAi (см. логику в .cursor/hooks/final-verify.cjs). Переопределение пути: переменная окружения DND_PLAYER_ROOT.
Пайплайн и правила
- Правила агента по умолчанию:
.cursor/rules/project.mdc(future-pipeline: implementation → review → tests → verify). - Пошаговый сценарий с под-агентами:
.cursor/skills/feature-pipeline/SKILL.md. - Под-агенты:
.cursor/agents/(frontend-senior,reviewer,unit-tests). - PR-чеклисты:
.cursor/pr-checklists/(пути к файлам в чеклистах заданы относительно репозиторияdnd_player/).
При работе только в project-converter или DndGamePlayerLicenseServer соблюдай смысл пайплайна (минимальный diff, тесты по возможности), а формальные команды npm run lint и т.д. из плеера запускай, когда менялся общий контракт или есть смысл прогнать регрессию всего монорепо по смыслу (или по требованию задачи).
Multi-root в Cursor (по желанию)
Чтобы видеть все папки в одном окне, можно добавить в файл *.code-workspace блок folders с путями к cursorAi, dnd_player, project-converter, DndGamePlayerLicenseServer. Корнем с правилами остаётся папка, где лежит актуальный .cursor/ (рекомендуется cursorAi).