pnpm install
pnpm dev # hot reload on chrome://extensions
pnpm build # production build → dist/chrome-mv3/
pnpm typecheck # tsc --noEmitpnpm typecheckmust pass with zero errors before submitting.- No
Promise.all()for mutations. All GitHub API writes must go through the sequential queue (lib/queue.ts). - 1 s delay between mutations. Every content-creating mutation must be followed by
await sleep(1000). - All API calls must originate in
entrypoints/background.ts— never in content scripts.
Caution
Rate-limit safety is non-negotiable. GitHub will permanently ban a user's PAT with a 403 Abuse alert if multiple mutations are fired concurrently. Never bypass the queue or the sleep delay.
- TypeScript strict mode — no
anywhere avoidable - Immutable patterns — create new objects, never mutate in place
- Small files: aim for < 400 lines, hard cap at 800 lines
- Handle errors explicitly; never silently swallow them