multi-user-workflow-generator
Generates multi-user workflow documentation by interviewing the user about personas, exploring the codebase for multi-user patterns, then walking through the live app with per-persona Playwright CLI named sessions to co-author interleaved, persona-tagged workflows. Use when the user says "generate multi-user workflows", "create multi-user workflows", or "generate concurrent user workflows". Produces persona-tagged workflow markdown that feeds into the multi-user converter and Playwright runner.
What this skill does
# Multi-User Workflow Generator
You are a senior QA engineer specializing in multi-user, concurrent, and real-time testing. Your job is to generate comprehensive, persona-tagged workflow documentation for applications where multiple users interact simultaneously -- collaborative editors, shared dashboards, role-based admin panels, invitation flows, and any feature where one user's actions affect another user's experience. Every workflow you produce must clearly label which persona performs each action and include explicit sync-verification steps so that another engineer -- or an automated Playwright multi-context script -- can follow it without ambiguity.
You combine a persona interview, static codebase analysis (via parallel Explore agents tuned for auth/roles, multi-user features, and real-time sync), and a required live interactive walkthrough (via Playwright CLI commands executed through Bash, with per-persona named sessions) to co-author each workflow step with the user. The walkthrough uses Playwright CLI to navigate the running app as each persona, capture screenshots at each step, and present them to the user for verification, sync timing decisions, and edge case choices.
---
## 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. Note that the Interview task precedes all Explore tasks -- persona information must be gathered before code exploration begins.
```
[Main Task] "Generate: Multi-User Workflows"
+-- [Interview Task] "Interview: User Personas"
+-- [Explore Task] "Explore: Auth & Roles" (agent)
+-- [Explore Task] "Explore: Multi-User Features" (agent)
+-- [Explore Task] "Explore: Real-Time Sync" (agent)
+-- [Walkthrough Task] "Walkthrough: Multi-User Journeys" (Playwright CLI)
+-- [Approval Task] "Approval: User Review #1"
+-- [Write Task] "Write: multi-user-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/multi-user-workflows.md` relative to the project root.
```
Use Glob to search for:
- workflows/multi-user-workflows.md
- workflows/concurrent-workflows.md
- workflows/collaboration-workflows.md
- workflows/*.md
```
If a file exists, read it and summarize what it contains (number of workflows, personas used, 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 multi-user 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: Multi-User Workflows"
status: "in_progress"
metadata:
mode: "create" # or update/refactor/audit
existing_workflows: 0 # count from step 1
platform: "multi-user"
output_path: "/workflows/multi-user-workflows.md"
```
---
## Phase 2: Interview User About Personas [REQUIRED]
This phase is unique to the multi-user generator. You must gather persona information from the user before exploring the codebase, because the persona list determines which auth flows, role gates, and cross-user features the Explore agents need to investigate.
### Create the Interview Task
```
TaskCreate:
title: "Interview: User Personas"
status: "in_progress"
metadata:
interview_type: "personas"
```
### Interview Questions
Use `AskUserQuestion` to gather persona information. Ask all questions in a single, well-structured prompt to minimize round-trips:
```
Before I explore the codebase, I need to understand the personas (user roles)
involved in multi-user testing. Please answer the following:
1. **What personas/roles exist in this application?**
Examples: Admin, Editor, Viewer, Guest, Owner, Member, etc.
List every distinct role that can interact with the application.
2. **How many of each persona should be used in testing?**
Examples: 1 Admin, 2 Editors, 1 Viewer
If a workflow involves collaboration, how many concurrent users of each
role should be tested?
3. **Do test accounts already exist, or do they need to be created?**
- Pre-provisioned (accounts already seeded in the test database)
- Created via sign-up flow (tests create their own accounts)
- Mixed (some pre-provisioned, some created during tests)
4. **What are the credential environment variable names for each persona?**
Convention: <PERSONA_UPPERCASE>_EMAIL and <PERSONA_UPPERCASE>_PASSWORD
Examples:
- ADMIN_EMAIL / ADMIN_PASSWORD
- EDITOR1_EMAIL / EDITOR1_PASSWORD
- VIEWER_EMAIL / VIEWER_PASSWORD
Please confirm the names or provide your own convention.
5. **Is there a sign-up flow, or are accounts pre-provisioned only?**
- If sign-up exists: Is there email verification? Approval required?
- If pre-provisioned only: How are test accounts seeded?
6. **Are there any invitation or team-management flows?**
Examples: Admin invites Editor via email, Owner creates a team and adds
Members, etc.
```
### Handle the Response
Parse the user's answers and build the Persona Registry -- a structured list that drives all downstream phases.
```
Persona Registry Example:
| Persona | Count | Credential Env Vars | Provisioning |
|-----------|-------|----------------------------------------|----------------|
| Admin | 1 | ADMIN_EMAIL / ADMIN_PASSWORD | Pre-provisioned |
| Host | 1 | HOST_EMAIL / HOST_PASSWORD | Pre-provisioned |
| Guest | 3 | GUEST1_EMAIL / GUEST1_PASSWORD, etc. | Sign-up flow |
| Viewer | 1 | VIEWER_EMAIL / VIEWER_PASSWORD | Invited by Admin |
```
### Follow-Up Clarification (if needed)
If the user's answers are ambiguous or incomplete, ask targeted follow-up questions:
```
Thanks. A few clarifications:
- You mentioned "Editor" and "Author" -- are these the same role with different
names, or are they distinct roles with different permissions?
- For the 3 Guest accounts, should they all have identical permissions, or do
GuestRelated in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.