Help us improve
Share bugs, ideas, or general feedback.
From exarchos
Collaborative feature and architecture design exploration. Presents 2-3 distinct approaches with trade-offs, anchored to architectural constraints. Use when problems have multiple valid solutions needing evaluation.
npx claudepluginhub lvlup-sw/exarchosHow this skill is triggered — by the user, by Claude, or both
Slash command
/exarchos:skills-opencode-brainstormingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Collaborative design exploration for new features, architecture decisions, and complex problem-solving.
Collaborative feature and architecture design exploration. Presents 2-3 distinct approaches with trade-offs, anchored to architectural constraints. Use when problems have multiple valid solutions needing evaluation.
Transforms vague ideas into clear, validated designs via structured dialogue before implementing features, architecture changes, or behavior modifications.
Guides collaborative brainstorming to refine fuzzy requirements, explore implementation alternatives, and form designs before coding.
Share bugs, ideas, or general feedback.
Collaborative design exploration for new features, architecture decisions, and complex problem-solving.
Activate this skill when:
/ideate commandFor a complete worked example, see references/worked-example.md.
Goal: Surface the architectural invariants relevant to the proposal before the clarifying questions, so the design is anchored to load-bearing constraints from the first turn.
Load the core invariants catalog at .exarchos/invariants.md (entries marked cost-of-load: always-load) and surface a Constraints section naming the relevant invariants — e.g. a CLI / agent-first surface proposal anchors on INV-5a (input ergonomics) and INV-5c (Aspire verbs). The full selection rules — always-load baseline vs reference-only on-demand vs archivable not-surfaced, the proposal-shape → anchor-invariant table, the emit format, and the invariants.devCatalog gating — are the single shared source of truth for the design-time Constraints step used by /ideate, /refactor, and /debug. See @skills/brainstorming/references/constraint-anchoring.md.
Emit the Constraints section (per that reference) before Phase 1 so the clarifying questions can probe the proposal against the load-bearing invariants instead of re-discovering them mid-design.
Goal: Deeply understand the problem before proposing solutions.
Rules:
Question Types:
Goal: Present 2-3 distinct approaches with trade-offs.
Use the approach format from references/design-template.md. Present genuinely different approaches with honest trade-offs. Recommend one option with rationale.
Goal: Document the chosen approach in detail with numbered requirements.
Document the chosen approach using the structure in references/design-template.md. Sections of 200-300 words max. Use diagrams for complex flows.
Requirements format (MANDATORY):
DR-1, DR-2, ..., DR-N**Acceptance criteria:** block with concrete, testable criteriaSave Location: docs/designs/YYYY-MM-DD-<feature>.md
Design iterations: max 3. If Phase 2 (Exploration) cycles through 3 rounds of presenting approaches without the user converging on a choice, pause and summarize the trade-offs for the user to make a final decision.
The user can override: /ideate --max-iterations 5
| Don't | Do Instead |
|---|---|
| Jump to solution immediately | Ask clarifying questions first |
| Present only one option | Always show 2-3 alternatives |
| Hide drawbacks of preferred option | Be transparent about trade-offs |
| Write walls of text | Use 200-300 word sections max |
| Ignore existing patterns | Reference codebase conventions |
| Skip documentation | Save design to docs/designs/ |
This skill manages workflow state for context persistence.
Initialize workflow state using mcp__exarchos__exarchos_workflow with action: "init", workflowType: "feature", and the featureId.
This creates a state file tracked by the MCP server.
action: "update", featureId: "<id>", updates: { "artifacts": { "design": "<path>" } }, phase: "plan"
This skill is the entry point for the feature workflow (workflowType: "feature"). The full lifecycle is:
ideate → plan → plan-review → delegate ⇄ review → synthesize → completed
For the full transition table, consult @skills/workflow-state/references/phase-transitions.md.
Use exarchos_workflow({ action: "describe", actions: ["update", "init"] }) for
parameter schemas and exarchos_workflow({ action: "describe", playbook: "feature" })
for phase transitions, guards, and playbook guidance.
Run the ideation artifact verification:
mcp__exarchos__exarchos_orchestrate({
action: "check_design_completeness",
featureId: "<featureId>",
designPath: "docs/designs/YYYY-MM-DD-<feature>.md"
})
On passed: true: All completion criteria met — proceed to gate check.
On passed: false: Missing artifacts — review output and complete before continuing. If the check is advisory (advisory: true), emit a warning but do not block auto-chain.
After artifact verification passes, run the design completeness gate check. This is the D1 (spec fidelity) lightweight adversarial check at the ideate → plan boundary.
mcp__exarchos__exarchos_orchestrate({
action: "check_design_completeness",
featureId: "<id>",
designPath: "<path>"
})
The handler returns a structured result: { passed, advisory, findings[], checkCount, passCount, failCount }.
passed=true: Design complete — all requirements have acceptance criteria and error coverage.passed=false, advisory=true: Findings detected. These are advisory — they do NOT block the auto-chain to /plan. Present result.data.findings to the user alongside the transition message.Gate events (gate.executed) are emitted automatically by the handler — no manual event emission is needed.
After brainstorming completes, auto-continue to planning (no user confirmation):
Before invoking /plan:
artifacts.design exists in workflow statetest -f "$DESIGN_PATH"mcp__exarchos__exarchos_orchestrate({ action: "check_design_completeness", featureId: "<id>", designPath: "<path>" }) (advisory — record findings but don't block)Update state: action: "update", featureId: "<id>", updates: { "artifacts": { "design": "<path>" } }, phase: "plan"
If result.data.passed === false and result.data.advisory === true: Output result.data.findings summary, then: "Advisory findings noted. Auto-continuing to implementation planning..."
If result.data.passed === true: Output: "Design complete. Auto-continuing to implementation planning..."
Invoke immediately:
[Invoke the exarchos:plan skill with args: <design-path>]
This is NOT a human checkpoint. The human checkpoint occurs at plan-review (plan approval) and synthesize (merge confirmation).
Workflow continues: /ideate -> /plan -> plan-review -> [HUMAN CHECKPOINT] -> /delegate -> /review -> /synthesize -> [HUMAN CHECKPOINT]
When Exarchos MCP tools are available:
exarchos_workflow action: "init" — do NOT manually append workflow.started