Detect quality drops in AI output and prompt re-anchoring. Auto-triggers after repeated corrections, context confusion, or when user says "something seems off", "you're not getting this".
Detect when human-AI collaboration quality drops and prompt re-anchoring to restore effective communication.
Based on Riedl & Weidmann 2025 research on Human-AI Synergy:
This skill detects when collaboration is degrading and prompts corrective action.
Auto-invoke when:
DO NOT invoke if:
Trigger: Same correction given 2+ times
Signal: "No, I said users plural, not user" (2nd time)
Issue: Not incorporating user feedback
Trigger: References to non-existent files, functions, or packages
Signal: "That file doesn't exist", "There's no such function"
Issue: Generating from incorrect mental model
Trigger: Mixing details from unrelated tasks
Signal: "That's from the other project", "Wrong feature"
Issue: Context window pollution or misattribution
Trigger: User correction not reflected in next output
Signal: Generates same pattern after being told not to
Issue: Not properly updating internal model
Trigger: Output increasingly diverges from original goal
Signal: "We're getting off track", "Not what I asked for"
Issue: Lost sight of user's actual objective
Trigger: 3+ consecutive iterations with same state hash (loop mode only)
Signal: nav-loop detects stagnation, triggers nav-diagnose
Issue: Stuck on same step, unable to progress
Analyze recent exchanges (last 10-15 messages):
Quality Indicators:
- [ ] Corrections given: {count}
- [ ] Same-topic corrections: {count}
- [ ] User frustration signals: {count}
- [ ] Hallucination reports: {count}
- [ ] "Not what I meant" phrases: {count}
Calculate severity:
severity = "critical" if same_topic_corrections >= 2 or hallucinations >= 1
severity = "high" if corrections >= 3 or frustration_signals >= 2
severity = "medium" if corrections >= 2 or goal_drift_detected
severity = "low" if corrections == 1 # Normal, don't trigger
Analyze correction patterns:
| Pattern | Likely Cause | Re-anchoring Focus |
|---|---|---|
| Same correction repeated | Not incorporating feedback | Explicitly acknowledge and confirm understanding |
| Increasing corrections | Drifting from user intent | Re-establish goals |
| Technical mismatches | Wrong assumptions | Clarify technical context |
| Frustration without specifics | Communication mismatch | Ask what's wrong |
Show quality check alert:
โ ๏ธ QUALITY CHECK
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Detected Issue: {ISSUE_TYPE}
Severity: {SEVERITY}
What I noticed:
- {OBSERVATION_1}
- {OBSERVATION_2}
Possible causes:
- {CAUSE_1}
- {CAUSE_2}
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Let me re-anchor our collaboration:
1. Your goal: {RECONSTRUCTED_GOAL}
2. Current state: {STATE_SUMMARY}
3. What you want: {CORRECTED_UNDERSTANDING}
Is this understanding correct? [Y/n]
Based on user confirmation:
If correct (Y):
โ
Re-anchored!
I'll proceed with this understanding:
- {KEY_POINT_1}
- {KEY_POINT_2}
Continuing with: {NEXT_ACTION}
If incorrect (n):
Help me understand better:
1. What is your actual goal?
2. What am I getting wrong?
3. What constraints should I know?
[Open-ended response welcome]
If nav-profile exists, save diagnostic:
{
"date": "{YYYY-MM-DD}",
"issue_type": "{ISSUE_TYPE}",
"severity": "{SEVERITY}",
"resolution": "re-anchored|user-corrected|escalated",
"learnings": ["{WHAT_TO_AVOID}"]
}
Based on severity and pattern:
For context overload:
๐ก Suggestion: Consider running nav-compact to clear context.
Current context usage is high, which can cause confusion.
For repeated corrections:
๐ก Suggestion: Let me save your preference to avoid this in future.
"Remember I always want {X}" - This will persist across sessions.
For communication mismatch:
๐ก Suggestion: Consider adjusting your profile preferences.
- Current verbosity: {VERBOSITY}
- Current confirmation: {CONFIRMATION}
Update with: "Remember I prefer {SUGGESTED_STYLE}"
Let me verify I understand your goal:
You want to: {GOAL_STATEMENT}
Not: {COMMON_MISUNDERSTANDING}
Key constraints:
- {CONSTRAINT_1}
- {CONSTRAINT_2}
Is this right?
Let me verify the technical context:
Framework: {FRAMEWORK}
Patterns: {PATTERNS}
Conventions: {CONVENTIONS}
What I should be using:
- {TOOL_1}: for {PURPOSE_1}
- {TOOL_2}: for {PURPOSE_2}
Corrections to my assumptions?
I may be mismatching your communication style:
You seem to prefer:
- {INFERRED_STYLE_1}
- {INFERRED_STYLE_2}
I've been:
- {MY_STYLE_1}
- {MY_STYLE_2}
Should I adjust my approach?
- "Perfect, exactly what I needed"
- "Yes, continue"
- "Good, now..."
- No corrections for 5+ exchanges
- User providing new requirements (not corrections)
- "No", "Wrong", "Not that"
- "I already said..."
- "Again, please..."
- "Sigh", "Ugh", explicit frustration
- "You're not understanding"
- Same correction twice
- "Actually, let's try..."
- "Can we also..."
- "What about..."
- Single correction with explanation
Exchange 1:
User: "Create endpoint for users"
Claude: Creates /user endpoint
User: "Should be /users (plural)"
Exchange 2:
User: "Now create endpoint for posts"
Claude: Creates /post endpoint
User: "Again, plural! /posts"
โ Trigger: Same correction (plural naming) given twice
โ Action: Re-anchor on REST conventions
โ Outcome: "I understand now - always use plural nouns for REST resources"
User working on: OAuth feature (Feature A)
Claude references: Stripe integration (Feature B from earlier)
User: "That's from the payment feature, not auth"
โ Trigger: Context confusion detected
โ Action: Re-anchor on current feature
โ Suggestion: Consider nav-compact to clear old context
User: "Ugh, still not right"
User: "This is frustrating"
โ Trigger: Frustration signals detected
โ Action: Pause and diagnose
โ Response: Open-ended question about what's wrong
Diagnostic is successful when:
Cannot detect:
Should not:
When diagnosing:
When re-anchoring:
This skill catches collaboration quality drops early, enabling quick recovery through Theory of Mind re-alignment ๐