Salesforce Architecture Variants
jeremylongshore/tons-of-skills-marketplace
Analyze Salesforce direct API, middleware, event-driven, replicated-data, and hybrid integration architectures against explicit constraints.
A skill your agent uses to enable Salesforce Change Data Capture (CDC) on a standard or custom object, configure a custom event channel, set a filter expression, or add enrichment fields.
$ npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install forcedotcom/sf-skills integration-eventing-cdc-configure --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/integration-eventing-cdc-configure .claude/skills/integration-eventing-cdc-configure && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "integration-eventing-cdc-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/integration-eventing-cdc-configure into .claude/skills/integration-eventing-cdc-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "integration-eventing-cdc-configure", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/forcedotcom/sf-skills/tree/main/skills/integration-eventing-cdc-configureType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install forcedotcom/sf-skills integration-eventing-cdc-configure --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/integration-eventing-cdc-configure .agents/skills/integration-eventing-cdc-configure && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "integration-eventing-cdc-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/integration-eventing-cdc-configure into .agents/skills/integration-eventing-cdc-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "integration-eventing-cdc-configure", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install forcedotcom/sf-skills integration-eventing-cdc-configure --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/integration-eventing-cdc-configure .cursor/skills/integration-eventing-cdc-configure && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "integration-eventing-cdc-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/integration-eventing-cdc-configure into .cursor/skills/integration-eventing-cdc-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "integration-eventing-cdc-configure", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/forcedotcom/sf-skills.git --path skills/integration-eventing-cdc-configure--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install forcedotcom/sf-skills integration-eventing-cdc-configure --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/integration-eventing-cdc-configure .gemini/skills/integration-eventing-cdc-configure && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "integration-eventing-cdc-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/integration-eventing-cdc-configure into .gemini/skills/integration-eventing-cdc-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "integration-eventing-cdc-configure", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install forcedotcom/sf-skills integration-eventing-cdc-configureInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/integration-eventing-cdc-configure .github/skills/integration-eventing-cdc-configure && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "integration-eventing-cdc-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/integration-eventing-cdc-configure into .github/skills/integration-eventing-cdc-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "integration-eventing-cdc-configure", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install forcedotcom/sf-skills integration-eventing-cdc-configure --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/integration-eventing-cdc-configure .opencode/skills/integration-eventing-cdc-configure && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "integration-eventing-cdc-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/integration-eventing-cdc-configure into .opencode/skills/integration-eventing-cdc-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "integration-eventing-cdc-configure", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
integration-eventing-cdc-configureA skill your agent uses to enable Salesforce Change Data Capture (CDC) on a standard or custom object, configure a custom event channel, set a filter expression, or add enrichment fields.
Integration Eventing Cdc Configure is an agent skill from forcedotcom/sf-skills. Use to enable Salesforce Change Data Capture (CDC) on a standard or custom object, configure a custom event channel, set a filter expression, or add enrichment fields. TRIGGER broadly on any of: 'enable CDC', 'enable Change Data Capture', 'turn on CDC', 'subscribe X to change events', 'only emit events for', 'filter change events', 'enrich change events', 'create a custom event channel'; or any mention of CDC, change events, PlatformEventChannel, PlatformEventChannelMember, EnrichedField, ChangeEvents channel…
Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files and assets (for example `references/deploy-troubleshooting.md` and `references/filter-expressions.md`).
It sits in Sales & Support, covering Event-driven systems and CRM management. It works with Salesforce. The repository describes itself as: Salesforce's curated collection of agent skills for building applications. Optimized for Agentforce Vibes, compatible with all AI tools. The licence is Apache-2.0.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit e5164d9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
sfFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
developer.salesforce.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Integration Eventing Cdc Configure loads about 3.8k tokens when it runs, and up to ~6.1k if it reads all its reference files. Until then it costs about 247 tokens; SKILL.md has 1,535 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from forcedotcom/sf-skills at commit e5164d9, republished under its Apache-2.0 licence (© forcedotcom). 1,535 words, ~3,750 tokens.
.claude/skills/integration-eventing-cdc-configure/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Generate the metadata that subscribes Salesforce objects to Change Data Capture: PlatformEventChannelMember files for the default ChangeEvents channel or a custom channel, and PlatformEventChannel files for new custom channels. Covers enrichment fields, filter expressions, and the canonical naming and value formats that the Metadata API actually accepts (which differ from values that appear in many internal test fixtures and code-search hits).
PlatformEventChannelMember and PlatformEventChannel metadata for CDC. Subscribing standard objects, custom objects, or both. Configuring enrichment fields. Configuring filter expressions. Defining custom data channels.PlatformEvent). Pub/Sub API or external Kafka/Bayeux configuration. Pricing/limits guidance — refer the user to the CDC Developer Guide. Programmatic event-bus subscribers in Apex.Before generating, confirm with the user if not already clear:
ChangeEvents) or a custom channel? If custom, what's the channel label?Gather or infer before proceeding:
Account, Lead, Order__c. The skill internally translates this to the ChangeEvent entity name (see Workflow step 2).ChangeEvents (default) or the developer name of a custom channel ending in __chn.Status__c != null).Defaults unless specified:
ChangeEvents (the default CDC channel — no path prefix).If the user provides a clear, complete request, generate immediately without unnecessary back-and-forth.
All steps are sequential. Do not skip or reorder.
Before generating anything, know the only valid CDC metadata types: CDC is expressed entirely through PlatformEventChannelMember (one per subscribed entity) and PlatformEventChannel (only for custom channels). Do NOT use <ChangeDataCapture>, .changeDataCapture-meta.xml, changeDataCapture/ directories, EnableChangeDataCapture, or ManagedEventSubscription — these are not in scope for CDC. If you find yourself writing any of them, stop and use a PlatformEventChannelMember file instead.
Identify the channel — if the user names a custom channel, you'll generate a PlatformEventChannel file (see step 4). Otherwise use the literal value ChangeEvents for the default channel.
Translate source entity to ChangeEvent entity name — <selectedEntity> is the ChangeEvent type, NOT the source object:
| Source object | <selectedEntity> value |
|---|---|
Account | AccountChangeEvent |
Lead | LeadChangeEvent |
Contact | ContactChangeEvent |
Order__c (custom) | Order__ChangeEvent |
MyThing__c (custom) | MyThing__ChangeEvent |
For standard objects: append ChangeEvent. For custom objects: replace the trailing __c with __ChangeEvent (the double-underscore is preserved).
Generate the channel-member file — one file per (entity, channel) pair. The filename and fullName always use a SINGLE underscore between the entity stem and ChangeEvent — this is independent of how selectedEntity is formatted in the XML body. For custom objects, drop the __c from the source name when forming the filename:
| Source object | Filename (and fullName) | <selectedEntity> (in XML) |
|---|---|---|
Account | Account_ChangeEvent.platformEventChannelMember-meta.xml | AccountChangeEvent |
Lead | Lead_ChangeEvent.platformEventChannelMember-meta.xml | LeadChangeEvent |
Order__c | Order_ChangeEvent.platformEventChannelMember-meta.xml (NOT Order__ChangeEvent) | Order__ChangeEvent |
MyThing__c | MyThing_ChangeEvent.platformEventChannelMember-meta.xml (NOT MyThing__ChangeEvent) | MyThing__ChangeEvent |
The custom-object case is the easiest place to slip — the filename uses single underscore, the selectedEntity keeps its double underscore. Read assets/PlatformEventChannelMember-template.xml as the structural template.
For a custom channel, generate a PlatformEventChannel file — required if any member references a non-default channel. Derive a DeveloperName from the user's label: strip spaces and non-alphanumeric characters, convert to CamelCase, then always append the literal suffix __chn. The filename and the channel's <eventChannel> reference must use this exact form, otherwise the deploy fails with Invalid channel name:
| User says | DeveloperName | Filename |
|---|---|---|
Partner Sync | PartnerSync__chn | PartnerSync__chn.platformEventChannel-meta.xml (NOT Partner_Sync... or PartnerSync...) |
Order Updates | OrderUpdates__chn | OrderUpdates__chn.platformEventChannel-meta.xml |
data sync | DataSync__chn | DataSync__chn.platformEventChannel-meta.xml |
Members on this channel reference it by the same DeveloperName: <eventChannel>PartnerSync__chn</eventChannel>. Read assets/PlatformEventChannel-template.xml.
Add enrichment fields if requested — repeat the <enrichedFields><name>FIELD_API_NAME</name></enrichedFields> block for each field. The name must be a single-hop API name on the source entity — verified working with: standard lookup IDs (OwnerId, ParentId), custom lookup fields (MyLookup__c), and custom non-relationship fields (Region__c, Status__c). Relationship traversals like Owner.Name or Parent.Account.Industry are rejected by deploy with "The selected field, X.Y, isn't valid".
Add a filter expression if requested — wrap the predicate in <filterExpression>...</filterExpression>. The body is a WHERE-clause body without the WHERE keyword (e.g. Status__c != null, not WHERE Status__c != null). For supported operators, field types, and pitfalls, read references/filter-expressions.md.
| Constraint | Rationale |
|---|---|
<selectedEntity> is the ChangeEvent type name, not the source object name | The Metadata API binds the member to a ChangeEvent entity — passing Account directly fails with "invalid event in selectedEntity". |
Member fullName uses single underscore: Account_ChangeEvent | The double-underscore form (Account__ChangeEvent) is parsed as <namespace>__<name> and rejected: "Cannot create a new component with the namespace: Account". |
Default channel value is exactly ChangeEvents — no path prefix | Older fixtures and some docs show data/ChangeEvents; the deploy returns "Unable to find the specified channel" for that value. |
| Enrichment field names are single-hop API names on the source entity | Standard (OwnerId), custom lookup (MyLookup__c), and custom non-relationship (Region__c) all validate. Traversals like Owner.Name are rejected: "The selected field, X.Y, isn't valid". |
<filterExpression> body has no WHERE keyword | Deploy returns "filter expression has syntax errors: unexpected token: 'WHERE'". |
Filter cannot reference IsDeleted or do relationship traversal (Owner.Username) | Deploy rejects with "field is invalid". |
DateTime fields support only equality in filters (=, !=) — not < / > | Deploy returns "Only equality operators are supported for this field type or value". Use a named date literal: LastModifiedDate = TODAY. |
| Filter RHS must be a literal — no field-to-field comparison | BillingCity = ShippingCity returns "unexpected token: 'ShippingCity'". |
Compound fields (e.g. BillingAddress) require dotted component access in filter | BillingAddress.City = 'X' deploys; flat BillingCity is rejected as "field is invalid"; raw BillingAddress is rejected as "has to be used with a component field". Note this is the OPPOSITE of <enrichedFields>, which uses flat names. |
Custom channel filename ends with __chn before the meta-xml suffix | Salesforce's MDAPI naming convention; mismatch causes deploy ambiguity. |
Custom channel XML must include <channelType>data</channelType> | Without data, the channel is rejected for CDC (other types exist for streaming/event channels). |
| Source custom objects must already exist (or be deployed in the same transaction) | The ChangeEvent entity for Foo__c doesn't exist until Foo__c does; member deploy fails otherwise. |
Never generate a PlatformEventChannel file for the default ChangeEvents channel | The default channel is system-provided. Reference it via <eventChannel>ChangeEvents</eventChannel> on members, but only custom (__chn) channels need a channel-meta file. |
PlatformEventChannelMember accepts ONLY four elements: <enrichedFields>, <eventChannel>, <filterExpression>, <selectedEntity> | Adding <description>, <isActive>, <masterLabel>, or any other element fails XML schema validation: "Element {...} invalid at this location". Stick to the four documented elements. |
PlatformEventChannel accepts ONLY two elements: <channelType> and <label> | Adding <masterLabel>, <description>, etc. produces "Element {...}masterLabel invalid at this location in type PlatformEventChannel". Use <label>, not <masterLabel>. |
Generated metadata files only — never run sf project deploy start from this skill | This skill produces artifacts; deployment is a separate lifecycle concern. |
| Issue | Resolution |
|---|---|
Unable to find the specified channel | Set <eventChannel>ChangeEvents</eventChannel> (no data/ prefix). |
The PlatformEventChannelMember can't be created because it references an invalid event in the "selectedEntity" field | Use the ChangeEvent name, not the source object: AccountChangeEvent, not Account. |
Cannot create a new component with the namespace: <Object> | Rename the file to use a single underscore: Account_ChangeEvent..., not Account__ChangeEvent.... |
The selected field, X.Y, isn't valid (in <enrichedFields>) | Replace Owner.Name with OwnerId. CDC enriches the lookup automatically; only single-hop field API names validate. |
filter expression has syntax errors: unexpected token: 'WHERE' | Remove the WHERE keyword. The body is the predicate only. |
The BillingCity field in the filter expression is invalid (or any flat Address component) | Use the compound dotted form: BillingAddress.City, not BillingCity. See references/filter-expressions.md for the full compound-field matrix. |
| Custom-object member fails with "ChangeEvent doesn't exist" | The source object isn't deployed yet. Ensure the Foo__c object metadata is in the same deploy or already in the org. |
DUPLICATE_VALUE on second deploy | The member is already subscribed. Either delete first or skip — CDC doesn't support upsert on members directly. |
sf infra error (TypeInferenceError, DeployMetadata): Could not infer a metadata type for a .changeDataCapture-meta.xml file | That file extension and metadata type don't exist. Replace the changeDataCapture/<Entity>.changeDataCapture-meta.xml file with a platformEventChannelMembers/<Entity>_ChangeEvent.platformEventChannelMember-meta.xml file. |
User says "subscribe Order__c" but means standard Order | Confirm — OrderChangeEvent (standard) and Order__ChangeEvent (custom) are different entities. |
Deliverables:
force-app/.../platformEventChannelMembers/<Entity>_ChangeEvent.platformEventChannelMember-meta.xml per subscribed entity.force-app/.../platformEventChannels/<DevName>__chn.platformEventChannel-meta.xml per custom channel (if any).File structure follows the templates in assets/.
After receiving the generated files, the user can verify them with sf project deploy start --dry-run -d <path> --target-org <alias> before deploying. If a dry-run surfaces an unfamiliar error, references/deploy-troubleshooting.md maps the common deploy errors to their metadata-side fixes.
| Need | Delegate to |
|---|---|
| Generate the source custom object | platform-custom-object-generate skill |
| Generate custom fields referenced by enrichment or filter | platform-custom-field-generate skill |
| Build a permission set for users who consume change events | platform-permission-set-generate skill |
| File | When to read |
|---|---|
assets/PlatformEventChannelMember-template.xml | Step 3 — starting structure for a channel member |
assets/PlatformEventChannel-template.xml | Step 4 — starting structure for a custom channel |
references/filter-expressions.md | Step 6 — for the supported operators and field-type matrix when writing a filter expression |
references/deploy-troubleshooting.md | When a user reports a dry-run deploy error and asks for help diagnosing it |
© forcedotcom, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (references, assets) in skills/integration-eventing-cdc-configure of forcedotcom/sf-skills.
Open the folder on GitHubat commit e5164d9
Integration Eventing Cdc Configure next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Integration Eventing Cdc Configure this skillforcedotcom/sf-skills | 1.1k | — | ~3.8k | Automated safety check: Pass | Apache-2.0 | |
| Salesforce Architecture Variantsjeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Soql Lib Query Builderbeyond-the-cloud-dev/soql-lib | 154 | — | ~4.3k | Automated safety check: Pass | MIT | |
| Sf DatacloudJaganpro/sf-skills | 424 | — | ~2.7k | Automated safety check: Pass | MIT | |
| Soql Lib Selectorbeyond-the-cloud-dev/soql-lib | 154 | — | ~2k | Automated safety check: Pass | MIT | |
| Dev SetupPortwood-Global-Solutions/Portwood | 125 | — | ~1.1k | Automated safety check: Pass | Apache-2.0 |
jeremylongshore/tons-of-skills-marketplace
Analyze Salesforce direct API, middleware, event-driven, replicated-data, and hybrid integration architectures against explicit constraints.
beyond-the-cloud-dev/soql-lib
Builds Salesforce SOQL queries using the SOQL Lib fluent builder API (SOQL.cls).
Jaganpro/sf-skills
Salesforce Data Cloud product orchestrator for connect→prepare→harmonize→segment→act workflows.
beyond-the-cloud-dev/soql-lib
Creates Salesforce Apex selector classes using the SOQL Lib selector pattern.
Portwood-Global-Solutions/Portwood
Get from a fresh clone of Portwood to a working, fully-tested Salesforce org.
Jaganpro/sf-skills
Creates and validates Salesforce Flows with 110-point scoring.
forcedotcom/sf-skills
Declared architecture snapshot for one Agentforce agent: planner, topics, actions, flows, Apex, prompt templates, and NGA plugins.
forcedotcom/sf-skills
Data Cloud 360° view of a single Agentforce session. An agent skill from forcedotcom/sf-skills.
forcedotcom/sf-skills
Apply a Salesforce sandbox post-copy automation JSON config against a target org.
forcedotcom/sf-skills
Apply a Salesforce sandbox post-copy automation JSON config against a target org.
forcedotcom/sf-skills
Apply SLDS-compliant UI using the correct blueprints, styling hooks, utility classes, and icons.
forcedotcom/sf-skills
Lightning Web Components with PICKLES methodology and 165-point scoring.
Works with
Categories
A skill your agent uses to enable Salesforce Change Data Capture (CDC) on a standard or custom object, configure a custom event channel, set a filter expression, or add enrichment fields. Integration Eventing Cdc Configure is an agent skill from forcedotcom/sf-skills. Use to enable Salesforce Change Data Capture (CDC) on a standard or custom object, configure a custom event channel, set a filter expression, or add enrichment fields.
Integration Eventing Cdc Configure fits situations like: enable Salesforce Change Data Capture (CDC) on a standard; configure a custom event channel; set a filter expression; add enrichment fields.
Run `npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a claude-code`. Or copy the skill folder (skills/integration-eventing-cdc-configure in forcedotcom/sf-skills) into .claude/skills/integration-eventing-cdc-configure in your project. Claude Code loads it when a task matches its description.
Run `npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a codex`. Or copy the skill folder (skills/integration-eventing-cdc-configure in forcedotcom/sf-skills) into .agents/skills/integration-eventing-cdc-configure in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add forcedotcom/sf-skills --skill integration-eventing-cdc-configure -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/integration-eventing-cdc-configure, .gemini/skills/integration-eventing-cdc-configure, .github/skills/integration-eventing-cdc-configure and .opencode/skills/integration-eventing-cdc-configure in your project.
Going by SKILL.md and its folder, Integration Eventing Cdc Configure needs the command-line tools its instructions call (sf).
SKILL.md names 1 domain. As links in the text: developer.salesforce.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Integration Eventing Cdc Configure is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Integration Eventing Cdc Configure: Salesforce Architecture Variants (jeremylongshore/tons-of-skills-marketplace, 2.8k stars), Soql Lib Query Builder (beyond-the-cloud-dev/soql-lib, 154 stars), Sf Datacloud (Jaganpro/sf-skills, 424 stars) and Soql Lib Selector (beyond-the-cloud-dev/soql-lib, 154 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
forcedotcom (a GitHub organization) maintains it in forcedotcom/sf-skills, which has 1,060 GitHub stars. The repository holds 251 skills in this directory. The repository was last updated on October 7, 2026.
Source: forcedotcom/sf-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.