# content-tautological Detect tautological instructions that the model already follows by default | | | |---|---| | **Severity** | info (auto) | | **Autofix** | - | | **Since** | v0.7.0 | | **Category** | [Content Intelligence](content-intelligence.md) | ## Why Instructions that restate a model's default behavior ("write clean code", "be helpful", "follow best practices") add tokens without changing behavior. Every instruction in a context file competes for the model's attention; research on instruction-following shows compliance degrades as the number of simultaneous instructions grows. Tautological lines crowd out the instructions that actually encode project-specific knowledge. ## Examples **Bad:** ```markdown Write clean, maintainable code. Always be careful when making changes. Follow software engineering best practices. ``` **Good:** ```markdown Match the existing error-handling style: return `Result` types, never raise exceptions across crate boundaries. ``` ## How to fix Delete the line, or replace it with the project-specific rule you actually meant. Ask: "would any competent model ever do the opposite of this on purpose?" If not, the instruction is a tautology. A coding agent can rewrite or remove flagged lines. ## Configuration ```yaml rules: content-tautological: enabled: auto # true | false | auto severity: info ``` ## Research Basis **Detects instructions the model already follows by default** ("write clean code", "follow best practices", "be thorough"). These instructions consume context tokens without adding signal. Anthropic's context engineering guide warns: *"Be thoughtful and keep your context informative, yet tight."* Every tautological instruction dilutes the model's attention across tokens that carry zero new information. Levy et al. demonstrated that reasoning performance degrades at ~3,000 prompt tokens — every wasted token brings you closer to that cliff. The Claude Code best practices documentation is explicit: *"Ask yourself: 'If I remove this line, will Claude make mistakes?' If the answer is no, cut it. Every line must earn its place."* **References:** - Levy, Jacoby & Goldberg, [Same Task, More Tokens](https://arxiv.org/abs/2402.14848) (arXiv:2402.14848, ACL 2024) — Reasoning degrades at ~3,000 prompt tokens - [Anthropic: Effective Context Engineering for AI Agents](https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents) (2025) — "Keep your context informative, yet tight" - [Claude Code Best Practices](https://docs.anthropic.com/en/docs/claude-code/best-practices) — "Every line must earn its place" *Run `skillsaw explain content-tautological` to see this documentation and the rule's effective configuration in your terminal.*