askill
bpmn-workflow

bpmn-workflowSafety 100Repository

Generate and maintain BPMN 2.0 diagrams linked to Gherkin scenarios

309 stars
6.2k downloads
Updated 1/18/2026

Package Files

Loading files...
SKILL.md

BPMN Workflow Skill

Generate BPMN 2.0 process diagrams from feature specifications, link them to Gherkin scenarios, and compose a system-wide workflow diagram.

When to Use

  • After completing Ask mode (feature exploration) to visualize the flow
  • When documenting system processes for stakeholders
  • Before Plan mode to ensure all scenarios are captured
  • When updating existing features with new scenarios

Prerequisites

  • Feature has been explored in Ask mode with wireframes
  • User flows have been identified
  • API endpoints (if any) have been specified

Instructions

Phase 1: Gather Feature Context

Step 1.1: Check for existing .feature files

Glob docs/bpmn/features/**/*.feature

If found, parse existing scenarios:

CallMcpTool:
  server: "bpmn-mcp"
  toolName: "read-feature"
  arguments: { "featurePath": "docs/bpmn/features/{feature-id}/{feature-id}.feature" }

Step 1.2: If no .feature file exists, generate scenarios from:

  • Ask mode wireframes (each screen = potential scenario)
  • User flow descriptions
  • API endpoints defined (CRUD operations = scenarios)
  • Edge cases identified (error states, empty states)

Phase 2: Generate Gherkin (if needed)

If generating new scenarios, structure them as:

Feature: [Feature Name]
  As a [user type]
  I want to [action]
  So that [benefit]

  Scenario: [Happy path name]
    Given [precondition]
    When [action]
    Then [expected result]

  Scenario: [Error case name]
    Given [precondition]
    When [invalid action]
    Then [error handling]

Scenario naming conventions:

  • Happy path: Successful [action], [Action] completes
  • Validation: [Action] with invalid [field]
  • Error: [Action] when [error condition]
  • Edge: [Action] with [edge case]

Phase 3: Generate BPMN

Call the generate-bpmn MCP tool:

CallMcpTool:
  server: "bpmn-mcp"
  toolName: "generate-bpmn"
  arguments: {
    "featureId": "{feature-id}",
    "featureName": "{Feature Name}",
    "scenarios": [
      {
        "id": "{scenario-id}",
        "name": "{Scenario Name}",
        "steps": [
          { "keyword": "Given", "text": "{step text}" },
          { "keyword": "When", "text": "{step text}" },
          { "keyword": "Then", "text": "{step text}" }
        ]
      }
    ],
    "outputPath": "docs/bpmn/features/{feature-id}/{feature-id}.bpmn"
  }

Phase 4: Create Manifest Link

Link BPMN elements to Gherkin scenarios:

CallMcpTool:
  server: "bpmn-mcp"
  toolName: "link-gherkin"
  arguments: {
    "featureId": "{feature-id}",
    "featureName": "{Feature Name}",
    "bpmnFile": "docs/bpmn/features/{feature-id}/{feature-id}.bpmn",
    "featureFile": "docs/bpmn/features/{feature-id}/{feature-id}.feature"
  }

This creates docs/bpmn/features/{feature-id}/manifest.json with traceability links.

Phase 5: Compose System Diagram

Update the master system diagram:

CallMcpTool:
  server: "bpmn-mcp"
  toolName: "compose-system"
  arguments: {
    "systemName": "Well Platform",
    "featuresDir": "docs/bpmn/features",
    "outputPath": "docs/bpmn/system.bpmn"
  }

Output Format

After completing all phases, present:

## BPMN Workflow Generated

### Files Created/Updated

| File | Status | Description |
|------|--------|-------------|
| `docs/bpmn/features/{id}/{id}.feature` | Created/Updated | [N] scenarios |
| `docs/bpmn/features/{id}/{id}.bpmn` | Created | Process diagram |
| `docs/bpmn/features/{id}/manifest.json` | Created | [N] links |
| `docs/bpmn/system.bpmn` | Updated | Added {Feature Name} pool |

### Scenarios Mapped

| Scenario | BPMN Element | Steps |
|----------|--------------|-------|
| [Name] | Task_{id} | [N] |

### System Diagram

[ASCII representation of system pools]

┌─────────────────┐     ┌─────────────────┐
│  Auth           │────▶│  Workspaces     │
│  • Login        │     │  • Create       │
│  • Register     │     │  • Switch       │
└─────────────────┘     └─────────────────┘

BPMN Element Mapping

Gherkin ConceptBPMN Element
ScenarioUserTask
Given stepsDocumentation (preconditions)
When stepsDocumentation (action)
Then stepsDocumentation (expected)
FeatureProcess
BackgroundSubprocess (shared)

Storage Structure

docs/bpmn/
├── README.md                    # Documentation
├── system.bpmn                  # Master system diagram
└── features/
    └── {feature-id}/
        ├── {feature-id}.bpmn    # Feature process diagram
        ├── {feature-id}.feature # Gherkin scenarios
        └── manifest.json        # BPMN ↔ Gherkin links

Related Skills

  • problem-framing - Defines the problem before BPMN generation
  • competitor-scan - Research how competitors document workflows
  • design-context - Ensures BPMN aligns with existing patterns

Troubleshooting

No MCP server available:

  • Ensure bpmn-mcp is configured in .cursor/mcp.json
  • Check that @wellapp/bpmn package is built

Invalid BPMN generated:

  • Validate with validate-bpmn tool
  • Check scenario IDs are unique
  • Ensure step keywords are valid (Given/When/Then/And/But)

Manifest links broken:

  • Re-run link-gherkin after updating scenarios
  • Ensure scenario IDs match between .feature and manifest

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

92/100Analyzed 2/12/2026

An excellent, highly structured skill for managing BPMN diagrams and Gherkin scenarios. It includes clear triggers, detailed phases with MCP tool integration, and troubleshooting advice.

100
98
75
95
90

Metadata

Licenseunknown
Version-
Updated1/18/2026
PublisherWellApp-ai

Tags

apigithub-actionssecurity