|
1 | | -- `.agents/AGENTS.md` and `.agents/rules/*.mdc` are source of truth. After editing them, run `install` to sync. Never edit `SKILL.md` directly. |
| 1 | +- `.agents/AGENTS.md` and `.agents/rules/*.mdc` are source of truth. After editing them, run `bun install` to sync. Never edit `SKILL.md` directly. |
2 | 2 | - In all interactions and commit messages, be extremely concise and sacrifice grammar for the sake of concision. |
3 | 3 | - Answer in English by default. Switch languages only when the user explicitly asks for another language. |
4 | 4 | - Prefer the best long-term architecture fix over the nearest local patch. If the real fix is an API or abstraction change, do that. |
5 | 5 |
|
6 | | -- Internal agent docs live under `docs/`, not `docs/`. Put solution docs in `docs/solutions/` and plans in `docs/plans/`. |
7 | | - |
8 | 6 | ## Git |
9 | 7 |
|
10 | 8 | - **Git:** Never git add, commit, push, or create PR unless the user explicitly asks, or the active command/skill explicitly requires it. |
|
21 | 19 | - DX: Optimize for the absolute best developer experience. JSDoc must be first-class for agents. Every API surface should be intuitive for both humans and AI agents. |
22 | 20 | - Docs: NEVER write changelog-style language ("has been removed", "new feature", "previously", "now supports"). Docs are user-facing reference for the LATEST state only. Write as if no prior version exists. No migration notes, no "what changed" — just document what IS. Follow docs/solutions/style.md for writing tone/structure. |
23 | 21 | - Templates: `templates/**` is CI-controlled output. Never manually edit or commit template source, manifests, or lockfiles during package/app work. If local verification rewrites template files, restore them before handoff. Only change `templates/**` when the user explicitly asks for template work. |
| 22 | +- Barrels: If you change package exports, move public files, add/remove files under exported folders, or CI says `pnpm brl` produced changes, run `pnpm brl` before final verification/commit and include the generated barrel updates. |
24 | 23 | - Do not write TDD cases for dead code/legacy removal assertions (for example: "should not contain old API X anymore"). Remove the dead path directly and keep tests focused on current behavior. |
25 | 24 | - Prefer inline when used once; extract constants only when reused. |
26 | 25 |
|
@@ -77,8 +76,12 @@ Do not default to `pnpm typecheck` for package work in this repo. Package type c |
77 | 76 |
|
78 | 77 | If filtered package builds still leave unresolved workspace-package imports during typecheck, run `pnpm build` at the repo root before treating the failure as real package debt. |
79 | 78 |
|
| 79 | +If a local-only build/runtime failure points at corrupted files under `node_modules/.bun` or other non-versioned env state while CI is green, clean local env before changing repo code: remove `node_modules`, relevant app caches like `apps/www/.next` and `apps/www/.contentlayer`, remove `.turbo`, then rerun `pnpm install`. |
| 80 | + |
80 | 81 | **CLOSEOUT GATE**: If a task edits code, tests, package manifests, or build/type/lint config, do not post a final handoff until the relevant verification ran in this same turn. If you skip a required check or it fails, say that plainly and do not present the task as done. |
81 | 82 |
|
| 83 | +If package work changed exports or file layout, run `pnpm brl` before the final verification pass. If `pnpm brl` writes files, keep those barrel updates in the change. |
| 84 | + |
82 | 85 | **Required sequence for type checking modified packages:** |
83 | 86 |
|
84 | 87 | 1. `pnpm install` - Install all dependencies and update lockfile if needed |
|
0 commit comments