К основному содержанию
скилл CX Codex

external-diagram-mermaid-generate — скилл для Claude Code: диаграммы

Строит диаграммы Mermaid по архитектуре Salesforce: потоки OAuth, ERD, интеграции, структуру Agentforce. Резервный вариант в ASCII, если рендерер недоступен.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add forcedotcom/sf-skills --skill external-diagram-mermaid-generate -a claude-code
Открыть на GitHub

Что делает external-diagram-mermaid-generate

Скилл включается, когда просят диаграмму, схему связей объектов или визуализацию архитектуры Salesforce. Работает в двух форматах: сначала Mermaid-блок, потом ASCII-копия для терминала и plaintext-документации. Для диаграмм последовательности советует ставить autonumber, чтобы порядок шагов читался без пояснений; для ERD берёт flowchart LR и не раздувает карточки полями, если не просили детализацию.

Для потоков OAuth и поведения Flow скилл сам ничего не выясняет: данные берутся у соседних скиллов семейства, например integration-connectivity-connected-app-configure для настройки connected app и automation-flow-generate для логики Flow. Если объекты и поля нужны настоящие, а не придуманные, их сначала добывают через platform-custom-object-generate или platform-custom-field-generate. Без такой привязки ERD получится правдоподобным, но пустым.

Есть оговорки по окружению: скилл рассчитан на curl, jq, Python от 3.10 и Salesforce CLI (sf) от 2.0. Предпросмотр диаграмм в браузере запускает scripts/mermaid_preview.py. Перед генерацией скилл читает справочники из references/ — там правила оформления и палитра, различимая при дальтонизме.

Системы вне Salesforce не его тема: для них проще взять общий скилл для диаграмм. Большая ERD на десятки объектов превращается в кашу, и скилл предлагает делить её на поддиаграммы по доменам.

Какие задачи решает

  • нарисовать поток Authorization Code между системами
  • собрать ERD по связям объектов Salesforce
  • показать последовательность вызовов при интеграции
  • изобразить структуру агента Agentforce: тема, действие
  • получить ASCII-схему, которая читается в терминале

Примеры запросов агенту

  • Сделай диаграмму последовательности для OAuth через connected app в Mermaid
  • Построй ERD по объектам Sales Cloud с направлениями связей
  • Покажи ASCII-схему потока интеграции между Salesforce и внешним сервисом

Как установить external-diagram-mermaid-generate

1Через Skills CLI (Vercel)

npx skills add forcedotcom/sf-skills --skill external-diagram-mermaid-generate -a claude-code

2Вручную: положить файлы

~/.claude/skills/external-diagram-mermaid-generate/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/external-diagram-mermaid-generate/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о external-diagram-mermaid-generate

Как установить external-diagram-mermaid-generate в Claude Code?

Выполните npx skills add forcedotcom/sf-skills --skill external-diagram-mermaid-generate -a claude-code. Файл скилла окажется по пути ~/.claude/skills/external-diagram-mermaid-generate/SKILL.md.

Что делает external-diagram-mermaid-generate?

Генерирует текстовые диаграммы Salesforce в синтаксисе Mermaid: последовательности, ERD, флоучарты. При необходимости добавляет ASCII-версию и короткие пояснения к схеме.

Что нужно, чтобы скилл заработал?

В окружении должны быть curl, jq, Python от 3.10 и Salesforce CLI от 2.0. Для предпросмотра в браузере есть скрипт scripts/mermaid_preview.py.

Исходный текст

SKILL.md · Apache-2.0
---
name: external-diagram-mermaid-generate
description: "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, flowcharts, class diagrams, or architecture visualizations in Mermaid. DO NOT TRIGGER when: user asks about non-Salesforce systems."
metadata:
  version: "1.0"
  domains: ["External"]
  relatedSkills:
    - "agentforce-generate"
    - "automation-flow-generate"
    - "integration-connectivity-connected-app-configure"
    - "integration-connectivity-generate"
    - "platform-apex-generate"
    - "platform-custom-field-generate"
    - "platform-custom-object-generate"
    - "platform-data-manage"
    - "platform-metadata-deploy"
  cliTools:
    - tool: ["curl"]
      semver: ">=7.0.0"
    - tool: ["jq"]
      semver: ">=1.6.0"
    - tool: ["python"]
      semver: ">=3.10.0"
    - tool: ["python3"]
      semver: ">=3.10.0"
    - tool: ["sf"]
      semver: ">=2.0.0"
