What you exclude matters as much as what you include
01 The Concept
What you exclude from a response is as important as what you ask for. Negative prompting — explicitly stating what NOT to do — eliminates common failure modes before they happen.
Critical for: brand-safe copy, scoped code changes, technical accuracy, and keeping AI in scope.
02 Weak vs. Strong
EX 01LinkedIn post without AI clichés
Write a LinkedIn post announcing the launch of Vitae — a resume builder that shows analytics: who opened your resume, which sections they spent time on, which device they used.
DO:
- Open with a specific pain point real job seekers have (not a generic statement about job searching being hard)
- Name one concrete specific thing the product does in the first 3 sentences
- End with a question that invites genuine comments
DO NOT:
- Open with: "Excited to announce", "Thrilled to share", "Today is a big day"
- Use: excited, thrilled, proud, humbled, journey, game-changer, revolutionize, passionate, disruptive
- Write more than 150 words
- Use em-dashes decoratively
- End with "link in bio" or "check it out"
→ Why it works
DO NOT list prevents the most common LinkedIn clichés. DO list provides positive direction. Banned words are specific.
EX 02Scoped hotfix — don't touch anything else
There's a bug: when the JWT token has expired, this function panics instead of returning an error.
Fix ONLY the nil pointer dereference on the claims access. Do NOT:
- Refactor the function structure
- Change the function signature or return types
- Add new imports
- Rename variables or change error messages
- Improve anything unrelated to the immediate panic
Add one comment explaining why the nil check is needed.
```go
func ValidateToken(tokenStr string) (int, error) {
token, err := jwt.Parse(tokenStr, keyFunc)
if err != nil {
return 0, err
}
claims := token.Claims.(jwt.MapClaims)
userID := int(claims["user_id"].(float64))
return userID, nil
}
```
02Scope lock for code: 'fix only X — do NOT refactor anything else'
03Anti-patterns: 'do not start with a definition', 'do not end with a summary'
04Honesty guardrail: 'if uncertain, say so — do not fill gaps with plausible guesses'
05Lead with what you want, then constrain with what to avoid
04 Model-Specific Notes
Claude follows explicit exclusions very reliably. Particularly effective here because Claude's default toward 'helpfulness' can expand scope — negatives lock it down.
05 For Your Role
After writing a prompt, add: 'Do NOT [the thing that always annoys me in AI responses].' Common: 'don't add a disclaimer', 'don't use bullet points'.