smithery/agentgill

salesforce-admin

Salesforce administration using Salesforce CLI (sf/sfdx).

Installation

$ npx skills add smithery/agentgill --skill salesforce-admin

Summary

  • Salesforce administration using Salesforce CLI (sf/sfdx).
  • Use when working with Salesforce metadata, custom objects, fields, users, profiles, permission sets, Flows, automation, or data management.
  • Triggers on tasks involving sf/sfdx commands, Salesforce Setup configuration, metadata deployment, user security administration, or Salesforce data operations.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,732 B
  • docs SUMMARY.md 381 B

History

  1. First recorded snapshot · 0 installs

SKILL.md

Salesforce Admin

Salesforce administration via CLI with best practices for metadata management, security, automation, and data operations.

Quick Reference

Common sf CLI Commands

# Authentication
sf org login web --alias myorg              # Login via browser
sf org login web --alias myorg --instance-url https://test.salesforce.com  # Sandbox
sf org list                                  # List connected orgs
sf org display --target-org myorg           # Show org details

# Metadata Operations
sf project retrieve start --metadata "CustomObject:Account"    # Retrieve specific
sf project retrieve start --manifest manifest/package.xml      # Retrieve from manifest
sf project deploy start --source-dir force-app                 # Deploy directory
sf project deploy start --metadata "CustomField:Account.Custom__c"  # Deploy specific

# Data Operations
sf data query --query "SELECT Id, Name FROM Account LIMIT 10" --target-org myorg
sf data export tree --query "SELECT Id, Name FROM Account" --output-dir data/
sf data import tree --files data/Account.json --target-org myorg

# User Management
sf org assign permset --name MyPermSet --target-org myorg
sf org generate password --target-org myorg

Workflow Decision Tree

  1. Creating/modifying metadata → Use sf project retrieve then edit XML, then sf project deploy
  2. User/security changes → See [references/security.md](references/security.md)
  3. Building automation → See [references/automation.md](references/automation.md)
  4. Data operations → See [references/data-management.md](references/data-management.md)
  5. Object/field work → See [references/objects-fields.md](references/objects-fields.md)

Project Structure

Standard Salesforce DX project layout:

force-app/
└── main/
    └── default/
        ├── classes/           # Apex classes
        ├── objects/           # Custom objects and fields
        │   └── MyObject__c/
        │       ├── MyObject__c.object-meta.xml
        │       └── fields/
        │           └── MyField__c.field-meta.xml
        ├── flows/             # Flow definitions
        ├── permissionsets/    # Permission sets
        ├── profiles/          # Profiles
        ├── triggers/          # Apex triggers
        └── layouts/           # Page layouts
manifest/
└── package.xml               # Deployment manifest

Naming Conventions (Best Practices)

Type Convention Example
Custom Object PascalCase + __c Invoicec, OrderItemc
Custom Field PascalCase + __c Total_Amount__c, Is_Active__c
Flow PascalCase, descriptive AccountAfterInsert_Handler
Permission Set PascalCase, role-based SalesManagerAccess
Apex Class PascalCase AccountTriggerHandler
Apex Trigger Object + Trigger AccountTrigger

Common Tasks

Create a Custom Object

  1. Retrieve existing objects for reference:

``bash sf project retrieve start --metadata "CustomObject" ``

  1. Create object metadata XML at force-app/main/default/objects/MyObjectc/MyObjectc.object-meta.xml
  1. Deploy:

``bash sf project deploy start --source-dir force-app/main/default/objects/MyObject__c ``

Add a Custom Field

  1. Create field XML at force-app/main/default/objects/Account/fields/My_Field__c.field-meta.xml
  1. Deploy:

``bash sf project deploy start --metadata "CustomField:Account.My_Field__c" ``

Deploy with Validation Only (Checkonly)

sf project deploy start --source-dir force-app --dry-run --test-level RunLocalTests

Run Apex Tests

sf apex run test --target-org myorg --test-level RunLocalTests --wait 10
sf apex run test --class-names MyTestClass --target-org myorg

Resources

  • [references/objects-fields.md](references/objects-fields.md) - Object/field metadata templates and patterns
  • [references/security.md](references/security.md) - Profiles, permission sets, sharing rules
  • [references/automation.md](references/automation.md) - Flows, Process Builder migration, approval processes
  • [references/data-management.md](references/data-management.md) - Import/export, deduplication, data quality