Loading...
Loading...
Use this skill when users need to create, generate, or modify Salesforce Sharing Rules metadata. TRIGGER when: users mention sharing rules, record sharing, criteria-based sharing, role-based sharing, guest user sharing, portal user sharing, sharingRules, sharingCriteriaRules, sharingGuestRules, sharingOwnerRules, .sharingRules-meta.xml files, or ask to share records with specific roles or groups. Also trigger when users want to configure record-level access beyond org-wide defaults (OWD), share object records with roles, groups, or guest users, or set up Experience Site guest user record visibility. SKIP when: user needs permission sets or profiles (use platform-permission-set-generate), or needs object-level security rather than record-level sharing (use platform-permission-set-generate).
npx skill4agent add forcedotcom/sf-skills platform-sharing-rules-generatesharingCriteriaRulessharingOwnerRulessharingGuestRulesplatform-permission-set-generateAccountProperty__csharingCriteriaRulessharingOwnerRulessharingGuestRulesReadEditReadincludeRecordsOwnedByAlltrueincludeHVUOwnedRecordsfalseaccountSettingsNonesfdx-project.jsonsharingRules/<packageDir>/sharingRules/<ObjectName>.sharingRules-meta.xmlsf project retrieve start --metadata "SharingRules:<ObjectName>" --target-org <org>references/rule-types.mdaccountSettingsNonesharedTo<guestUser><role><group>references/rule-types.md.sharingRules-meta.xml<SharingRules><fullName><label><packageDir>/sharingRules/<ObjectName>.sharingRules-meta.xml<SharingRules xmlns="http://soap.sforce.com/2006/04/metadata"><fullName><label><accessLevel>ReadEdit<includeRecordsOwnedByAll><criteriaItems><field><operation><value><sharedTo><guestUser><role><group><includeHVUOwnedRecords><includeRecordsOwnedByAll><sharedFrom><sharedTo><role><roleAndSubordinates><group><accountSettings><caseAccessLevel><contactAccessLevel><opportunityAccessLevel>| Constraint | Rationale |
|---|---|
One | Platform requirement — multiple files cause deployment errors |
Guest rules must use | Using |
Account rules require | Without it: "AccountSettings is required for account sharing rules" |
| Missing it causes: "Required field is missing: sharingCriteriaRules" |
| Missing it causes deployment failure |
| Criteria field values must exist as picklist values on the org | Invalid values cause: "Picklist value does not exist" |
Never hardcode file paths — resolve from | Customer projects use custom package directories |
| Issue | Resolution |
|---|---|
Guest rule uses | Replace with |
Account rule missing | Add |
Criteria rule missing | Add |
| Picklist value mismatch | Query the org for valid values before generating criteria |
| Appending duplicates existing rule name | Check existing |
| Guest user nickname not found | Query: |
<packageDir>/sharingRules/<ObjectName>.sharingRules-meta.xml| Need | Delegate to |
|---|---|
| Permission set configuration | |
| Custom object creation (if target object doesn't exist) | |
| File | When to read |
|---|---|
| Phase 2 — before generating any rule, to get the complete XML schema for each rule type |