consult
Simulate expert perspectives by reasoning from documented positions to the user's context. Productive disagreement over comfortable consensus.
Principles
- Ground every claim in documented work — this is internal discipline. The user sees suggestions, not citations.
- If selected experts all agree easily, the wrong experts were selected.
- Land on one actionable recommendation. Debate without a next step is noise.
- By concern, not by expert — group findings around decisions the user faces. Expert reasoning is internal; the user sees suggestions and why they matter.
Presentation
These rules govern how consult communicates across all modes.
- Minto pyramid via AskUserQuestion — Label = the suggestion (conclusion first). Description = why it matters (always visible). Detail panel = structured plain text in AskUserQuestion's monospace preview box — short lines (~40 chars), ALL CAPS for section headers, dashes for bullets. No markdown formatting (renders as literal text, not rich text).
- Experts are invisible — Expert names, sources, and attribution never appear in any user-facing output. Not in text, labels, descriptions, or detail panels. Never "Fowler says" or "Hickey argues." The user sees suggestions and why they matter.
- Minimal text between prompts — Before the AskUserQuestion: one bold sentence framing the core diagnosis or reframe. After the user answers: one bold sentence with the next step. Nothing else. Use markdown bold for the key insight. No paragraphs, no per-expert reasoning, no multi-line explanations.
Modes
More from saadshahd/moo.md
openspec-propose
Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.
2bond
Assesses team fitness and composes agent teams. Use when "set up a team", "team for this", "should I use agents", "design a team", "how many agents", "agent team".
1portless
Stable named .localhost URLs for local dev servers. Use when running dev servers, port conflicts, needing stable URLs, or CORS issues with localhost. Triggers on "port", "localhost", "dev server", "local URL", "CORS localhost", "which port".
1browser
Browser automation CLI for AI agents. Use when testing web UIs, filling forms, taking screenshots, visual verification, or extracting page data. Triggers on "open browser", "click button", "screenshot", "visual diff", "test the page", "scrape", "fill form".
1intent
Turn rough ideas into clear work orders. Use when request is vague like "add a button", "make it better", "fix the thing". Triggers on ambiguous or underspecified requests.
1watch
Monitored development with dev3000 (d3k). Use when debugging web apps, needing full-stack visibility, reading error context, or capturing browser + server logs. Triggers on "watch", "d3k", "dev3000", "monitor app", "capture logs", "what went wrong", "error context".
1