From ade
Use when the user wants to plan any work — building an app, adding a feature, fixing a bug, solving a problem, refactoring, or any task that benefits from thinking before doing. Triggers on "plan", "build me", "I want to", "fix this", "add a", "we need to", "how should we", or when the user describes something they want done. This skill guides interactive discovery, research, and planning scaled to the scope of the work — from a quick task plan to a full product spec.
npx claudepluginhub alexsds/ade-workflow --plugin adeThis skill uses the workspace's default tool permissions.
Planning before building — scaled to the scope of the work. Anthropic's research found that a single error in technical planning cascades through every level of implementation. The planner stays at the deliverable level (what, not how) and lets the Generator figure out implementation.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
Planning before building — scaled to the scope of the work. Anthropic's research found that a single error in technical planning cascades through every level of implementation. The planner stays at the deliverable level (what, not how) and lets the Generator figure out implementation.
The planner is interactive. It researches context, asks targeted questions with suggested answers, and writes a plan whose depth matches the scope of the work.
Read the user's request and assess scope. This determines how deep the planning process goes.
Large — Full application, multi-feature project, new product
Medium — New feature, significant change, integration
Small — Bug fix, task, refactor, minor change
The scope determines how many questions to ask, how deep to research, and how detailed the plan is. Don't run a full product planning cycle for a bug fix. Don't write a one-liner plan for a new app.
Before asking any questions:
.claude/ade.local.md if it exists — note commit style.ade/ exists. If not, run ${CLAUDE_PLUGIN_ROOT}/scripts/init-project.shcommits_style: jira, ask the user for the Jira ticket number.ade/docs/plans/ for prior plans — understand what has been built before.ade/docs/archive/ for completed plans — understand project historyResearch what's relevant before asking questions. Scale depth to scope.
Existing project (has source code):
Greenfield project (no code yet):
Always:
.ade/docs/ to maintain continuityPresent your findings. Share a brief summary before moving to questions. For small scope, this might be one sentence ("I found the bug — it's in auth.ts:42, the token expiry check is off by one"). For large scope, it might be a paragraph with research findings.
Ask questions one at a time with suggested answers. How many depends on scope.
Question format — always offer multiple choice with an open option:
What's most important for this feature?
a) Speed — ship fast, polish later
b) Quality — get it right the first time, take longer
c) Flexibility — make it easy to change and extend
d) Something else — tell me more
For large scope (3-5+ questions):
For medium scope (1-3 questions):
For small scope (0-1 questions):
Rules:
If research or answers reveal a genuine fork — two or more meaningfully different directions — propose 2-3 approaches before writing the plan. This mostly applies to medium and large scope.
When to propose:
When NOT to propose:
Format:
Based on what I found, I see two directions:
**A) [Direction name]** — [2-3 sentence description]. Prioritizes [X] at the cost of [Y].
**B) [Direction name]** — [2-3 sentence description]. Prioritizes [Y] at the cost of [X].
I'd recommend A because [reasoning tied to user's stated priorities].
Which direction, or a mix?
Write the plan to .ade/docs/plans/plan-YYYY-MM-DD.md. Structure scales with scope.
---
project: [Name or short description]
date: [YYYY-MM-DD]
scope: [large | medium | small]
ticket: [TICKET-ID] # Only if commits_style is jira
status: draft
---
Goal: 2-3 sentences describing what this is and who it serves.
Features: Organized by phase (Phase 1, Phase 2, etc.). Phase 1 is the core experience. Later phases add depth.
User Stories: Per feature, "As a [user], I want to [action] so that [benefit]" format. 2-4 per feature.
Success Criteria: What "done" looks like. Measurable and specific.
Goal: 1-2 sentences describing what this feature does and why.
Deliverables: List of concrete things to build. No phases needed unless the feature is large enough to split.
User Stories: 2-4 user stories covering the key interactions.
Acceptance Criteria: Specific conditions that must be true when this is done.
Goal: One sentence — what needs to happen and why.
What to change: Brief description of the work. For bugs: what's broken, where, and what "fixed" looks like. For tasks: what to do.
Done when: 1-3 clear acceptance criteria.
See references/plan-examples.md for examples at each scope.
DO:
DO NOT:
After writing the plan, tell the user:
"Plan written to
.ade/docs/plans/plan-YYYY-MM-DD.md. Please review and let me know if you'd like changes. Once approved, use/ade:executeto start implementation."
Do NOT proceed to building until the user explicitly approves.
Once the user approves, update the plan status to approved.
ADE reads project configuration from .claude/ade.local.md:
---
commits_style: conventional
---
conventional (default): Generator uses conventional commits like feat(scope): descriptionjira: Planner asks for a ticket number at plan creation, Generator prefixes all commits with ticket IDOverplanning small work: A bug fix doesn't need phases, user stories, and success criteria. Goal + what to change + done when. Keep it proportional.
Underplanning large work: A full app with 2-3 bullet points isn't a plan. Push for ambitious scope with phased features and user stories.
Sneaking in implementation details: "using React components" or "REST API with Express" are implementation details. Rephrase as deliverables: "a responsive web interface," "a server API for data access."
Skipping user stories (medium/large scope): Every feature needs user stories. Without them, the Generator has no clear target and the Evaluator has nothing to test against.
Not researching first: Asking questions without context leads to generic plans. Research the codebase or domain first so your questions are specific and informed.
Asking too many questions: If the user gave a clear, detailed brief, don't interrogate. Confirm understanding and write the plan.
Once approved, use /ade:execute to launch the Generator + Evaluator agent team. The Generator implements deliverables one by one, the Evaluator tests and scores each against rubrics. They iterate via SendMessage until all criteria pass.
Use /ade:status at any time to check progress. Use /ade:done to archive the plan when complete.
references/plan-examples.md — Example plans at each scope level (large, medium, small)