forcedotcom/sf-skills

platform-agentexchange-partner-offers-configure

Enable or disable the org preference that controls whether a Salesforce org can receive partner offers from the Transactable Marketplace.

소스 보기
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Enabling Transactable Marketplace Receive Partner Offers Org Preference

This skill configures the enableTransactableMarketplaceReceivePartnerOffers org preference via the TransactableMarketplacePrivateOfferSettings Metadata API type, which controls whether a Salesforce org is eligible to receive partner offers through the Transactable Marketplace. It is required for subscriber orgs that participate in the TM partner offer flow.

Scope

  • In scope: Reading the current value of the pref, enabling or disabling it via Metadata API (TransactableMarketplacePrivateOfferSettings), and verifying the change took effect.
  • Out of scope: Creating or managing partner offer records, configuring marketplace listings, or any Apex/trigger changes related to offer processing.

Required Inputs

  • Target org alias or username: The org where the pref should be set. Ask if not provided.
  • Desired state: true (enable) or false (disable). Default: true.

Workflow

Phase 1 — Check current state

  1. Query the current preference value by running:
bash
   sf data query -q "SELECT Preference, Value FROM OrgPreference WHERE Preference = 'TransactableMarketplaceReceivePartnerOffers'" --target-org <alias> --use-tooling-api

If the record exists and Value = true, the pref is already enabled — confirm with the user before proceeding. If the query returns no rows, the pref is not yet set (defaults to false).

  1. Resolve the org's package directory to determine where to write metadata. Run this and use its output as <packageDir>:
bash
   jq -r '.packageDirectories[0].path // "force-app/main/default"' sfdx-project.json

Phase 2 — Apply the preference

  1. Write the TransactableMarketplacePrivateOfferSettings metadata file — load assets/org-pref-template.md for the exact XML structure, then write the file at:
text
   <packageDir>/settings/TransactableMarketplacePrivateOffer.settings

Set <enableTransactableMarketplaceReceivePartnerOffers>true</enableTransactableMarketplaceReceivePartnerOffers> (or false if disabling).

  1. Deploy the metadata to the target org. Before running the deploy, confirm with the user:
  • [ ] Confirmed the target org alias with the user (deploying to the wrong org is not easily reversible)
  • [ ] Confirmed the desired state (true/false) matches the user's intent
bash
   sf project deploy start --metadata TransactableMarketplacePrivateOfferSettings --target-org <alias>

Phase 3 — Verify

  1. Confirm the change by re-running the Tooling API query from step 1 and verifying the Value column matches the desired state.
  1. Report to the user — see Output Expectations below.

Rules / Constraints

RuleRationale
Always query the current value before writing metadataAvoids unnecessary deploys and detects conflicting changes
Use TransactableMarketplacePrivateOfferSettings as the metadata typeThis is the concrete type registered in the platform for this pref, not the generic OrgPreferenceSettings
The settings file must be named TransactableMarketplacePrivateOffer.settingsMetadata API requires the filename to match the settings node name
Do not hardcode force-app/main/default/Always read sfdx-project.json for the actual package directory
Never deploy without confirming the org alias with the userDeploying to the wrong org is not easily reversible

Gotchas

IssueResolution
Tooling API query returns no rowsPref is unset (defaults to false). Safe to create a new settings file.
Deploy fails with INVALID_TYPEThe metadata type name is TransactableMarketplacePrivateOfferSettings — check the --metadata flag value.
Deploy succeeds but value doesn't changeAnother settings file in the project may be overriding this one. Search for other TransactableMarketplacePrivateOffer.settings files in the project.
INSUFFICIENT_ACCESS_OR_READONLY on deployUser running the deploy must have the "Modify All Data" or org preference admin permission in the target org.
Pref not visible in UIenableTransactableMarketplaceReceivePartnerOffers is not surfaced in Setup UI — the Tooling API query is the only way to verify it.
Available from API version 67.0+ onlyThe type is available from API v67.0 — deploying against an older API version will fail.

Output Expectations

After completing all phases, report:

text
Org: <alias>
Preference: enableTransactableMarketplaceReceivePartnerOffers
Previous value: <true|false|unset>
New value: <true|false>
File written: <packageDir>/settings/TransactableMarketplacePrivateOffer.settings
Deploy status: Success

Reference File Index

FileWhen to read
assets/org-pref-template.mdPhase 2, step 3 — use as the exact XML structure for the settings file
examples/org-preference-settings.xmlTo verify the generated file matches expected format
같은 저장소의 Skills

더 많은 Skills

모든 Skills
forcedotcom
커뮤니티

automation-flow-generate

Generate Salesforce Flows using the MCP tool executemetadataaction. Use when the user asks to create, build, or generate a flow — including Screen, Autolaunched, Record-Triggered (before/after-save), Scheduled. Also trigger for flow-like requests such as \"when a record is created\", \"trigger daily at\", \"send an email when\", \"update the field when\", \"automate\", \"workflow\", or \"flow XML/metadata\". This is the only skill for Salesforce Flow generation.

설치 수
1
GitHub Stars
1천
업데이트
9월 18일
forcedotcom
커뮤니티

automation-sandbox-post-copy-config-generate

Generate the JSON config file that the Salesforce sandbox post-copy automation tool consumes, from a customer SOP in any format (PDF, xlsx, csv, JSON, docx, Markdown, plain text, or a screenshot of an endpoint table). Use when the user asks to create, build, generate, produce, or convert a post-copy or post-refresh automation config — turning a sandbox-refresh SOP into a JSON array of OutboundMessages, RemoteSiteSettings, and ScheduledApex entries with ConfigurationName, Label, Fields, IsActive, and ExecutionOrder. Also trigger for phrasings like \"post-copy config\", \"post-refresh automation JSON\", \"update the outbound message (OBM) endpoints after refresh\", \"convert this SOP to config\", \"remote site settings JSON\", \"refresh planner to JSON\", or \"sandbox refresh config\". DO NOT TRIGGER when: user wants to deploy the generated config to an org (use platform-metadata-deploy), or apply/execute/run/dry-run the post-copy automation JSON against a sandbox (use automation-sandbox-post-copy-configure).

설치 수
1
GitHub Stars
1천
업데이트
9월 18일
forcedotcom
커뮤니티

platform-apex-generate

Primary Apex authoring skill for class generation, refactoring, and review. ALWAYS ACTIVATE when the user mentions Apex, .cls, triggers, or asks to create/refactor a class (service, selector, domain, batch, queueable, schedulable, invocable, DTO, utility, interface, abstract, exception, REST resource). Use this skill for requests involving SObject CRUD, mapping collections, fetching related records, scheduled jobs, batch jobs, trigger design, @AuraEnabled controllers, @RestResource endpoints, custom REST APIs, or code review of existing Apex.

설치 수
1
GitHub Stars
1천
업데이트
9월 18일
forcedotcom
커뮤니티

platform-apex-logs-debug

Salesforce debug log analysis and troubleshooting with 100-point scoring. TRIGGER when: user analyzes debug logs, hits governor limits, reads stack traces, or touches .log files from Salesforce orgs. DO NOT TRIGGER when: running Apex tests (use platform-apex-test-run), generating or fixing Apex code (use platform-apex-generate), or Agentforce session tracing (use agentforce-observe).

설치 수
1
GitHub Stars
1천
업데이트
9월 18일