Tip: working effectively with wizards
Extend BaseWizard, don't configure from scratch
Inherit from BaseWizard and override build_prompt_context() and process_step_result() instead of creating config-driven wizards from YAML. The built-in wizards like DebugWizard and RefactorWizard show this pattern consistently.
You get type safety, IDE support, and easier testing compared to string-based configuration. The tradeoff is less runtime flexibility — you can't modify wizard behavior without code changes.
Source files
src/attune/wizards/**
Tags: wizards, interactive