Always-on overview for the asciisd/nova-chat repo. Points the agent at the .ai/ folder, which is the single source of truth for guidelines and skills.
php artisan boost:add-skill asciisd/nova-chat
Save this content to: .cursor/rules/000-nova-chat-overview.mdc
You are working **inside** the `asciisd/nova-chat` Laravel Nova package.
Before any non-trivial edit, consult the per-area guidelines and skills
in `.ai/`.
## Always-on guidelines (load these eagerly)
- `.ai/guidelines/package-architecture.md` — repo layout + request flow.
- `.ai/guidelines/contract-purity.md` — the rule of this repo: no
app-namespaced classes inside `src/`.
- `.ai/guidelines/frontend-workflow.md` — Vue conventions, committed
`dist/`, polling design.
- `.ai/guidelines/api-design.md` — the five-route public API surface.
- `.ai/guidelines/database-schema.md` — required columns + why
`is_from_admin` is denormalized.
## On-demand skills (load when the task matches)
| User intent | Read |
|---|---|
| Add a new feature to the package | `.ai/skills/add-package-feature/SKILL.md` |
| Edit anything in `resources/js/` | `.ai/skills/update-vue-ui/SKILL.md` |
| Cut a tagged release | `.ai/skills/release-new-version/SKILL.md` |
| Sync `resources/boost/` after a code change | `.ai/skills/sync-boost-resources/SKILL.md` |
## Two audiences — do not confuse them
- `.ai/` is for **maintainers of this repo**.
- `resources/boost/` is for **consumers** of the package via Laravel
Boost. Don't conflate them.
## Hard rules (every PR)
- Never reference `App\Models\…` from `src/`, `routes/`, `config/`, or
`database/stubs/`.
- Never edit `dist/js/tool.js` or `dist/js/tool.css` by hand — they are
generated by `npm run build` and committed verbatim.
- Never recompute `is_from_admin` at query time.
- Never change the wire format under `/nova-vendor/nova-chat/*` without
bumping major.
- Whenever consumer-visible behavior changes, also update
`resources/boost/guidelines/nova-chat.md`,
`resources/boost/skills/nova-chat-development/SKILL.md`,
`database/stubs/chat_messages_table.stub`, and the README — in the
same PR.
You are working inside the asciisd/nova-chat Laravel Nova package.
Before any non-trivial edit, consult the per-area guidelines and skills
in .ai/.
.ai/guidelines/package-architecture.md — repo layout + request flow..ai/guidelines/contract-purity.md — the rule of this repo: no
app-namespaced classes inside src/..ai/guidelines/frontend-workflow.md — Vue conventions, committed
dist/, polling design..ai/guidelines/api-design.md — the five-route public API surface..ai/guidelines/database-schema.md — required columns + why
is_from_admin is denormalized.| User intent | Read |
|---|---|
| Add a new feature to the package | .ai/skills/add-package-feature/SKILL.md |
Edit anything in resources/js/ |
.ai/skills/update-vue-ui/SKILL.md |
| Cut a tagged release | .ai/skills/release-new-version/SKILL.md |
Sync resources/boost/ after a code change |
.ai/skills/sync-boost-resources/SKILL.md |
.ai/ is for maintainers of this repo.resources/boost/ is for consumers of the package via Laravel
Boost. Don't conflate them.App\Models\… from src/, routes/, config/, or
database/stubs/.dist/js/tool.js or dist/js/tool.css by hand — they are
generated by npm run build and committed verbatim.is_from_admin at query time./nova-vendor/nova-chat/* without
bumping major.resources/boost/guidelines/nova-chat.md,
resources/boost/skills/nova-chat-development/SKILL.md,
database/stubs/chat_messages_table.stub, and the README — in the
same PR.How can I help you explore Laravel packages today?