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/ajgreyling/cursor-doctor/lessons-learntgit clone --depth 1 https://github.com/ajgreyling/cursor-doctorWhat 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.00280 | $0.00280 |
| Opus 5 | $0.00140 | $0.00140 |
| Sonnet 5 | $0.00056 | $0.00056 |
| Haiku 4.5 | $0.00028 | $0.00028 |
Grade A, and why
lessons-learnt 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
Lessons Learnt
Matching and completeness
- Completeness checks are text-signal based; wording changes can flip a concept to
incompleteunexpectedly. - Pattern matching assigns one artifact per concept in first-match order; broad patterns can hide better matches.
Prescription generation
artifact-syncis intentionally always appended as the final todo; do not remove that behavior fromsrc/prescription.ts.- Health score is weighted (
found=1,incomplete=0.5); keep docs aligned with this model.
Scanner behavior
- Scanner intentionally ignores
node_modules,dist,build, and.gitto avoid noisy matches. - Frontmatter parsing is best-effort; invalid YAML should degrade gracefully, not fail the entire scan.
Operational discipline
- After adding docs/rules/skills, re-run
generateto validate detection behavior. - Keep tracked doctor artifacts in sync:
README.md,.cursor/rules/cursor-doctor.mdc,.cursor/rules/required-cursor-doctor-skill.mdc, and.cursor/skills/cursor-doctor/SKILL.md.
Completeness checklist
- sectioned by area
- actionable do/don't
- alwaysApply or referenced in workflow
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 · 33 lines · 280 tokens per session scan A 279aa578ec54
lessons-learnt is a cursor rule published in the GitHub repository ajgreyling/cursor-doctor (0 stars, last pushed 28d ago), licensed MIT. It adds 280 tokens to every session, about $0.0014 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
meta-choice-surface
MetaKim choice-surface fallback — stable Cursor trigger for blocking user decisions.
cursor
You are working on the checkout service. Preserve transaction integrity and auditability.
app_rules
This document outlines the essential rules and guidelines for developing with the MobileLauncher LT boilerplate. Follow these rules to maintain consistency, scalability, and code quality across the project.
archcore-files
Enforce MCP-only operations when working with .archcore/ files.
frontend-architecture
Vite + React SPA architecture - directory layout, providers, bundle splitting. Tailwind styling in tailwind.mdc.
moyu
当检测到过度工程模式时自动激活:修改用户未要求的代码、创建不必要的抽象层、 添加未要求的注释/文档/测试、引入不必要的依赖、重写整个文件而非最小编辑、 diff 超出请求范围。用户说"太多了"、"只改 X"、"简单点"时触发。 Activates on over-engineering: modifying unrequested code, unnecessary abstractions, unsolicited comments/docs/tests, unrequested dependencies, full file rewrites, scope-exceeding diffs. Triggers on "too…