Router for the 101 SfSkills `data` skill packages. Data model, data movement and data quality: migrations, bulk loads, query optimisation, deduplicating at volume, archival. Ordinary-volume duplicate cleanup and prevention use salesforce-admin; come here for hundreds-of-thousands+ dedup or third-party tools. LDV architecture uses salesforce-architect. Use when the request mentions data model, data migration, data load, Data Loader, Bulk API, external id, deduplication at volume, archival, SOS...
15 stars
0 votes
0 copies
4 views
Added September 6, 2026
ai-agentspythongobashgitapiperformance
Works with
cli
api
mcp
Security analysis
A96/100
mediumInstalls packages at runtime which could introduce malicious dependencies
Installs into .claude/skills of the current project.
Are you the author of Salesforce Data?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/pranavnagrecha-salesforce-data)
---
name: salesforce-data
description: "Router for the 101 SfSkills `data` skill packages. Data model, data movement and data quality: migrations, bulk loads, query optimisation, deduplicating at volume, archival. Ordinary-volume duplicate cleanup and prevention use salesforce-admin; come here for hundreds-of-thousands+ dedup or third-party tools. LDV architecture uses salesforce-architect. Use when the request mentions data model, data migration, data load, Data Loader, Bulk API, external id, deduplication at volume, archival, SOSL, cross-object search, sandbox seed data, SandboxPostCopy, native Data Seeding. Finds and opens the exact skill package to read; it does not contain the guidance itself."
---
# Salesforce data — SfSkills domain router
Data model, data movement and data quality: migrations, bulk loads, query optimisation, deduplicating at volume, archival. Ordinary-volume duplicate cleanup and prevention use salesforce-admin; come here for hundreds-of-thousands+ dedup or third-party tools. LDV architecture uses salesforce-architect.
**101 skill packages** live under
`${CLAUDE_PLUGIN_ROOT}/skills/data/<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
`data` 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: "data"`. 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 data --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 101.
- `${CLAUDE_PLUGIN_ROOT}/skills/data/data-model-design-patterns/SKILL.md` — relationship choices, junctions, and normalisation on a multi-tenant platform
- `${CLAUDE_PLUGIN_ROOT}/skills/data/data-migration-planning/SKILL.md` — sequencing, dependencies, and the dry runs that keep a cutover honest
- `${CLAUDE_PLUGIN_ROOT}/skills/data/bulk-api-and-large-data-loads/SKILL.md` — batch sizing, parallel vs serial, and lock contention during a load
- `${CLAUDE_PLUGIN_ROOT}/skills/data/external-id-strategy/SKILL.md` — upsert keys, idempotency, and cross-system record identity
- `${CLAUDE_PLUGIN_ROOT}/skills/data/soql-query-optimization/SKILL.md` — selective filters, index usage, and reading the query plan
- `${CLAUDE_PLUGIN_ROOT}/skills/data/data-quality-and-governance/SKILL.md` — ownership, standards, and the metrics that keep quality from decaying
- `${CLAUDE_PLUGIN_ROOT}/skills/data/large-scale-deduplication/SKILL.md` — deduplicating at volume without a merge storm
- `${CLAUDE_PLUGIN_ROOT}/skills/data/data-archival-strategies/SKILL.md` — Big Objects, off-platform archives, and storage-limit relief
## 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/integration-pattern-selection.md` — read before moving data in or out at volume
- `${CLAUDE_PLUGIN_ROOT}/standards/decision-trees/performance-tuning.md` — SOQL, indexing, sharing recalculation and LDV symptoms
- `${CLAUDE_PLUGIN_ROOT}/standards/decision-trees/sharing-selection.md` — read when a data model change moves record visibility
## Run-time agents for this domain
Invoke one of these subagents when the ask is a whole workflow
rather than a single question:
- `data-loader-pre-flight` — Go/no-go checklist for a planned data load
- `data-migration-reconciler` — Data Migration Reconciliation
- `data-model-reviewer` — Review a data-model domain
- `duplicate-rule-designer` — Design a Matching Rule + Duplicate Rule pair
## Rules
1. Answer from the opened `data` 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.