Use when Code implementation and refactoring, architecturing or designing systems, process and workflow improvements, error handling and validation. Provide tehniquest to avoid over-engineering and apply iterative improvements.
View on GitHubNeoLabHQ/context-engineering-kit
kaizen
February 2, 2026
Select agents to install to:
npx add-skill https://github.com/NeoLabHQ/context-engineering-kit/blob/main/plugins/kaizen/skills/kaizen/SKILL.md -a claude-code --skill kaizenInstallation paths:
.claude/skills/kaizen/# Kaizen: Continuous Improvement
Apply continuous improvement mindset - suggest small iterative improvements, error-proof designs, follow established patterns, avoid over-engineering; automatically applied to guide quality and simplicity
## Overview
Small improvements, continuously. Error-proof by design. Follow what works. Build only what's needed.
**Core principle:** Many small improvements beat one big change. Prevent errors at design time, not with fixes.
## When to Use
**Always applied for:**
- Code implementation and refactoring
- Architecture and design decisions
- Process and workflow improvements
- Error handling and validation
**Philosophy:** Quality through incremental progress and prevention, not perfection through massive effort.
## The Four Pillars
### 1. Continuous Improvement (Kaizen)
Small, frequent improvements compound into major gains.
#### Principles
**Incremental over revolutionary:**
- Make smallest viable change that improves quality
- One improvement at a time
- Verify each change before next
- Build momentum through small wins
**Always leave code better:**
- Fix small issues as you encounter them
- Refactor while you work (within scope)
- Update outdated comments
- Remove dead code when you see it
**Iterative refinement:**
- First version: make it work
- Second pass: make it clear
- Third pass: make it efficient
- Don't try all three at once
<Good>
```typescript
// Iteration 1: Make it work
const calculateTotal = (items: Item[]) => {
let total = 0;
for (let i = 0; i < items.length; i++) {
total += items[i].price * items[i].quantity;
}
return total;
};
// Iteration 2: Make it clear (refactor)
const calculateTotal = (items: Item[]): number => {
return items.reduce((total, item) => {
return total + (item.price * item.quantity);
}, 0);
};
// Iteration 3: Make it robust (add validation)
const calculateTotal = (items: Item[]): number => {
if (!items?.length) return 0;
return items.reduce((total, ite