---

# 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

````markdown
## <Diagram Title>

### Mermaid Diagram
```mermaid
<diagram>
```

### ASCII Fallback
```text
<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 |

© forcedotcom · Apache-2.0 · forcedotcom/sf-skills

Похожие скиллы

Все скиллы по теме «Настройка агента: память, контекст, субагенты» →
setup-matt-pocock-skills Matt Pocock Скилл настраивает репозиторий для инженерных скиллов Matt Pocock: задаёт трекер задач, метки триажа и расположение доменной документации. Запустите его перед первым использованием остальных скиллов. 1 052 851установок ask-matt Matt Pocock Помогает выбрать подходящий скилл или рабочий поток из набора Matt Pocock. Пригодится, когда непонятно, с чего начать задачу: от идеи до разбора бага. 766 587установок to-tickets Matt Pocock Разбивает план, спецификацию или переписку на небольшие сквозные задачи и отмечает, какие из них блокируют остальные. Пригодится, когда нужно согласовать порядок работы до публикации задач в трекере. 711 230установок writing-plans Jesse Vincent Скилл превращает требования к многошаговой задаче в подробный план реализации до начала работы с кодом. Пригодится, когда исполнителю нужно зафиксировать файлы, интерфейсы и проверки. CX Codex 282 859установок caveman-review JuliusBrussee Пишет замечания к коду одной строкой: место, проблема, исправление. Пригодится, когда ревью диффа или PR надо пройти быстро и без воды. CX Codex +1 411 800установок caveman-compress JuliusBrussee Сжимает CLAUDE.md, списки задач и другие текстовые файлы в краткий формат, сохраняя читаемую резервную копию. CX Codex +1 411 500установок

Из того же набора167

dx-org-permission-set-assign Назначает наборы прав (Permission Sets) пользователям Salesforce через команду sf org assign permset. Пригодится для быстрой выдачи доступов дефолтному админу или списку пользователей. CX Codex +1 5 700установок dx-org-switch Переключает активную org Salesforce через sf config set target-org. Пригодится, когда команды CLI бьют не в ту org, чем вы ожидали. CX Codex +1 5 700установок platform-lightning-app-coordinate Создаёт развёртываемые приложения Salesforce Lightning Experience из текстового описания. Нужен, когда требуется связать несколько типов метаданных в одном приложении. CX Codex +1 5 600установок design-systems-slds2-migrate Прогоняет линтер SLDS по компонентам и помогает починить нарушения при переезде Lightning Web Components с SLDS 1 на SLDS 2. CX Codex +1 5 600установок integration-connectivity-generate Настраивает интеграции Salesforce: учётные данные, REST/SOAP-вызовы, External Services, Platform Events и CDC. Нужен при проектировании обмена с внешними системами. CX Codex +1 5 400установок integration-connectivity-connected-app-configure Скилл для настройки OAuth в Salesforce: Connected Apps, External Client Apps, JWT bearer и PKCE. Пригодится, когда правите .connectedApp-meta.xml или .eca-meta.xml. CX Codex +1 5 400установок experience-ui-bundle-frontend-generate Скилл для правок интерфейса в уже собранном UI-бандле Salesforce: страницы, компоненты, вёрстка, навигация, брендинг. CX Codex +1 5 300установок agentforce-d360-analyze Скилл восстанавливает сессии Agentforce из Data Cloud по UUID или идентификатору MessagingSession. Помогает разбирать ход диалогов, когда нужно найти причину сбоя или эскалации. CX Codex +1 5 300установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой