金色时刻 · 15:48
让好资源,触手可及
AGENT SKILL

bpmn-workflow

bpmn-workflow 是面向商业与营销的 Agent Skill,来自 WellApp-ai/Well。查看技能说明、操作步骤与使用约定,并通过原项目了解详细用法。

Generate and maintain BPMN 2.0 diagrams linked to Gherkin scenarios

SKILL.md

下载 MD ↓
namebpmn-workflow
descriptionGenerate and maintain BPMN 2.0 diagrams linked to Gherkin scenarios

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 Concept BPMN Element
Scenario UserTask
Given steps Documentation (preconditions)
When steps Documentation (action)
Then steps Documentation (expected)
Feature Process
Background Subprocess (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

来源:WellApp-ai/Well · MIT 许可 · 许可原文 · MD 为来源页保存的历史版本