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/k-kolomeitsev/data-structure-protocol/dsp-when-not-to-updategit clone --depth 1 https://github.com/k-kolomeitsev/data-structure-protocolWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/k-kolomeitsev/data-structure-protocol/dsp-when-not-to-update)<a href="https://agentmods.dev/rules/k-kolomeitsev/data-structure-protocol/dsp-when-not-to-update"><img src="https://agentmods.dev/badge/rules/k-kolomeitsev/data-structure-protocol/dsp-when-not-to-update.svg" alt="Measured on agentmods" height="20"></a>What 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.1 | $0.00284 | $0.00284 |
| Opus 5 | $0.00142 | $0.00142 |
| Sonnet 5 | $0.00057 | $0.00057 |
| Haiku 4.5 | $0.00028 | $0.00028 |
Grade A, and why
dsp-when-not-to-update 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 6d ago.
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
DSP — When NOT to Update
Not every code change requires a DSP update. Skip DSP operations for internal-only changes that don't affect the project's structural graph.
Do NOT Update DSP For
- Formatting changes — whitespace, indentation, line breaks, prettier/eslint fixes
- Comment edits — adding, removing, or rewriting comments and documentation strings
- Private function body changes — refactoring internals without changing the function's signature or purpose
- Dependency version bumps — updating package.json, requirements.txt, Cargo.toml versions
- Config file tweaks — .env, .gitignore, tsconfig.json, eslint config, CI pipeline YAML
- Test internals — changing test assertions, adding test cases (unless the test architecture itself changes)
- Logging/debugging — adding or removing console.log, print statements, debug breakpoints
- Performance optimizations — internal algorithm changes that don't alter the module's interface or purpose
DO Update DSP When
- Creating or deleting source files
- Renaming or moving files
- Adding or removing module dependencies (imports)
- Changing a module's public API (exports, shared interfaces)
- Changing a module's core purpose or responsibility
- Splitting one module into multiple or merging modules
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.
- 6d ago First seen · 30 lines · 284 tokens per session scan A dc0b991517e9
dsp-when-not-to-update is a cursor rule published in the GitHub repository k-kolomeitsev/data-structure-protocol (65 stars, last pushed 26d ago), licensed Apache-2.0. It adds 284 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-30.
Other cursor rules, from other repositories
language-agnostic-patterns
Language-agnostic programming patterns: SOLID, design patterns, clean code, and architecture. Load when refactoring, designing abstractions, or reviewing structure — not for everyday syntax.
cursor-tools-mastery
Cursor 3.7 runtime guide: choose the right tool, canvases, Design Mode, /worktree, /best-of-n, Await, and parallel execution where safe.
cursor-agent-orchestration
Cursor 3.7 orchestration guide: when to plan, when to delegate, nested subagents, multi-environment handoffs, /best-of-n, and Await for long-running branches.
fable5-reasoning
Fable 5 reasoning protocols: task interpretation, risk-first decomposition, approach selection, interleaved thinking, hypothesis ledgers, premortems, calibration, and the stuck-strategy ladder. Load for complex, ambiguous, or long-horizon tasks, for debugging strategy, or whenever progress stalls.
cursor-mcp-optimization
Cursor 3.7 MCP optimization: browser Design Mode, canvases, Figma, Cloudflare tools, MCP Apps structured content, and direct action patterns.
minimax-mcp-tools
MCP and web-tool guidance: current-doc retrieval, direct-tool preference, MCP Apps structured content, and version-aware external lookups.