npx skills add ...
npx skills add forcedotcom/sf-skills --skill generating-permission-set
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 generating-permission-set
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