跳到主要内容
知仓学习社ZHICANG

external-diagram-mermaid-generate

Salesforce architecture diagrams using Mermaid with ASCII fallback. Use this skill when generating text-based diagrams for Salesforce architecture, …

执行命令读文件写文件联网严重 0 · 高危 2forcedotcom/sf-skills

它会碰到什么

扫了多少37 个文本文件,324 KB
它会碰到什么执行命令读文件写文件联网
命中总数30 处
命中统计严重 0 · 高 2 · 中 11 · 低 1
逐条看命中(2 条严重或高危)
  • scripts/mermaid_preview.py:506exec-spawn
    process = subprocess.Popen(
  • scripts/query-org-metadata.py:31exec-spawn
    result = subprocess.run(

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

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

## <Diagram Title>

### Mermaid Diagram

<diagram>


### ASCII Fallback

<ascii>


### Notes
- <key point>
- <assumption or limitation>

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 |

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。