What is “Slop”?
“Slop” refers to low-quality LLM output patterns:
- Excessive verbosity - 10 paragraphs when 2 sentences suffice
- Unnecessary preambles - “Great question! I’d be happy to help…”
- Filler content - Restating the question, obvious observations
- Over-hedging - “It depends”, “There are many factors…”
- Emoji abuse - Unprompted decorative emojis
- Repetition - Saying the same thing multiple ways
Why It Matters
Slop wastes tokens, time, and attention:
Sloppy response: 500 tokens, 2 useful sentences
Clean response: 50 tokens, same 2 sentences
Cost difference: 10x
Readability: Much worse
Actionability: Buried in noise
Constraint Techniques
Direct Instructions
Add anti-slop rules to prompts:
## Output Rules
- No preambles or pleasantries
- No restating the question
- No "I'd be happy to help" or similar
- No emojis unless explicitly requested
- Max 3-5 sentences unless complexity requires more
- Lead with the answer, not context
Add anti-slop rules to your AI tool’s config file:
Claude Code
Gemini CLI
OpenCode
Cursor
GitHub Copilot
Windsurf
OpenAI API
File: CLAUDE.md (project root or ~/.claude/)## Communication Preferences
- Be direct and concise (no unnecessary verbosity)
- Keep responses 25-40 lines max
- Only use emojis if explicitly requested
- No filler phrases ("Great question!", "I'd be happy to...")
- Lead with conclusions, support with evidence
File: GEMINI.md (project root or ~/.gemini/)## Communication Preferences
- Be direct and concise (no unnecessary verbosity)
- Keep responses 25-40 lines max
- Only use emojis if explicitly requested
- No filler phrases ("Great question!", "I'd be happy to...")
- Lead with conclusions, support with evidence
File: AGENTS.md (project root or ~/.opencode/)## Communication Preferences
- Be direct and concise (no unnecessary verbosity)
- Keep responses 25-40 lines max
- Only use emojis if explicitly requested
- No filler phrases ("Great question!", "I'd be happy to...")
- Lead with conclusions, support with evidence
File: .cursorrules (project root)## Output Rules
- Be direct and concise (no unnecessary verbosity)
- Keep responses 25-40 lines max
- Only use emojis if explicitly requested
- No filler phrases ("Great question!", "I'd be happy to...")
- Lead with conclusions, support with evidence
File: .github/copilot-instructions.md## Communication Style
- Be direct and concise (no unnecessary verbosity)
- Keep responses 25-40 lines max
- Only use emojis if explicitly requested
- No filler phrases ("Great question!", "I'd be happy to...")
- Lead with conclusions, support with evidence
File: .windsurfrules (project root)## Output Guidelines
- Be direct and concise (no unnecessary verbosity)
- Keep responses 25-40 lines max
- Only use emojis if explicitly requested
- No filler phrases ("Great question!", "I'd be happy to...")
- Lead with conclusions, support with evidence
System prompt:Output rules:
- Be direct and concise (no unnecessary verbosity)
- Keep responses 25-40 lines max
- Only use emojis if explicitly requested
- No filler phrases ("Great question!", "I'd be happy to...")
- Lead with conclusions, support with evidence
Structured Output Requests
Force structure to prevent rambling:
Respond in this exact format:
- **Answer**: [1-2 sentences]
- **Reason**: [1 sentence]
- **Next step**: [1 action item]
Anti-Patterns to Block
The Preamble Problem
# Bad
"Great question! I'd be happy to help you with that.
Let me think about this carefully. There are several
aspects to consider here..."
# Good
"The issue is X. Fix it by doing Y."
The Summary Trap
# Bad
"In summary, to summarize what we discussed,
the main points are: [repeats everything]"
# Good
[Just answer directly, no meta-commentary]
The Hedge Spiral
# Bad
"It depends on various factors. There are many
considerations. It's hard to say definitively.
Generally speaking, in most cases..."
# Good
"For your case: Do X. Exception: if Y, do Z instead."
Measurement
Token Efficiency Ratio
Efficiency = (Useful content tokens) / (Total tokens)
Target: > 80% efficiency
Red flag: < 50% efficiency
Quality Signals
| Good Signs | Bad Signs |
|---|
| Answers first | Preambles first |
| Specific actions | Vague suggestions |
| Concrete examples | Abstract concepts |
| Direct language | Hedged language |
| Appropriate length | Always max length |
Implementation
Agent Prompt Template
# Agent: [Name]
## Anti-Slop Rules (CRITICAL)
You MUST follow these output rules:
1. Never start with "I", "Great", "Sure", or similar
2. Never use emojis unless in user-facing content
3. Never restate what you were asked
4. Never summarize at the end
5. Max 5 sentences unless task requires more
6. Lead with the answer or action
## Task
[Task description]
Review Checklist
Before accepting agent output:
Calibration
When Verbosity is Appropriate
Slop constraints don’t mean terse at all costs:
- Teaching contexts - Explanations need detail
- Critical decisions - Nuance matters
- User-facing content - Personality is valuable
- Complex topics - Brevity can mislead
Adjusting by Context
# For internal agent tasks
Be extremely concise. Output only what's needed.
# For user explanations
Be clear and helpful. Use examples. Explain reasoning.
# For documentation
Be thorough but organized. Use headers and structure.
Common Fixes
Fix Over-Qualification
# Before
"Based on my understanding, I believe the issue might
potentially be related to..."
# After
"The issue is [X]."
Fix Unnecessary Structure
# Before
"## Overview
Let me provide an overview...
## Analysis
Here's my analysis...
## Conclusion
In conclusion..."
# After
"The problem is X. Solution: Y."
Fix Explanation Creep
# Before
"To understand this, first we need to understand A,
which requires understanding B, which means C..."
# After
"Do X. (Background: A affects B.)"
Best Practices
- Add anti-slop rules to all agent prompts
- Review output token efficiency regularly
- Use structured output formats
- Train on examples of ideal responses
- Measure and track verbosity metrics
Balance is key - Too aggressive anti-slop creates curt, unhelpful responses. Calibrate to context.