Back to Northbound
AGENTS.md — Northbound.Run
Operational rules for any AI agent (Claude Code, Codex, etc.) working in this repo. For full project preferences (copy & voice, forms), see CLAUDE.md.
Package manager: bun only — never npm
- This project uses bun. The Cloudflare Pages deploy installs from
bun.lock. - Use
bun/bunxfor everything:bun install,bun add <pkg>(-dfor dev deps),bun run <script>. Never runnpm,npx,yarn, orpnpm. - Never create or commit
package-lock.json(it's gitignored). When that file is present, Cloudflare auto-detects npm and runs strictnpm ci, which fails the moment the npm lock drifts frompackage.json— this already broke a deploy once.bun.lockis the only source of truth. - After changing dependencies, commit the updated
bun.lock; verify a clean install withbun install --frozen-lockfile. - If a
package-lock.jsonever reappears at the repo root, delete it.
Git
- On any branch that is not
main, auto-commit and push changes with clear, concise messages. Onmain, branch first or wait for explicit instruction.
Dev server
- A dev server is already running via VS Code — no need to start one after making changes.
Build / deploy
- Build:
bun run build(VitePress →.vitepress/dist, gitignored). - Hosting: Cloudflare Pages. Redirects live in
public/_redirects.