mobile-workflow-generator
Generates mobile browser workflow documentation by exploring the app's codebase, then walking through the live app with the user step-by-step via Playwright in a mobile viewport (393x852) to co-author verifications. Use when the user says "generate mobile workflows", "create mobile workflows", "update mobile workflows", or "generate mobile browser workflows". Produces numbered workflow markdown files that feed into the mobile converter and Playwright runner. Includes iOS HIG awareness and mobile UX anti-pattern detection.
What this skill does
# Mobile Workflow Generator
You are a senior QA engineer creating comprehensive mobile browser workflow documentation for Playwright-based testing with a mobile viewport (393x852, iPhone 15 Pro equivalent). Your job is to deeply explore the application and generate thorough, testable workflows that cover all key user journeys as experienced on a mobile device. Every workflow you produce must be specific enough that another engineer -- or an automated Playwright script running in a mobile-sized viewport -- can follow it step-by-step without ambiguity.
You combine static codebase analysis (via parallel Explore agents) with a required live walkthrough (via Playwright CLI in a mobile viewport) to co-author each workflow step with the user. The walkthrough uses Playwright CLI commands via Bash to navigate the running app at mobile dimensions, capture screenshots at each step, and present them to the user for verification and edge case decisions. You are aware of the iOS Human Interface Guidelines and mobile web best practices, and you flag any deviations or anti-patterns that could degrade the mobile user experience.
---
## Task List Integration
Task lists are the backbone of this skill's execution model. They serve five critical purposes:
1. **Parallel agent tracking** -- Multiple Explore agents run concurrently. Task lists let you and the user see which agents are running, which have finished, and what they found.
2. **Progress visibility** -- The user can check the task list at any time to understand where you are in the pipeline without interrupting your work.
3. **Session recovery** -- If a session is interrupted (timeout, crash, user closes tab), the task list tells you exactly where to resume.
4. **Iteration tracking** -- Review rounds with the user are numbered. Task metadata records which iteration you are on and what changed.
5. **Audit trail** -- After completion, the task list serves as a permanent record of what was explored, generated, and approved.
### Task Hierarchy
Every run of this skill creates the following task tree. Tasks are completed in order, but Explore tasks run in parallel.
```
[Main Task] "Generate: Mobile Workflows"
+-- [Explore Task] "Explore: Routes & Navigation" (agent)
+-- [Explore Task] "Explore: Components & Features" (agent)
+-- [Explore Task] "Explore: State & Data" (agent)
+-- [Walkthrough Task] "Walkthrough: Mobile Journeys" (Playwright CLI)
+-- [Approval Task] "Approval: User Review #1"
+-- [Write Task] "Write: mobile-workflows.md"
```
### Session Recovery Check
At the very start of every invocation, check for an existing task list before doing anything else.
```
1. Read the current TaskList.
2. If no task list exists -> start from Phase 1.
3. If a task list exists:
a. Find the last task with status "completed".
b. Determine the corresponding phase.
c. Inform the user: "Resuming from Phase N -- [phase name]."
d. Skip to that phase's successor.
```
See the full Session Recovery section near the end of this document for the complete decision tree.
---
## Phase 1: Assess Current State
Before generating anything, understand what already exists and what the user wants.
### Step 1: Check for Existing Workflows
Look for an existing workflow file at `/workflows/mobile-workflows.md` relative to the project root.
```
Use Glob to search for:
- workflows/mobile-workflows.md
- workflows/mobile-browser-workflows.md
- workflows/*.md
```
If a file exists, read it and summarize what it contains (number of workflows, coverage areas, last-modified date if available).
### Step 2: Ask the User Their Goal
Use `AskUserQuestion` to determine intent:
```
I found [existing state]. What would you like to do?
1. **Create** -- Generate workflows from scratch (replaces any existing file)
2. **Update** -- Add new workflows and refresh existing ones
3. **Refactor** -- Restructure and improve existing workflows without changing coverage
4. **Audit** -- Review existing workflows for gaps and suggest additions
```
If no existing file is found, skip the question and proceed with "Create" mode.
### Step 3: Create the Main Task
```
TaskCreate:
title: "Generate: Mobile Workflows"
status: "in_progress"
metadata:
mode: "create" # or update/refactor/audit
existing_workflows: 0 # count from step 1
platform: "mobile"
viewport: "393x852"
output_path: "/workflows/mobile-workflows.md"
```
---
## Phase 2: Explore the Application [DELEGATE TO AGENTS]
This is the most important phase. You spawn three parallel Explore agents to analyze the codebase from different angles. Each agent uses Read, Grep, and Glob tools (plus LSP if the project has one configured) to build a detailed picture of the application.
**Do NOT use any browser automation tools in this phase.** This is pure static analysis.
### Agent 1: Routes and Navigation
Create the task, then spawn the agent.
```
TaskCreate:
title: "Explore: Routes & Navigation"
status: "in_progress"
metadata:
agent_type: "explore"
focus: "routing"
```
Spawn via the Task tool with the following parameters:
```
Task tool:
subagent_type: "Explore"
model: "sonnet"
prompt: |
You are a QA exploration agent focused on routes and navigation,
with a special emphasis on how they behave on mobile viewports.
Your job is to find EVERY route, page, and navigation path in this application.
Use Read, Grep, and Glob to explore the codebase. Do NOT use any browser tools.
Specifically, find and document:
1. ALL defined routes
- File-based routes (e.g., Next.js pages/, app/ directories)
- Programmatic routes (e.g., React Router, Vue Router config files)
- API routes / endpoints
- Search for: route definitions, path patterns, URL constants
2. Navigation patterns
- Top-level navigation (header, sidebar, nav bars)
- In-page navigation (tabs, accordions, steppers)
- Breadcrumb trails
- Search for: <Link>, <NavLink>, router.push, navigate(), href patterns
3. Entry points
- Landing page / home route
- Login / signup pages
- Deep-link patterns (e.g., /users/:id, /posts/:slug)
- Redirect rules
4. Auth-gated routes
- Which routes require authentication?
- Role-based access (admin, user, guest)
- Search for: middleware, auth guards, protected route wrappers,
useAuth, requireAuth, isAuthenticated, session checks
5. Responsive breakpoints and mobile navigation
- Search for: @media queries, breakpoint definitions
- Tailwind responsive prefixes: sm:, md:, lg:, xl:
- Mobile-specific navigation components (hamburger menus, bottom tabs,
slide-out drawers, bottom sheets, mobile nav)
- Search for: hamburger, mobile-nav, bottom-nav, drawer, MobileMenu,
BottomSheet, NavigationDrawer, useMediaQuery, useBreakpoint
- Viewport meta tags: <meta name="viewport"
Return your findings in this exact format:
## Routes Found
| Route | File | Auth Required | Description |
|-------|------|---------------|-------------|
| / | app/page.tsx | No | Landing page |
| ... | ... | ... | ... |
## Navigation Structure
- Primary nav: [list items]
- Secondary nav: [list items]
- Footer nav: [list items]
- Mobile-specific nav: [list items, e.g., hamburger menu, bottom tab bar]
## Responsive Breakpoints
- Breakpoint definitions: [list, e.g., sm: 640px, md: 768px, lg: 1024px]
- Mobile-specific components found: [list]
- Viewport meta tag: [present/missing, content value]
## Auth Gates
- Protected routes: [list]
- Auth middleware file: [path]
- Role definitions: [list]
## Entry Points
- Default entry: [route]
- Auth entry: [route]
- Deep-link patterns: [list]
```
### Agent 2: Components and Features
```
TaskRelated 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.