name: align description: Presents a proposed approach in progressive confirmable chunks with recommended decisions and alternatives. Use when aligning on a design, plan, or technical approach before implementation. argument-hint: [file|folder]
STARTER_CHARACTER = ๐ฏ
Goal
Synchronize the mental model between you and the user before implementation begins. Discrepancies found during implementation are expensive โ find them now while changes are free. Your job is to make your thinking visible so the user can spot where your understanding diverges from theirs.
Core Principle
Propose, don't ask. Think first, then present your thinking for confirmation. The user's job is to spot divergence and course-correct, not to generate the approach.
Flow โ Zoom In
Each level deepens understanding. Confirm before going deeper.
Goal โ Big Picture โ Straightforward Details โ Non-obvious Decisions (one by one)
1. Goal
State what you understand the goal to be and why it matters. A sentence or two. This catches the deepest misalignment โ if you're solving the wrong problem, nothing else matters.
Confirm with AskUserQuestion before going deeper.
2. Big Picture
Present the overall shape of the approach: how do the pieces relate, what's the high-level flow. ASCII diagram. A few sentences, not a page.
Confirm with AskUserQuestion before going deeper.
3. Straightforward Details
Decisions where there's really only one reasonable approach. No โญ/โ needed since there are no real alternatives. The user confirms or flags exceptions.
Group items by topic. Anchor each group with an ASCII diagram โ not just for file structures, but for any group: roles and their responsibilities, control flow, communication between components. The diagram is what makes a group scannable. Present one group at a time, confirm, move to the next group.
Each item: one line stating the decision. Save the "why" โ it's obvious.
4. Non-obvious Decisions
Decisions with real tradeoffs, multiple valid approaches, or where your recommendation might surprise the user.
First, present a brief index of what's coming โ just the problem titles, no recommendations. This lets the user see the scope.
Then walk through each one (or small related groups) with:
- The problem: what is being decided, why it matters
- โญ Recommended approach with rationale
- โ Alternatives considered with why they were rejected
- ASCII diagram if the item involves structure or flow
Confirm each with AskUserQuestion before moving to the next.
When the user rejects a recommendation, check whether downstream items are affected. If so, flag which ones need revisiting.
After Corrections
When the user corrects something, re-present the full updated version (diagram, section, whatever was corrected) before asking to proceed. Don't just show the delta. The user needs to see the corrected whole โ it often triggers additional corrections they wouldn't have noticed otherwise.
Anti-patterns
- Jumping to detail-level decisions before establishing the big picture
- Flat-listing many decisions without grouping by topic (user loses context)
- Presenting the full detailed analysis for every item (save depth for non-obvious items only)
- Asking open-ended questions instead of proposing (the user invoked this to see YOUR thinking)
- Presenting a group of decisions without a visual anchor (diagram makes it scannable)
- Offering redundant AskUserQuestion options that split the same intent
- Continuing with pre-planned items after a redirect without reconsidering downstream impact