temper
Use when the workflow feels over-engineered, has premature optimizations, unnecessary abstraction layers, or complexity beyond actual requirements.
What this skill does
## MANDATORY PREPARATION Invoke /agent-workflow — it contains workflow principles, anti-patterns, and the **Context Gathering Protocol**. Follow the protocol before proceeding — if no workflow context exists yet, you MUST run /teach-maestro first. Consult the agent-architecture reference in the agent-workflow skill for topology patterns and when multi-agent is justified. --- Pull back from over-engineering. The most common mistake isn't building too little — it's building too much. ### Over-Engineering Detection **Signs you've over-engineered:** - Multi-agent for a single-agent problem - Premature optimization before you have performance data - Abstraction layers with one implementation - Configuration for things that never change - Evaluation loops on non-critical outputs - Framework before features ### The Complexity Test For each component: 1. **Is this solving a problem we actually have?** (not "might have") 2. **Is this the simplest solution that works?** 3. **Would removing this break anything?** (if not, remove it) 4. **Can someone new understand this in 5 minutes?** (if not, simplify) ### Tempering Strategies **Collapse Unnecessary Agents** ```text OVER-ENGINEERED: User → Classifier → Router → Specialist → Formatter → Checker (6 components) TEMPERED: User → Single Agent with good prompt (1 component, same quality) ``` **Remove Premature Abstraction** ```text OVER-ENGINEERED: class AgentOrchestrator with 5 strategy interfaces TEMPERED: async function runWorkflow(input) — direct, readable ``` **Simplify Configuration** ```text OVER-ENGINEERED: config.yaml (200 lines, 47 params, 3 inheritance levels) TEMPERED: config.yaml (20 lines, essential params only, sensible defaults) ``` ### What NOT to Temper - Error handling — essential, not overhead - Logging — saves you when things go wrong - Input validation — prevents cascading failures - Core guardrails — safety is non-negotiable - The golden test set — how you know it still works ### Recommended Next Step After tempering, run `/evaluate` to confirm quality is preserved, or `/diagnose` for a full health check. **NEVER**: - Temper without measuring output quality before and after - Remove error handling in the name of simplicity - Simplify below the level of correctness - Remove features users actively rely on
Related in enhancement
amplify
IncludedUse when the workflow works but needs to handle more complex cases or produce higher-quality output through better tools, context, prompts, or models.
enrich
IncludedUse when the agent needs access to information beyond its training data — knowledge sources, RAG pipelines, or grounding data.
guard
IncludedUse when deploying to production, handling sensitive data, or the workflow needs safety constraints, input validation, and security boundaries.
iterate
IncludedUse when the workflow needs to self-correct, improve over time, or establish feedback loops and evaluation cycles.
turbocharge
IncludedUse when the user wants to push past conventional workflow limits with advanced performance techniques like parallel orchestration, streaming pipelines, or adaptive routing.
accelerate
IncludedUse when the workflow is too slow, too expensive, or both and needs latency, cost, or token usage optimization.