Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/xydisorder/shipjaw/shipjaw.cursor-rulegit clone --depth 1 https://github.com/XyDisorder/shipjawWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00567 | $0.00567 |
| Opus 5 | $0.00283 | $0.00283 |
| Sonnet 5 | $0.00113 | $0.00113 |
| Haiku 4.5 | $0.00057 | $0.00057 |
Grade A, and why
shipjaw.cursor-rule scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 48 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Shipjaw project contract
This app was scaffolded with Shipjaw. For features, fixes, refactors, and
resumed work, follow the shipjaw-ask contract (prefer invoking
/shipjaw-ask; if not invoked, still obey this rule).
Before non-trivial plans/choices (new phase, auth, data, primary UI, ADR):
run a built-in challenger pass (prefer a separate Task/subagent). Optional
/shipjaw-challenge only for a durable written report.
Do
- Read
documentation/INDEX.mdfirst. Use Open when as a hard filter. - Then read
documentation/handoff.mdif present (last session next step). - Open at most 1–2 KB/product files the task needs. Prefer Grep + offset reads.
- Implement against project tooling (strict TS, eslint, domain → application
→ infrastructure → presentation). Place types/constants/helpers by
ownership — no grab-bag
lib/utils.ts. Ports +composition.ts; Server Actions stay thin; map typed errors to UI/HTTP. - Domain/application changes → Vitest (happy path + required edges).
- Critical User can… journeys → Playwright golden path + e2e edges + axe.
- Bug fix → regression test (fails before, passes after). Never weaken tests to green.
- Run the gate (typecheck → lint → unit → e2e as relevant). Stop after 2 failed fix attempts and ask the human.
- Update
documentation/surgically before ending (changelog, features-index, touched KB, phase status). Overwritedocumentation/handoff.mdwith the next slash command. State lives in the repo, not the chat. - No agent can trigger
/compactitself. Past ~6 investigation reads without root cause, or after finishing one phase of a multi-part feature, say so and suggest/compact/fresh chat before continuing.
Don't
- Re-run bootstrap (
shipjaw-build) or recreate the stack when KB exists. - Implement Out-of-v1 / out-of-phase scope “while we’re here”.
- Invent business rules when behavior is ambiguous after one clarifying question — stop and ask.
- Dump framework docs into
documentation/or paste large code into docs. - Park domain types or business constants inside React files or a global utils bag.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 48 lines · 567 tokens per session scan A 4be8bc0e55e7
shipjaw.cursor-rule is a cursor rule published in the GitHub repository XyDisorder/shipjaw (2 stars, last pushed 15d ago), licensed MIT. It adds 567 tokens to every session, about $0.0028 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other cursor rules, from other repositories
ai-collaboration
Instructions for AI agent code generation workflow.
api-validation
API route validation — enforces Zod validation on all route handlers and server actions.
file-uploads
Image and file upload patterns — prevents insecure client-side uploads and missing file validation.
server-actions
Guidelines for Server Actions — validation, error handling, and when to use Route Handlers instead.
database-design
Database schema design patterns for Supabase with proper types and relationships.
hydration-safety
React hydration mismatch prevention.