Skip to content
Back to skills

Salesforce Flow

ASecurity

Router for the 63 SfSkills `flow` skill packages. Flow Builder: record-triggered, screen, scheduled and orchestration flows, bulkification, fault handling, limits, testing. \"My flow\" belongs here even when salesforce-apex also names the limit. Nightly scheduling without naming code defaults here; apex takes it when code/class/Apex is named. Flow-vs-Apex choice before anything is built: admin/process-automation-selection. Use when the request mentions Flow, Flow Builder, record-triggered flo...

  • 15 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 6, 2026
ai-agentspythongobashreacttestinggitperformance

Works with

  • cli
  • mcp

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 2 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add PranavNagrecha/AwesomeSalesforceSkills --skill salesforce-flow --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Salesforce Flow?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Salesforce Flow
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/pranavnagrecha-salesforce-flow/badge)](https://www.skillsdirectory.com/skills/pranavnagrecha-salesforce-flow)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: salesforce-flow
description: "Router for the 63 SfSkills `flow` skill packages. Flow Builder: record-triggered, screen, scheduled and orchestration flows, bulkification, fault handling, limits, testing. \"My flow\" belongs here even when salesforce-apex also names the limit. Nightly scheduling without naming code defaults here; apex takes it when code/class/Apex is named. Flow-vs-Apex choice before anything is built: admin/process-automation-selection. Use when the request mentions Flow, Flow Builder, record-triggered flow, screen flow, scheduled flow, subflow, fault path, flow element, orchestration, Process Builder migration, Workflow Rule migration, flow limit, flow hitting SOQL limit, too many SOQL queries in a flow, flow bulkification, Get Records performance. Finds and opens the exact skill package to read; it does not contain the guidance itself."
---

# Salesforce flow — SfSkills domain router

Flow Builder: record-triggered, screen, scheduled and orchestration flows, bulkification, fault handling, limits, testing. "My flow" belongs here even when salesforce-apex also names the limit. Nightly scheduling without naming code defaults here; apex takes it when code/class/Apex is named. Flow-vs-Apex choice before anything is built: admin/process-automation-selection.

**63 skill packages** live under
`${CLAUDE_PLUGIN_ROOT}/skills/flow/<slug>/SKILL.md`. They are not
loaded — reach them by path, on demand.

**Generated by `scripts/build_plugin.py`. Do not hand-edit.**

## How to find the right skill

Three mechanisms, listed in order of reliability on a fresh install.
Use the first one that is available; do not stop at a guess.

**1. The shipped roster (always works, no setup).**
Read `references/skill-index.md` next to this file. It lists every
`flow` skill package with a one-line gloss, generated from
`registry/skills.json`. Scan it and pick by name.

**2. The MCP server (fast, needs the `sfskills-mcp` server connected).**
Call the `search_skill` tool with the user's phrasing and `domain: "flow"`. It returns
ranked skill ids. `get_skill` then returns the package contents.

**3. The search CLI (fast, needs a locally built index).**

```bash
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/search_knowledge.py" "<the user's question>" --domain flow --json
```

This needs `vector_index/`, which is **not shipped** — it is gitignored
and must be built once per clone:

```bash
cd "${CLAUDE_PLUGIN_ROOT}" && python3 -m pip install -r requirements.txt && python3 scripts/build_index.py
```

If the command errors or reports `Coverage: NONE`, fall back to
mechanism 1 rather than telling the user the topic is uncovered.

**Then read the package.** Open the exact
`${CLAUDE_PLUGIN_ROOT}/skills/<domain>/<slug>/SKILL.md` the lookup
returned, plus its `references/gotchas.md` and
`references/llm-anti-patterns.md`. Do not answer from this router:
it is a map, not the territory.

## Featured entry points

Curated starting points when the request is broad or the lookup is
ambiguous. This is a shortlist, not the catalogue — the roster at
`references/skill-index.md` has all 63.

- `${CLAUDE_PLUGIN_ROOT}/skills/flow/record-triggered-flow-patterns/SKILL.md` — before-save vs after-save, entry criteria, and re-entry
- `${CLAUDE_PLUGIN_ROOT}/skills/flow/flow-bulkification/SKILL.md` — the Flow equivalent of queries-in-loops, and how to see it in the debug log
- `${CLAUDE_PLUGIN_ROOT}/skills/flow/fault-handling/SKILL.md` — fault paths as a design requirement, not an afterthought
- `${CLAUDE_PLUGIN_ROOT}/skills/flow/screen-flows/SKILL.md` — screen composition, validation, and reactive components
- `${CLAUDE_PLUGIN_ROOT}/skills/flow/scheduled-flows/SKILL.md` — schedule-triggered flows, batch limits, and the scheduled-path alternative
- `${CLAUDE_PLUGIN_ROOT}/skills/flow/subflows-and-reusability/SKILL.md` — decomposing a flow before it becomes unmaintainable
- `${CLAUDE_PLUGIN_ROOT}/skills/flow/flow-testing/SKILL.md` — Flow tests, coverage expectations, and what they cannot assert
- `${CLAUDE_PLUGIN_ROOT}/skills/flow/flow-performance-optimization/SKILL.md` — Get Records tuning, loop cost, and CPU time inside a flow

## Decision trees

Read the tree *before* activating a skill when the request could be
solved more than one way, and cite the branch that decided it.

- `${CLAUDE_PLUGIN_ROOT}/standards/decision-trees/automation-selection.md` — read FIRST — it decides whether Flow is the right tool at all
- `${CLAUDE_PLUGIN_ROOT}/standards/decision-trees/flow-pattern-selector.md` — read SECOND — which kind of Flow to build
- `${CLAUDE_PLUGIN_ROOT}/standards/decision-trees/async-selection.md` — read when the work should leave the transaction

## Canonical templates

Do not hand-roll an idiom that already exists. Copy from
`${CLAUDE_PLUGIN_ROOT}/templates/flow/` and rename in the consuming
project; never edit the template in place.

- `${CLAUDE_PLUGIN_ROOT}/templates/flow/RecordTriggered_Skeleton.flow-meta.xml`
- `${CLAUDE_PLUGIN_ROOT}/templates/flow/FaultPath_Template.md`
- `${CLAUDE_PLUGIN_ROOT}/templates/flow/Subflow_Pattern.md`
- `${CLAUDE_PLUGIN_ROOT}/templates/flow/README.md` — the full list

## Run-time agents for this domain

Invoke one of these subagents when the ask is a whole workflow
rather than a single question:

- `flow-analyzer` — Flow vs Apex routing + bulkification review
- `flow-builder` — Design a Flow (any type) from a business requirement
- `flow-orchestrator-designer` — Design or audit a Flow Orchestration

## Rules

1. Answer from the opened `flow` package, never from this router.
2. Cite the skill id and, where one applied, the decision-tree branch.
3. Never claim a topic is uncovered without pasting lookup output.
4. Never deploy to an org.

Files in this skill

  • SKILL.md5.6 KB
  • references/skill-index.md17.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.