Systematic Violation of KISS Principle Causing Cost Escalation
Issue Summary
Claude Code consistently violates the KISS (Keep It Simple, Stupid) principle despite explicit project documentation (CLAUDE.md) mandating simple solutions. This results in expensive debugging cycles that waste user tokens and time.
Specific Example: NPU Detection Fix
Problem: Voice service needed simple ARM64 NPU detection.
Claude's Approach: 40+ lines of complex PowerShell subprocess calls with pathlib imports, error logging, and JSON parsing
Actual Solution: 3 lines of platform.machine() == 'arm64' check
Cost Impact:
- 15+ prompts required to reach simple solution
- Thousands of wasted tokens
- 20+ minutes debugging time
- 4 unnecessary script version iterations (2.4.0 → 2.7.0)
Pattern Recognition
User reports this is "one of about 5 occurrences today alone" - indicating systematic behavior, not isolated incident.
Root Cause
Claude Code ignores established project principles even when explicitly documented:
- CLAUDE.md clearly states: "Keep scripts simple, direct, and easy to follow"
- "Prioritize simplicity over cleverness (KISS principle)"
- "avoid over-engineering"
Business Impact
- Token waste from overcomplicated solutions requiring multiple iterations
- Time inefficiency forcing users to guide Claude toward simple solutions
- Trust erosion when AI ignores explicit user documentation and preferences
Recommendation
Claude Code needs behavioral modification to:
- Default to simplest possible solution first
- Respect user-defined project principles unconditionally
- Ask before implementing complex solutions when simple ones exist
This systematic overengineering violates user expectations and project standards, creating unnecessary costs.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