Install
$ agentstack add skill-efeumutaslan-sap-skills-sap-signavio ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ● Shell / process execution Used
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
SAP Signavio Process Management & Mining
Related Skills
sap-build-process-automation— Automate processes modeled in Signaviosap-s4hana-extensibility— Process variants for S/4HANA scenariossap-cloud-alm— ALM process monitoring complements Signavio insights
Quick Start
Choose your Signavio component:
| Component | Purpose | Key Activity | |-----------|---------|-------------| | Process Manager | BPMN modeling, process repository | Design & publish processes | | Process Intelligence | Process mining, conformance | Analyze event logs | | Process Governance | Approval workflows for models | Govern process changes | | Collaboration Hub | Stakeholder communication | Share & collect feedback | | Journey Modeler | Customer/employee journeys | Map experience flows |
First API call — List Process Models:
curl -X GET "https://editor.signavio.com/p/revision" \
-H "x-signavio-id: {{SESSION_TOKEN}}" \
-H "Accept: application/json" \
-b "JSESSIONID={{SESSION_COOKIE}}"
Core Concepts
BPMN 2.0 Modeling Standards
| Element | Symbol | Usage | |---------|--------|-------| | Start Event | ○ | One per process (normal flow) | | End Event | ◉ | At least one; use multiple for different outcomes | | User Task | ▭ (person) | Manual human activity | | Service Task | ▭ (gear) | Automated system call | | Exclusive Gateway | ◇ (X) | Either/or branching | | Parallel Gateway | ◇ (+) | Fork/join concurrent paths | | Intermediate Event | ◎ | Timer, message, signal mid-flow | | Subprocess | ▭ [+] | Encapsulate reusable process |
Process Intelligence (Mining) Pipeline
- Data extraction — Pull event logs from source systems (S/4HANA, ECC, SuccessFactors)
- Data transformation — Map to Signavio event log format (Case ID, Activity, Timestamp)
- Process discovery — Auto-generate process model from event data
- Conformance checking — Compare discovered vs. designed process
- Root cause analysis — Identify bottlenecks, rework loops, deviations
- KPI monitoring — Track cycle time, throughput, automation rate
Event Log Format
CaseID,Activity,Timestamp,Resource,Variant
PO-001,Create Purchase Requisition,2026-01-15T08:00:00Z,User_A,Standard
PO-001,Approve Purchase Requisition,2026-01-15T09:30:00Z,Manager_B,Standard
PO-001,Create Purchase Order,2026-01-15T10:00:00Z,System,Standard
PO-001,Goods Receipt,2026-01-20T14:00:00Z,User_C,Standard
PO-001,Invoice Receipt,2026-01-22T11:00:00Z,User_D,Standard
PO-001,Payment,2026-01-25T16:00:00Z,System,Standard
Common Patterns
Pattern 1: Signavio API Authentication
import requests
SIGNAVIO_URL = "https://editor.signavio.com"
def authenticate(email, password, tenant_id):
"""Authenticate and get session token."""
resp = requests.post(
f"{SIGNAVIO_URL}/p/login",
data={
"name": email,
"password": password,
"tenant": tenant_id,
"tokenonly": "true"
}
)
resp.raise_for_status()
return {
"token": resp.text.strip(),
"cookie": resp.cookies.get("JSESSIONID")
}
def get_headers(session):
return {
"x-signavio-id": session["token"],
"Accept": "application/json",
"Cookie": f"JSESSIONID={session['cookie']}"
}
Pattern 2: Export BPMN Model
def export_bpmn_xml(session, model_id):
"""Export process model as BPMN 2.0 XML."""
headers = get_headers(session)
resp = requests.get(
f"{SIGNAVIO_URL}/p/revision/{model_id}/bpmn2_0_xml",
headers=headers
)
resp.raise_for_status()
return resp.text
def export_svg(session, model_id):
"""Export process diagram as SVG."""
headers = get_headers(session)
headers["Accept"] = "image/svg+xml"
resp = requests.get(
f"{SIGNAVIO_URL}/p/revision/{model_id}/svg",
headers=headers
)
resp.raise_for_status()
return resp.text
Pattern 3: Process Mining Data Preparation (S/4HANA P2P)
-- CDS view for Procure-to-Pay event log extraction
@AbapCatalog.sqlViewName: 'ZV_P2P_EVLOG'
@Analytics: { dataCategory: #FACT }
define view Z_P2P_EVENT_LOG as
-- Purchase Requisition Created
select from eban {
cast(banfn as abap.char(20)) as CaseID,
'Create Purchase Requisition' as Activity,
badat as EventTimestamp,
ernam as Resource,
bsart as Variant
}
union all
-- Purchase Order Created
select from ekko {
cast(ebeln as abap.char(20)) as CaseID,
'Create Purchase Order' as Activity,
aedat as EventTimestamp,
ernam as Resource,
bsart as Variant
}
union all
-- Goods Receipt
select from mkpf
inner join mseg on mkpf.mblnr = mseg.mblnr
and mkpf.mjahr = mseg.mjahr {
cast(mseg.ebeln as abap.char(20)) as CaseID,
'Goods Receipt' as Activity,
mkpf.budat as EventTimestamp,
mkpf.usnam as Resource,
mseg.bwart as Variant
}
where mseg.bwart = '101'
Pattern 4: BPMN Best Practices Template
Pattern 5: Process KPI Configuration
{
"kpis": [
{
"name": "Cycle Time",
"description": "Average time from requisition to payment",
"formula": "AVG(EndTimestamp - StartTimestamp)",
"target": " 85%",
"dimension": "percentage"
},
{
"name": "Automation Rate",
"description": "Activities executed by system vs. total",
"formula": "COUNT(system_activities) / COUNT(all_activities) * 100",
"target": "> 60%",
"dimension": "percentage"
},
{
"name": "Maverick Buying Rate",
"description": "POs created without prior requisition",
"formula": "COUNT(po_without_pr) / COUNT(all_po) * 100",
"target": "200 elements) | Split into subprocesses; export parts |
| Import: Invalid BPMN | Schema validation error | Non-standard BPMN extensions | Remove vendor-specific extensions before import |
## Performance Tips
1. **Event log size** — Keep under 10M events per analysis; sample or partition by date range
2. **Activity normalization** — Standardize naming before import; "Create PO" and "PO Creation" = same activity
3. **Case linking** — Use document flow tables (VBFA, EKBE) to link cross-module cases
4. **Incremental mining** — Schedule delta extracts (changed since last run) for ongoing monitoring
5. **Model complexity** — Keep BPMN models under 50 elements per diagram; use subprocesses for detail
6. **Variant analysis** — Focus on top 20 variants (usually 80%+ of cases); group rare variants as "Other"
7. **Collaboration Hub** — Publish only approved models; use governance workflow for version control
## Gotchas
- **Signavio vs. BPA**: Signavio models are *design-time* reference; SAP Build Process Automation is *runtime* execution — they complement, not replace each other
- **BPMN compliance**: Signavio enforces strict BPMN 2.0; models from other tools may need cleanup before import
- **Event timestamp granularity**: Second-level timestamps required for accurate mining; day-level creates artificial parallelism
- **Process Intelligence licensing**: Mining capabilities require separate PI license; Process Manager alone doesn't include mining
- **S/4HANA connector**: Pre-built extractors exist for O2C, P2P, AP — custom processes need manual event log setup
## Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- **Author:** [efeumutaslan](https://github.com/efeumutaslan)
- **Source:** [efeumutaslan/SAP-SKILLS](https://github.com/efeumutaslan/SAP-SKILLS)
- **License:** MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.