From project-toolkit
Detects contradictions between documentation and code, ambiguous specs, and policy violations across codebases. Use for stale docs, conflicting specs, pre-release audits; outputs actionable report with resolution workflow.
npx claudepluginhub rjmurillo/ai-agents --plugin project-toolkitThis skill uses the workspace's default tool permissions.
Detect and resolve incoherence: contradictions between docs and code, ambiguous specifications, missing documentation, or policy violations.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Detect and resolve incoherence: contradictions between docs and code, ambiguous specifications, missing documentation, or policy violations.
| Trigger Phrase | Operation |
|---|---|
find contradictions in the docs | Detection phase (steps 1-13) |
audit docs vs code consistency | Detection phase with Dimension A focus |
check for stale documentation | Detection phase with Dimension D focus |
run incoherence detector | Full detection phase |
reconcile incoherence report | Reconciliation phase (steps 14-22) |
Use this skill when:
Use direct code review instead when:
| Avoid | Why | Instead |
|---|---|---|
| Skipping the report filename specification | Script requires output path upfront | Specify filename before starting detection |
| Running reconciliation without user edits | Nothing to apply, wasted steps | Wait for user to fill Resolution sections |
| Editing the report format manually | Breaks reconciliation parsing | Let the script manage report structure |
| Selecting all 11 dimensions | Excessive scope, diminishing returns | Let step 2 select the most relevant 3-5 |
| Ignoring low-severity issues | They accumulate into real drift | Triage all issues, defer explicitly if needed |
After detection:
After reconciliation:
Before starting: User must specify the report filename (e.g., "output to incoherence-report.md").
| Script | Purpose |
|---|---|
scripts/incoherence.py | 22-step detection and reconciliation workflow for doc-code contradictions |
# Detection phase (steps 1-13)
python3 scripts/incoherence.py --step-number 1 --total-steps 22 --thoughts "<context>"
# Reconciliation phase (steps 14-22, after user edits report)
python3 scripts/incoherence.py --step-number 14 --total-steps 22 --thoughts "Reconciling..."
Parent orchestration (Steps 1-3):
Exploration sub-agents (Steps 4-7): 4. Broad sweep across selected dimensions 5. Coverage check for gaps 6. Gap-fill for missed areas 7. Format findings
Parent synthesis (Steps 8-9): 8. Synthesize exploration results 9. Dispatch deep-dive sub-agents for confirmed issues
Deep-dive sub-agents (Steps 10-11): 10. Targeted exploration of each issue 11. Format detailed findings
Parent finalization (Steps 12-13): 12. Verdict analysis (severity, type classification) 13. Report generation to user-specified file
User edits the report, filling in Resolution sections for each issue.
Parent planning (Steps 14-17): 14. Parse edited report for user resolutions 15. Analyze resolution feasibility 16. Plan code changes 17. Dispatch apply sub-agents
Apply sub-agents (Steps 18-19): 18. Apply code changes per user resolutions 19. Format results
Parent completion (Steps 20-22): 20. Collect results (loop if more waves needed) 21. Update report with resolution status markers 22. Final reconciliation complete
Idempotent: Can be run multiple times on the same report.
Skip conditions (issue left unchanged):
Only action: Mark successfully applied resolutions as ✅ RESOLVED in report.
Step 9 generates issues with Resolution sections:
### Issue I1: [Title]
**Type**: Contradiction | Ambiguity | Gap | Policy Violation
**Severity**: critical | high | medium | low
#### Source A / Source B
[quotes and locations]
#### Suggestions
1. [Option A]
2. [Option B]
#### Resolution
<!-- USER: Write your decision below. Be specific. -->
<!-- /Resolution -->
After reconciliation, resolved issues get a Status section:
#### Resolution
<!-- USER: Write your decision below. Be specific. -->
Use the spec value (100MB).
<!-- /Resolution -->
#### Status
✅ RESOLVED — src/uploader.py:156: Changed MAX_FILE_SIZE to 100MB
| Cat | Name | Detects |
|---|---|---|
| A | Specification vs Behavior | Docs vs code |
| B | Interface Contract Integrity | Types/schemas vs runtime |
| C | Cross-Reference Consistency | Doc vs doc |
| D | Temporal Consistency | Stale references |
| E | Error Handling Consistency | Error docs vs implementation |
| F | Configuration & Environment | Config docs vs code |
| G | Ambiguity & Underspecification | Vague specs |
| H | Policy & Convention Compliance | ADRs/style guides violated |
| I | Completeness & Documentation Gaps | Missing docs |
| J | Compositional Consistency | Claims valid alone, impossible together |
| K | Implicit Contract Integrity | Names/messages that lie about behavior |