external-diagram-mermaid-generate
Salesforce architecture diagrams using Mermaid with ASCII fallback. Use this skill when generating text-based diagrams for Salesforce architecture, OAuth flows, ERDs, integration sequences, or Agentforce structure. TRIGGER when: user says "diagram", "visualize", "ERD", or asks for sequence diagrams,
By forcedotcom · 5,128 installs
npx skills add forcedotcom/sf-skills --skill external-diagram-mermaid-generate
Source repository · Upstream listing
external diagram mermaid generate: Salesforce Diagram Generation
Use this skill when the user needs text based diagrams : Mermaid diagrams for architecture, OAuth, integration flows, ERDs, or Agentforce structure, plus ASCII fallback when plain text compatibility matters.
Scope
In Scope
Use external diagram mermaid generate when the user wants:
Mermaid output
ASCII fallback diagrams
architecture, sequence, flowchart, or ERD views in markdown friendly form
diagrams that can live directly in docs, READMEs, or issues
Out of Scope — Delegate elsewhere when the user wants:
non Salesforce systems only → use a more general diagramming skill
object discovery before an ERD → [platform custom object generate](../platform custom object generate/SKILL.md) or [platform custom field generate](../platform custom field generate/SKILL.md)
Supported Diagram Families
Type Preferred Mermaid form Typical use
OAuth / auth flows sequenceDiagram Authorization Code, JWT, PKCE, Device Flow
ERD / data model flowchart LR object relationships and sharing context
integration sequence sequenceDiagram request/response or event choreography
system landscape flowchart high level architecture
role / access hierarchy flowchart users, profiles, permissions
Agentforce behavior map flowchart agent → topic → action relationships
Required Context to Gather First
Ask for or infer:
diagram type
scope and entities / systems involved
output preference: Mermaid only, ASCII only, or both
whether styling should be minimal, documentation first, or presentation friendly
for ERDs: whether org metadata is available for grounding
Recommended Workflow
1. Pick the right diagram structure
use sequenceDiagram for time ordered interactions
use flowchart LR for ERDs and capability maps
keep a single primary story per diagram when possible
2. Gather data
For ERDs and grounded diagrams:
use [platform custom object generate](../platform custom object generate/SKILL.md) or [platform custom field generate](../platform custom field generate/SKILL.md) when real schema discovery is needed
optionally use the local metadata helper script for counts / relationship context when appropriate
3. Generate Mermaid first
Apply:
accurate labels
simple readable node text
consistent relationship notation
restrained styling that renders cleanly in markdown viewers
4. Add ASCII fallback when useful
Provide an ASCII version when the user wants terminal compatibility or plaintext documentation.
5. Explain the diagram briefly
Call out the key relationships, flow direction, and any assumptions.
High Signal Rules
For sequence diagrams
use autonumber when step order matters
distinguish requests vs responses clearly
use notes sparingly for protocol detail
For ERDs
prefer flowchart LR
keep object cards simple
use clear relationship arrows
avoid field overload unless the user explicitly asks for field level detail
color code object types only when it improves readability
For ASCII output
keep width reasonable
align arrows and boxes consistently
optimize for readability over decoration
Output Format
mermaid
<diagram
text
<ascii
Cross Skill Integration
Need Delegate to Reason
real object / field definitions [platform custom object generate](../platform custom object generate/SKILL.md) / [platform custom field generate](../platform custom field generate/SKILL.md) grounded ERD generation
connected app auth setup context [integration connectivity connected app configure](../integration connectivity connected app configure/SKILL.md) accurate OAuth flows
Agentforce logic visualization [agentforce generate](../agentforce generate/SKILL.md) source of truth behavior details
Flow behavior diagrams [automation flow generate](../automation flow generate/SKILL.md) actual Flow logic grounding
Gotchas
Issue Resolution
Mermaid renderer not available Provide ASCII fallback automatically; note that the Mermaid block still carries the diagram for copy paste into a renderer
ERD becomes unreadable with too many objects Split into sub diagrams by domain (Sales, Service, etc.) and link them in prose
Sequence diagram step order unclear Use autonumber directive to make step ordering explicit
OAuth flow actors differ by grant type Read the relevant asset template first before generating to avoid actor mismatch
Reference File Index
Conventions & rules — read before generating
[references/diagram conventions.md](references/diagram conventions.md) — consistency rules for all diagram types
[references/mermaid reference.md](references/mermaid reference.md) — Mermaid syntax quick reference
[references/usage examples.md](references/usage examples.md) — worked examples per diagram type
Styling
[references/mermaid styling.md](references/mermaid styling.md) — theming and annotation patterns
[references/color palette.md](references/color palette.md) — color blind friendly palette with hex values
[references/erd conventions.md](references/erd conventions.md) — ERD specific layout and notation rules
Preview
[references/preview guide.md](references/preview guide.md) — how to render Mermaid locally
[scripts/README.md](scripts/README.md) — setup and usage instructions for all scripts in this skill
[scripts/mermaid preview.py](scripts/mermaid preview.py) — live reload preview server; run to preview diagrams in browser
[scripts/query org metadata.py](scripts/query org metadata.py) — queries org schema to ground ERD generation
OAuth flow templates — load the matching template when generating OAuth diagrams
[assets/oauth/authorization code.md](assets/oauth/authorization code.md) — Authorization Code grant
[assets/oauth/authorization code pkce.md](assets/oauth/authorization code pkce.md) — PKCE variant for mobile/SPA
[assets/oauth/jwt bearer.md](assets/oauth/jwt bearer.md) — JWT Bearer server to server
[assets/oauth/client credentials.md](assets/oauth/client credentials.md) — Client Credentials service accounts
[assets/oauth/device authorization.md](assets/oauth/device authorization.md) — Device Flow for CLI/IoT
[assets/oauth/refresh token.md](assets/oauth/refresh token.md) — Refresh Token renewal flow
[assets/oauth/user agent social sign on.md](assets/oauth/user agent social sign on.md) — User Agent / Social Sign On
Data model ERD templates — load the matching template when generating ERDs
[assets/datamodel/salesforce erd.md](assets/datamodel/salesforce erd.md) — core Salesforce objects
[assets/datamodel/sales cloud erd.md](assets/datamodel/sales cloud erd.md) — Sales Cloud objects
[assets/datamodel/service cloud erd.md](assets/datamodel/service cloud erd.md) — Service Cloud objects
[assets/datamodel/b2b commerce erd.md](assets/datamodel/b2b commerce erd.md) — B2B Commerce objects
[assets/datamodel/campaigns erd.md](assets/datamodel/campaigns erd.md) — Campaigns and campaign member model
[assets/datamodel/consent erd.md](assets/datamodel/consent erd.md) — Consent and privacy objects
[assets/datamodel/files erd.md](assets/datamodel/files erd.md) — Files and ContentDocument model
[assets/datamodel/forecasting erd.md](assets/datamodel/forecasting erd.md) — Forecasting objects
[assets/datamodel/fsl erd.md](assets/datamodel/fsl erd.md) — Field Service Lightning objects
[assets/datamodel/party model erd.md](assets/datamodel/party model erd.md) — Party model objects
[assets/datamodel/quote order erd.md](assets/datamodel/quote order erd.md) — Quote and Order objects
[assets/datamodel/revenue cloud erd.md](assets/datamodel/revenue cloud erd.md) — Revenue Cloud objects
[assets/datamodel/scheduler erd.md](assets/datamodel/scheduler erd.md) — Scheduler objects
[assets/datamodel/territory management erd.md](assets/datamodel/territory management erd.md) — Territory Management objects
Other diagram templates
[assets/architecture/system landscape.md](assets/architecture/system landscape.md) — system landscape overview template
[assets/integration/api sequence.md](assets/integration/api sequence.md) — API callout sequence template
[assets/agentforce/agent flow.md](assets/agentforce/agent flow.md) — Agentforce agent → topic → action flow
[assets/role hierarchy/user hierarchy.md](assets/role hierarchy/user hierarchy.md) — role and permission hierarchy template
Output Expectations
Deliverables produced by this skill for each request:
Mermaid code block — fenced mermaid block ready to paste into GitHub, Confluence, or any Mermaid capable renderer
ASCII fallback (when requested or when Mermaid renderer is unavailable) — text only diagram using box/arrow characters
Brief explanation — 2 5 bullet points calling out key relationships, flow direction, and any assumptions or limitations in the diagram
For ERDs: object cards with field labels and relationship type annotations
For sequence diagrams: numbered steps ( autonumber ) with clear actor labels
Score Guide
Score Meaning
72–80 production ready diagram
60–71 clear and useful with minor polish left
48–59 functional but could be clearer
35–47 needs structural improvement
< 35 inaccurate or incomplete