process-flow-diagram
Skill0 starsChanged 5 months agoMITView on GitHub
Creates professional swimlane process flow diagrams in Lucidchart from requirements docs, descriptions, or meeting notes. Use whenever the user mentions 'process flow', 'PFD', 'BFD', 'flowchart', 'swimlane diagram', 'create a diagram', 'diagram this process', 'flow diagram in Lucid', 'Lucidchart diagram', 'visualize this process', 'map out this flow', 'onboarding flow', or asks to turn requirements, BRDs, or process descriptions into a visual flow. Also trigger when user uploads a .docx or .pptx and wants it converted to a process flow diagram, or when discussing any business process that benefits from visual representation. Works across any project — checkout, onboarding, compliance, archiving, support, etc. Proactively suggest when requirements are discussed that would benefit from a visual flowchart.
- Installs packages
In this repository11 other files it gives its agents.
- brd-builderSkill
- email-drafterSkill
- epic-creatorSkill
- figma-mockupSkill
- gpa-calculatorSkill
- meeting-prepperSkill
- notion-doc-templaterSkill
- project-plannerSkill
- qa-agentSkill
- status-reporterSkill
- tracker-qaSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
20 rules. About 0 are common, 15 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈15
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 29
Lucid MCP must be connected: If unavailable, inform the user.
- Distinctive: line 38
Before creating anything, gather the information needed to build an accurate diagram.
- Distinctive: line 46
Read the full extracted content carefully.
- Distinctive: line 66
If requirements mention CRUD operations (create, read, update, delete), suggest a single diagram with decision diamonds routing between the …
- Distinctive: line 67
If the flow has more than ~25 shapes, suggest splitting into multiple diagrams or pages.
- Distinctive: line 68
If the user hasn't mentioned notes/annotations, check the requirements for edge cases, exceptions, or business rules that should be called …
- Distinctive: line 69
If actors are ambiguous (unclear whether human or system), flag it and suggest the most logical assignment.
- Very specific: line 73
Read references/diagram-patterns.md for the full pattern reference.
- Very specific: line 93
When requirements are ambiguous, apply this test: "Could this step happen without a human doing anything?" If yes → process.
- Distinctive: line 97
Start with the Start terminator in the top-left of the actor lane
- Distinctive: line 102
Always label the outgoing connectors with "Yes" / "No"
- Very specific: line 109
Read references/lucid-spec-format.md for the exact JSON format and Python generator pattern.
- Very specific: line 114
Write a Python script using the proven helper functions (see references/lucid-spec-format.md)
- Very specific: line 124
Always include "version": 1 at the top level.
- Distinctive: line 134
Ask if any adjustments are needed
- Distinctive: line 151
Vertical connectors: when crossing between swimlanes
- Distinctive: line 178
Adjust colors: if the project has brand guidelines (but maintain the human-vs-system color distinction)
- Distinctive: line 197
Multiple sub-processes in one diagram: Use decision diamonds to route between branches (Create → Modify → Delete → Enable/Disable pattern).
- Distinctive: line 199
Ambiguous actor/system assignments: Default to the most common pattern, flag the ambiguity, and ask.
- Distinctive: line 200
Missing details: If requirements are vague about step ordering or branching, propose the most logical flow and confirm.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Process Flow Diagram Skill
Creates professional cross-functional (swimlane) process flow diagrams in Lucidchart using the Standard Import JSON format. This skill works across any project or domain — it is not tied to any specific system.
When to Use
- User asks to create a process flow diagram, flowchart, or swimlane diagram
- User uploads a requirements document (.docx, .pptx) and wants it visualized
- User describes a process in natural language and wants a diagram
- User wants to map out customer onboarding, payment flows, compliance processes, support workflows, or any business process
Lucid Safety Rules (Non-Negotiable)
These rules protect the user's existing Lucid workspace.
- NEVER edit, modify, or delete any existing diagram — not even to "fix" or "improve" it.
- Only operate on diagrams you created in the current session (you have the document ID from the create call), OR diagrams the user has explicitly told you to work on by name or URL.
- Before any edit/delete operation, confirm the document ID matches one you created or one the user explicitly named.
- When in doubt, create a new diagram rather than modifying an existing one.
- Search is safe — search freely to find or reference diagrams, but results are read-only context, not edit permission.
Prerequisites
- Lucid MCP must be connected. If unavailable, inform the user.
- For
.docxor.pptxfiles, usemarkitdownto extract text before processing.
Workflow
Phase 1: Understand the Process (Ask Smart Questions)
Before creating anything, gather the information needed to build an accurate diagram. The quality of the diagram depends entirely on how well you understand the process.
If the user provides a document (.docx, .pptx, or pasted text):
- Extract the text using markitdown:
pip install markitdown --break-system-packages 2>/dev/null && python -m markitdown "<path>" - Read the full extracted content carefully.
- Identify: actors, systems, user actions, system behaviors, decision points, exceptions, and notes.
- Present a summary of what you understood and ask confirming questions.
Whether from a document or conversation, ask these questions using the AskUserQuestion tool:
- Actors: "Who are the human actors in this process?" (e.g., System Administrator, Customer, Support Agent). Suggest based on what you've parsed.
- Systems: "What systems or applications are involved?" (e.g., CRM, Payment Gateway, ARS). This determines the legend.
- Swimlane count: Suggest the number of swimlanes based on the actors/systems you identified. Typical patterns:
- 2 lanes: One human actor + one system (most common)
- 3 lanes: Two human actors + one system, or one actor + two systems
- 4+ lanes: Multiple actors and systems interacting
- Flow complexity: "Is this a single linear flow, or does it have multiple branches/sub-processes?" Suggest based on what you see in the requirements.
- Decision points: List the branching decisions you identified and confirm.
- Title: Suggest a title and subtitle for the diagram.
- Color theme: Offer the default professional palette (navy/teal/gold) or ask if they want custom colors.
- Legend systems: What system/application labels should appear in the legend?
Proactive suggestions you should make:
- If requirements mention CRUD operations (create, read, update, delete), suggest a single diagram with decision diamonds routing between the branches — this is more useful than four separate diagrams.
- If the flow has more than ~25 shapes, suggest splitting into multiple diagrams or pages.
- If the user hasn't mentioned notes/annotations, check the requirements for edge cases, exceptions, or business rules that should be called out.
- If actors are ambiguous (unclear whether human or system), flag it and suggest the most logical assignment.
Phase 2: Decompose into Flow Elements
Read references/diagram-patterns.md for the full pattern reference. Map each requirement to a flow element:
| Element | Flowchart Shape | Default Color | When to Use |
| Start / End | terminator (rounded rectangle) | Navy #1B4F6B | First and last nodes in the flow |
| User Action | manualInput (trapezoid) | Gold #E8A838 | Any action performed by a human: clicking, entering data, navigating, selecting, approving |
| System Display | data (parallelogram) | Teal #2E86AB | When the system shows something to the user: a list, page, modal, confirmation screen |
| Decision | decision (diamond) | Gold #E8A838 | Yes/No or multi-path branching points |
| System Process | process (rectangle) | Teal #2E86AB | Automated system actions: data moves, status changes, API calls, calculations |
Shape-to-logic mapping — how to classify steps:
The distinction between shapes matters because it tells the reader who or what is performing the action:
- "User clicks Submit" →
manualInput(human is acting) - "System validates the input" →
process(system is acting autonomously) - "Form is displayed" →
data(system is presenting information to the user) - "Is the record valid?" →
decision(a branching point in the flow) - "Begin" / "End" →
terminator(entry/exit points)
When requirements are ambiguous, apply this test: "Could this step happen without a human doing anything?" If yes → process. If no → manualInput. If the system is showing information to a human → data.
Phase 3: Map the Flow Sequence
- Start with the Start terminator in the top-left of the actor lane
- Sequence elements left-to-right following the natural process order
- For each Decision diamond:
- Yes → continues the main flow (typically forward or downward)
- No → loops back, ends, or routes to an alternative path
- Always label the outgoing connectors with "Yes" / "No"
- Cross-lane transitions occur when a user action triggers a system process (vertical connector)
- End with the End terminator, typically on the right side
- Identify notes or business rules from the requirements that should be annotation boxes
Phase 4: Build the Lucid Standard Import JSON
Read references/lucid-spec-format.md for the exact JSON format and Python generator pattern.
This is the critical step. You must generate a Python script that outputs the Standard Import JSON specification, then execute it to produce the JSON, then pass that JSON to the Lucid MCP tool.
The approach:
- Write a Python script using the proven helper functions (see
references/lucid-spec-format.md) - Adapt the color palette, swimlane labels, legend entries, and title to the specific project
- Position shapes on a coordinate grid — see the positioning guide in the reference
- Execute the script to produce the JSON spec
- Pass the JSON to
lucid_create_diagram_from_specification
Phase 5: Create the Diagram in Lucid
- Create the diagram using
lucid_create_diagram_from_specificationwith the full Standard Import JSON spec.- The
specificationparameter accepts the JSON as a string. - Always include
"version": 1at the top level.
- The
- Name the diagram following the convention:
[Project]_[ProcessName]_ProcessFlowDiagram - Get the share link using
lucid_create_document_share_link.
Phase 6: Confirm with User
Present:
- The Lucid diagram link
- A text summary of the flow steps and decision points
- A count of shapes and lines (for complexity reference)
- Ask if any adjustments are needed
Visual Standards
These are the default professional visual standards. They can be customized per project, but start with these:
- Always use swimlanes — minimum two horizontal lanes
- Five shape types only — Terminator, Data (I/O), Manual Input, Decision, Process
- Color consistency — within each diagram, the same shape type always uses the same color
- White text inside all colored shapes
- Title banner spanning the full width at the top (dark green by default)
- Legend block at bottom-left showing system/application color mapping
- Yes/No labels on all decision branch connectors
- Notes as annotation boxes — light blue background, attached to relevant shapes
- Left-to-right flow within each swimlane
- Vertical connectors when crossing between swimlanes
Default Color Palette
Title Banner: #1E5631 (dark green), white uppercase text
Terminator: #1B4F6B (navy), white text — "Start" / "End"
Manual Input: #E8A838 (gold), white text — user actions
Data (I/O): #2E86AB (teal), white text — system displays
Decision: #E8A838 (gold), white text — Yes/No branches
Process: #2E86AB (teal), white text — system automation
Connectors: #333333 (dark gray), solid lines with arrowheads
Swimlane fill: #F5F5F5 (light gray) for actor lanes, #FFFFFF for system lanes
Note boxes: #D6EAF8 fill, #85C1E9 border, #333333 textThese colors can be swapped for project-specific branding. The key principle is: human actions get one color (gold), system actions get another (teal), and terminators get a third (navy). This three-color distinction is what makes the diagram instantly readable.
Adapting for Different Projects
This skill is not tied to any specific project. When adapting:
- Change the title banner text to the project/system name
- Update swimlane labels to match the actors and systems involved
- Update the legend to show the relevant systems/applications
- Adjust colors if the project has brand guidelines (but maintain the human-vs-system color distinction)
- Scale the canvas based on flow complexity:
- Simple flow (5-10 shapes): 1200px wide
- Medium flow (10-20 shapes): 1800-2200px wide
- Complex flow with branches (20+ shapes): 2500-3000px wide
Example Adaptations
| Project | Title | Actor Lane | System Lane | Legend |
| E-commerce Checkout | "ACME CO / CHECKOUT FLOW" | "Customer" | "Storefront Platform" | Storefront, Payment Gateway |
| Employee Onboarding | "ACME CO / EMPLOYEE ONBOARDING" | "HR Operations" | "HRIS" | HRIS, IT Provisioning |
| Support Ticket Escalation | "ACME CO / SUPPORT ESCALATION" | "Support Agent" | "Ticketing System" | Helpdesk, CRM |
| Software Release | "ACME CO / RELEASE PIPELINE" | "Release Manager" | "CI/CD System" | CI/CD, Artifact Store |
Handling Edge Cases
- Multiple sub-processes in one diagram: Use decision diamonds to route between branches (Create → Modify → Delete → Enable/Disable pattern).
- Large diagrams (25+ shapes): Suggest splitting into multiple pages/documents. Each page should be a self-contained sub-flow.
- Ambiguous actor/system assignments: Default to the most common pattern, flag the ambiguity, and ask.
- Missing details: If requirements are vague about step ordering or branching, propose the most logical flow and confirm.
- Multi-page diagrams: The Lucid API creates a new document per call. For multi-page diagrams, create separate documents and note the limitation.
Quick Reference
Shapes: terminator | manualInput | data | decision | process
Colors: Navy #1B4F6B | Gold #E8A838 | Teal #2E86AB | Green #1E5631
Format: Standard Import JSON, version 1
BBox: {x, y, w, h} — NOT width/height
Swimlanes: vertical: false, lane "width" = row HEIGHT
Lines: lineType: "elbow", shapeEndpoint with arrow style
Tool: lucid_create_diagram_from_specification
Naming: [Project]_[Process]_ProcessFlowDiagramDoes it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

