npx skills add ...
npx skills add forcedotcom/sf-skills --skill platform-permission-set-generate
Generates correct, deployable Salesforce permission set metadata (PermissionSet XML) with object, field, user, and app permissions. Use this skill when creating or editing permission set metadata, object permissions, field-level security (FLS), tab visibility, or deploying permission sets.
npx skills add forcedotcom/sf-skills --skill platform-permission-set-generate
Use when generating or editing permission set metadata, or when granting object, field, user, and app permissions.
Start by defining the required permission set properties:
Naming conventions:
Sales_Manager_Access)Add CRUD permissions for standard and custom objects:
Define field permissions for sensitive or custom fields:
Important:
<required>true</required>:ObjectName.FieldName for field referencesAdd system-level permissions for features and capabilities:
Common permissions:
ApiEnabled: API accessViewSetup: View Setup menuManageUsers: User managementRunReports: Report executionSecurity review required for:
ViewAllData: Read all recordsModifyAllData: Edit all recordsManageUsers: User administrationMake applications and tabs visible to users:
Application visibility options:
Tab visibility options:
Visible: The tab is available on the All Tabs page and appears in the visible tabs for its associated app. Can be customized.Available: The tab is available on the All Tabs page. Individual users can customize their display to make the tab visible in any appNone: Not visibleCRITICAL - Tab Naming:
Grant access to custom code:
Specify license requirements and record type visibility:
Enable access to Agentforce Employee Agents for users assigned to this permission set:
Sales_Assistant_Agent trueField requirements:
Important:
Before deploying, verify:
<fieldPermissions><fieldPermissions> fails deployment. Required fields cannot have FLS; omit them entirely. Always confirm from object/field metadata that a field exists and is not required—never assume.__c for custom objects, fields, tabs) cause failure.Deploy using Salesforce CLI
<objectPermissions>
<allowCreate>true</allowCreate>
<allowRead>true</allowRead>
<allowEdit>true</allowEdit>
<allowDelete>false</allowDelete>
<modifyAllRecords>false</modifyAllRecords>
<viewAllRecords>false</viewAllRecords>
<viewAllFields>false</viewAllFields>
<object>Account</object>
</objectPermissions><fieldPermissions>
<editable>true</editable>
<readable>true</readable>
<field>Account.SSN__c</field>
</fieldPermissions><fields>
<fullName>FieldName__c</fullName>
<required>true</required>
</fields><userPermissions>
<enabled>true</enabled>
<name>ApiEnabled</name>
</userPermissions>
<userPermissions>
<enabled>true</enabled>
<name>RunReports</name>
</userPermissions><applicationVisibilities>
<application>Sales_Console</application>
<visible>true</visible>
</applicationVisibilities>
<tabSettings>
<tab>CustomTab__c</tab>
<visibility>Visible</visibility>
</tabSettings><classAccesses>
<apexClass>CustomController</apexClass>
<enabled>true</enabled>
</classAccesses>
<pageAccesses>
<apexPage>CustomPage</apexPage>
<enabled>true</enabled>
</pageAccesses><license>Salesforce</license>
<hasActivationRequired>false</hasActivationRequired>
<recordTypeVisibilities>
<recordType>Account.Business</recordType>
<visible>true</visible>
<default>true</default>
</recordTypeVisibilities>