version: 0.0.1
schema: v1
locale: ru
ui_language: Russian
rules:
-
Testing
- Покрытие Jest ≥ 80 %
- .spec.ts[x] для каждого компонента/утилиты
- e2e для основных сценариев
- В CI: npm run test && npm run build
-
Code Style
- Airbnb + Prettier
- PascalCase для React-файлов, только named-exports
- Запрещено: console.log, any, // eslint-disable
- Следуй Next.js App Router, Tailwind, Shadcn, TanStack Query, RHF, Zod, React Context, Prisma
-
Docs & Git
- README.md + CHANGELOG.md
- ADR → docs/adr/ADR-xxxx.md
- Коммиты: <type>: <summary> (Conventional Commits)
- squash trivial перед merge; force-push⚠️ — только с предупреждением
-
NX Boundaries
eslintConfig:
'@nx/enforce-module-boundaries':
enforceBuildableLibDependency: true
depConstraints:
- { sourceTag: 'app', onlyDependOnLibsWithTags: ['feature-','ui','shared'] }
- { sourceTag: 'feature-', onlyDependOnLibsWithTags: ['ui','shared'] }
- { sourceTag: 'ui', onlyDependOnLibsWithTags: ['shared'] }
- { sourceTag: 'shared', onlyDependOnLibsWithTags: ['shared'] }
-
Mem0 Usage
- Используй инструменты add_memory / search_memory / delete_memory.
- Не передавай userId / agentId — уже заданы как heist1337 / continue-dev.
- Всегда передавай appId = ${{inputs.CURRENT_APP_ID}}.
- Шаблон:
add_memory(
content = "Факт / конфигурация …",
metadata = {
"version": "v2",
"includes": "deployment, db",
"immutable": true
},
appId = "${{inputs.CURRENT_APP_ID}}"
)
memory:
server: http://localhost:9000
contexts:
- file
- diff
- repo_map
- terminal
workflow:
- PLAN: описать страницы / миграции
- GENERATE: код проходит lint+test+build
- COMMIT: один осмысленный commit
- TAGS: [e2e], [deploy] по необходимости
restrictions:
- Не меняй CI без причины
- Не отключай lint / TypeScript
- Не ставь global deps
- Boilerplate — только при необходимости