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/backendforth/next-sanity-starter/webgit clone --depth 1 https://github.com/backendforth/next-sanity-starterWhat 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.00000 | $0.00400 |
| Opus 5 | $0.00000 | $0.00200 |
| Sonnet 5 | $0.00000 | $0.00080 |
| Haiku 4.5 | $0.00000 | $0.00040 |
Grade A, and why
web 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.
What it actually says
Next.js 16 App Router. RSC by default; "use client" only when needed (state, effects, browser APIs). Tailwind v4. Biome: tabs, double quotes. Path alias @/* → web/.
Hard rules:
- Thread
{ locale, siteLocale }through every render path that touches Sanity content. - Resolve translatable fields via
pickLocalizedString/parseLocalizedTextfromweb/sanity/utils/sanityLocalizedText.ts. Never index i18n arrays. - No locale filtering inside GROQ — projections return full
{ _key, _type, language, value }arrays. - Content blocks are modules (see
.cursor/rules/modules.mdc). No ad-hoc<section>in route files. web/sanity/types/*are hand-maintained. Update them in the same commit as the GROQ projection.- Set
data-sanityattrs on Sanity-rendered roots (copy fromModuleText.tsx/MediaImage.tsx) — Visual Editing depends on it. - Never read locale from
useRouter(),usePathname(),window.location, or cookies inside a module — breaks SSR + Presentation iframes. - No hardcoded locale codes outside
web/src/i18n/.
URL/locale helpers live in web/src/i18n/ (paths.ts, siteLocalePathUtils.ts, site-locales.ts, proxyLocaleFetch.ts). Use them; do not concatenate locale prefixes by hand.
After web changes:
pnpm typecheck
pnpm format
NEVER edit:
web/.next/- Any
*.gen.*files - Imports from
studio/...(usepackages/*for shared code).
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 · 34 lines · 0 tokens per session scan A e83e5618a5d8
web is a cursor rule published in the GitHub repository backendforth/next-sanity-starter (4 stars, last pushed 25d ago), licensed ISC. It costs nothing until one of its globs matches a file; then it loads 400 tokens. 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
cursorrules
Cursor rule "cursorrules" from KyaniteLabs/DialectOS, covering kyanitelabs — ai agent instructions, organization, code quality, security and testing.
project-structure
Project structure, conventions, and where things live.
context
Cursor rule "context" from Takt365/Takt.Wpf, covering 上下文管理规范, 上下文分类, 文件引用规范, 上下文完整性检查 and 上下文更新规范.
naming
Cursor rule "naming" from Takt365/Takt.Wpf, covering 命名规范, 类命名, 接口命名, 方法命名 and 文件命名.
prompt
Cursor rule "prompt" from Takt365/Takt.Wpf, covering 提示语编写规范, 标准结构, 任务类型标签, 完整示例 and 禁止事项.
git-workflow
Git branching and PR workflow.