flow-designer
Design features through brainstorming and make architectural decisions. Use when user wants to brainstorm, design approach, make architecture choices, or update PLAN.md.
What this skill does
# Flow Designer Help users design features through structured brainstorming sessions and make architectural decisions that shape the project. ## When to Use This Skill Activate when the user wants to design or brainstorm: - "Let's brainstorm this" - "Design the approach" - "How should we architect this?" - "What's the best way to implement this?" - "Should we use [technology]?" - "Update architecture documentation" - "Add a DO/DON'T rule" ## Design Philosophy **Flow's Core Principle**: Design before implementation. Use structured brainstorming to explore options, make decisions, and document rationale before writing code. **Brainstorming Structure**: - **Subjects**: Questions or decisions to resolve - **Resolution Types**: How each subject gets resolved (A/B/C/D) - **Outcomes**: Pre-tasks (Type A), documentation (Type B), or action items (Type D) ## Brainstorming Workflow ### Step 1: Start Brainstorming When user wants to brainstorm an iteration: 1. Read DASHBOARD.md to find current iteration 2. Read task file to check if brainstorming section exists 3. If doesn't exist, create: ```markdown #### Brainstorming **Status**: ๐ง IN PROGRESS **Subjects to Discuss**: 1. โณ [Subject Name] - [Question or decision] 2. โณ [Subject Name] - [Question or decision] ``` 4. Prompt user for initial subjects if not provided 5. Add subjects as โณ PENDING items ### Step 2: Add Subjects When user wants to add a new subject: 1. Find brainstorming section in current iteration 2. Add to "Subjects to Discuss" list: ```markdown N. โณ Subject Name - Description ``` 3. Keep list organized (unresolved at top) ### Step 3: Discuss and Resolve Subjects When user asks "what's next subject" or wants to discuss: 1. Find next โณ PENDING or ๐ง IN PROGRESS subject 2. Display subject for discussion 3. After user discusses, help determine resolution type (see [RESOLUTION_TYPES.md](RESOLUTION_TYPES.md)) 4. Create subject section with resolution: ```markdown ##### Subject N: [Name] **Status**: โ RESOLVED (2025-MM-DD) **Question**: [What needed to be decided] **Decision**: [What was decided and why] **Resolution Type**: [A/B/C/D] **Action Items** (if Type A or D): - [ ] [Item 1] - [ ] [Item 2] ``` 5. Update subject status in list: โณ โ โ 6. If Type B, update PLAN.md immediately (see [PLAN_UPDATES.md](PLAN_UPDATES.md)) ### Step 4: Review Brainstorming When user asks "review brainstorming" or wants to check progress: 1. List all โ RESOLVED subjects 2. Show resolution types breakdown: - Type A subjects โ Pre-Implementation Tasks - Type B subjects โ PLAN.md updates (already done) - Type C subjects โ Auto-resolved - Type D subjects โ Main action items 3. Calculate: Resolved vs Total subjects 4. Suggest completing if all resolved ### Step 5: Complete Brainstorming When user says "complete brainstorming" or ready to finish: 1. **Verify**: All subjects have โ RESOLVED status 2. **Collect Type A subjects** โ Create "Pre-Implementation Tasks" section: ```markdown #### Pre-Implementation Tasks **Status**: โณ PENDING These must be completed BEFORE starting main implementation: - [ ] [Pre-task from Subject N] - [ ] [Pre-task from Subject M] ``` 3. **Collect Type D subjects** โ Add to iteration's "Action Items": ```markdown #### Action Items - [ ] [Main work from Subject X] - [ ] [Main work from Subject Y] ``` 4. **Update brainstorming status**: `**Status**: โ COMPLETE (2025-MM-DD)` 5. **Set iteration status**: - If pre-tasks exist: `**Status**: โณ PENDING` (must do pre-tasks first) - If no pre-tasks: `**Status**: ๐จ READY` (ready to implement) 6. Report to user what's next ## Subject Resolution Types See [RESOLUTION_TYPES.md](RESOLUTION_TYPES.md) for detailed explanation. Quick reference: ### Type A: Pre-Implementation Task **When**: Small blocking code change needed BEFORE iteration starts **Criteria**: - Required for iteration (blocking) - Small scope (< 30 min) - Can be done independently **Examples**: Fix interface, rename file, update enum **Outcome**: Goes into "Pre-Implementation Tasks" section, must complete before main work ### Type B: Immediate Documentation **When**: Architectural decision affecting system design **Criteria**: - No code changes yet - Updates PLAN.md Architecture section NOW - High-level design decision **Examples**: Design pattern choice, API contract, data model **Outcome**: Update PLAN.md immediately during brainstorming (see [PLAN_UPDATES.md](PLAN_UPDATES.md)) ### Type C: Auto-Resolved **When**: Subject answered by another subject's decision **Criteria**: - No independent decision needed - Cascade from another subject **Examples**: Implementation detail determined by architecture choice **Outcome**: No action items, just note which subject resolved this ### Type D: Iteration Action Items **When**: Substantial feature work that IS the iteration **Criteria**: - Main implementation work - Takes significant time (> 30 min) **Examples**: Build API endpoint, implement validator, create service **Outcome**: These become the iteration's implementation action items ## Architecture Decision Making When brainstorming reveals architectural decisions (Type B), update PLAN.md: ### When to Update PLAN.md **Always update for**: - Technology choices (libraries, frameworks, tools) - Design patterns adopted - System architecture changes - API contracts or interfaces - Data model decisions - DO/DON'T guidelines that emerge **Don't update for**: - Implementation details (those go in task notes) - Temporary decisions (those stay in brainstorming) - Personal preferences (only team-wide guidelines) ### How to Update PLAN.md See [PLAN_UPDATES.md](PLAN_UPDATES.md) for detailed patterns. Quick guide: **Architecture Section Update**: ```markdown ### [Component/Feature Name] **Decision**: [What was decided] **Rationale**: [Why this approach] **Trade-offs**: - **Chosen**: [Approach X] because [reason] - **Not chosen**: [Approach Y] because [reason] ``` **DO/DON'T Guidelines**: ```markdown **DO**: - [Guideline from experience] **DON'T**: - [Anti-pattern to avoid] ``` ## Subject Discussion Guidance ### Asking the Right Questions Help users explore decisions: - "What are the options?" - "What are the trade-offs?" - "What are the constraints?" - "What's the impact if we choose wrong?" - "Is this decision reversible?" ### Recommending Resolution Types **Recommend Type A if**: - User says "we need to fix [X] first" - Small blocking change mentioned - Quick prerequisite work identified **Recommend Type B if**: - Major architectural decision - Technology choice discussion - System-wide pattern emerging - User asks "how should we architect" **Recommend Type C if**: - Subject is consequence of another decision - No independent choice to make - Answer is implied by previous subjects **Recommend Type D if**: - Main feature work described - Core implementation discussed - User describes "what we're building" ## Examples ### Example 1: Complete Brainstorming Session ``` User: "Let's brainstorm the retry logic for API calls" AI Process: 1. Find current iteration in task file 2. Create brainstorming section with status ๐ง IN PROGRESS 3. Suggest initial subjects: - Retry Strategy (exponential backoff vs fixed delay) - Error Classification (which errors retry) - Max Retry Attempts (how many before giving up) - Existing Error Handler (need async support) - Timeout Configuration (per-request vs total) User provides input, AI adds subjects to list as โณ PENDING --- User: "What's the next subject?" AI Response: Subject 1: Retry Strategy Let's discuss - what are the options? - Exponential backoff (1s, 2s, 4s, 8s...) - Fixed delay (1s between each retry) - Linear backoff (1s, 2s, 3s, 4s...) Which approach fits your needs? User: "Exponential backoff with base delay 1 second" AI Response: This is Type D (Iteration Action Ite
Related in Design
contribute
IncludedLocal-only OSS contribution command center. Auto-refreshes the user's in-flight PR and issue state on invoke so conversations start with full context โ no need to brief Claude on what's in flight. Helps the user find issues to contribute to on GitHub, builds per-repo dossiers of what each upstream expects (CLA, DCO, branch convention, AI policy, draft-first, review bots, issue templates), runs deterministic gates before any external action so AI-assisted contributions don't reach maintainers as slop. State is markdown-only: candidate files at ~/.contribute-system/candidates/, repo dossiers at ~/.contribute-system/research/, append-only event log at ~/.contribute-system/log.jsonl. No database, no cloud calls. Use when the user asks about their PRs / issues / contributions, wants to find new work to take on, claim an issue, build/refresh a repo's dossier, or draft a Design Issue or PR. Trigger with "/contribute", "what's my PR status", "find a contribution", "claim issue X", "draft a Design Issue for Y", "refresh dossier for Z".
architectural-analysis
IncludedUser-triggered deep architectural analysis of a codebase or scoped subtree across eight modes โ information architecture, data flow, integration points, UI surfaces, interaction patterns, data model, control flow, and failure modes. This skill should be used when the user asks to "diagram this codebase," "map the architecture," "show the data flow," "give me an ERD," "trace control flow," "find the integration points," "verify the layout pattern," "audit the UX architecture," or any similar request whose primary deliverable is mermaid diagrams plus cited reports under docs/architecture/. Dispatches haiku/sonnet sub-agents in parallel for per-mode exploration, then verifies every citation mechanically before any node lands in a diagram. Not for one-off prose explanations of code (use code-explanation) or for high-level system design from scratch (use system-design).
mcp
IncludedModel Context Protocol (MCP) server development and tool management. Languages: Python, TypeScript. Capabilities: build MCP servers, integrate external APIs, discover/execute MCP tools, manage multi-server configs, design agent-centric tools. Actions: create, build, integrate, discover, execute, configure MCP servers/tools. Keywords: MCP, Model Context Protocol, MCP server, MCP tool, stdio transport, SSE transport, tool discovery, resource provider, prompt template, external API integration, Gemini CLI MCP, Claude MCP, agent tools, tool execution, server config. Use when: building MCP servers, integrating external APIs as MCP tools, discovering available MCP tools, executing MCP capabilities, configuring multi-server setups, designing tools for AI agents.
react-native-skia
IncludedDesign, build, debug, and optimise high-polish animated graphics in React Native or Expo using @shopify/react-native-skia, Reanimated, and Gesture Handler. Use when the user wants canvas-driven UI, shaders, paths, rich text, image filters, sprite fields, Skottie, video frames, snapshots, web CanvasKit setup, or performance tuning for custom motion-heavy elements such as loaders, hero art, cards, charts, progress indicators, particle systems, or gesture-driven surfaces. Also use when the user asks for fluid, glow, glass, blob, parallax, 60fps/120fps, or GPU-friendly animated effects in React Native, even if they do not explicitly say "Skia". Do not use for ordinary form/layout work with standard views.
plaid
IncludedProduct Led AI Development โ guides founders from idea to launched product. Six capabilities: Idea (discover a product idea), Validate (pressure-test the idea against fatal flaws, problem reality, competition, and 2-week MVP feasibility), Plan (vision intake + document generation), Design (translate image references into a design.md spec), Launch (go-to-market strategy), and Build (roadmap execution). Use when someone says "PLAID", "plaid idea", "help me find an idea", "product idea", "idea from my business", "idea from my expertise", "plaid validate", "validate my idea", "pressure-test", "is this idea good", "find fatal flaws", "validate the problem", "plan a product", "define my vision", "generate a PRD", "product strategy", "plaid design", "design from image", "translate image to design", "create design.md", "extract design tokens", "plaid launch", "go-to-market", "launch plan", "GTM strategy", "launch playbook", "plaid build", "build the app", "start building", or "execute the roadmap".
nextjs-framer-motion-animations
IncludedAdds production-safe Motion for React or Framer Motion animations to Next.js apps, including reveal, hover and tap micro-interactions, whileInView, stagger, AnimatePresence, layout and layoutId transitions, reorder, scroll-linked UI, and lightweight route-content transitions. Use when the user asks to add, refactor, or debug Motion or Framer Motion in App Router or Pages Router codebases, especially around server/client boundaries, reduced motion, LazyMotion, bundle size, hydration, or route transitions. Avoid for GSAP-style timelines, WebGL or 3D scenes, heavy scroll storytelling, or CSS-only effects unless Motion is explicitly requested.