Skip to content
Agentmart
Submit a tool

sf-deploy

Deploy and validate Salesforce metadata using @jterrats/profiler for complete profile retrieval and @jterrats/smart-deployment for dependency-aware wave…

Skill by jterratsdev

IndexedBSD-3-Clause
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/jterratsdev-sf-deploy

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Deploy and validate Salesforce metadata using @jterrats/profiler for complete profile retrieval and @jterrats/smart-deployment for dependency-aware wave deployments. USE FOR: deploy, validate, sf deploy, profile retrieve, profile compare, smart deployment, wave deployment, metadata deployment, deploy validation, deployment pipeline. Reusable by Developer, DevOps, and Architect profiles.

Use cases: devops, data, sales

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/sf-deploy

What's inside

Skill name
sf-deploy
Description
Deploy and validate Salesforce metadata using @jterrats/profiler for complete profile retrieval and @jterrats/smart-deployment for dependency-aware wave deployments. USE FOR: deploy, validate, sf deploy, profile retrieve, profile compare, smart deployment, wave deployment, metadata deployment, deploy validation, deployment pipeline. Reusable by Developer, DevOps, and Architect profiles.
License
BSD-3-Clause
Instructions
228 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Salesforce Deploy & Validate

## Prerequisites

| Tool | Check | Install |
|------|-------|---------|
| Salesforce CLI | `sf --version` | [https://developer.salesforce.com/tools/salesforcecli](https://developer.salesforce.com/tools/salesforcecli) |
| @jterrats/profiler | `sf plugins inspect @jterrats/profiler` | `sf plugins install @jterrats/profiler --force` |
| @jterrats/smart-deployment | `sf plugins inspect @jterrats/smart-deployment` | `sf plugins install @jterrats/smart-deployment --force` |

Before proceeding, run this check and install anything missing:

```bash
sf plugins inspect @jterrats/profiler 2>/dev/null || sf plugins install @jterrats/profiler --force
sf plugins inspect @jterrats/smart-deployment 2>/dev/null || sf plugins install @jterrats/smart-deployment --force
```

> **Note:** The `--force` flag is required because these are unsigned community plugins.
> Without it, `sf plugins install` will prompt for interactive confirmation that blocks
> non-interactive execution (e.g., when an AI agent runs the command).

---

## Active Job Monitoring (CRITICAL)

When you execute **any** command from this skill (deploy, validate, test run, analyze),
you MUST wait for it to complete. **Never** ask the user to check the result or suggest
reviewing it later. You own the job from start to finish:

- **Synchronous CLI commands:** Wait for the command to return and report the result.
- **Async/long-running deploys:** Poll with `sf project deploy report` until status
  is `Succeeded` or `Failed`.
- **Test runs:** Wait for `sf apex test run` to complete. Report pass/fail count,
  coverage, and any errors.
- **GitHub Actions (if triggered):** Use `gh run watch <run-id>` or poll
  `gh run view <run-id>` until the workflow concludes. Report the final conclusion.

After completion, always report: **status**, **duration**, and **actionable next steps**
if there were failures.

---

## 1. Profile Retrieval (`sf profiler`)

### Retrieve Profiles with Full Dependencies

`sf profiler retrieve` guarantees complete profile metadata by automatically
resolving all dependencies (Apex Classes, Custom Objects, Custom Permissions,
Tabs, Flows, Layouts, etc.).

```bash
# Retrieve all profiles from the target org
sf profiler retrieve -o <alias>

# Retrieve specific profiles (comma-separated)
sf profiler retrieve -o <alias> --name "Admin,Standard User"

# Fast mode: use local project metadata instead of listing from org
sf profiler retrieve -o <alias> --from-project

# Include Field Level Security
sf profiler retrieve -o <alias> --all-fields

# Exclude managed package metadata
sf profiler retrieve -o <alias> --exclude-managed

# Dry run: preview without writing files
sf profiler retrieve -o <alias> --dry-run
```

**Best practice:** Always use `--from-project` when local metadata exists.
It skips the org describe call and is ~10x faster (~3s vs ~30s).

### Compare Profiles Across Environments

```bash
# Compare local profiles vs a single org
sf profiler compare -o <alias>

# Compare across multiple orgs (dev, qa, prod)
sf profiler compare --sources "dev,qa,prod" --name "Admin"

# Export comparison as HTML matrix
sf profiler compare --sources "dev,qa,prod" --output-format html --output-file comparison.html

# JSON output for automation
sf profiler compare -o <alias> --output-format json
```

### Generate Profile Documentation

```bash
# Generate markdown docs for all profiles
sf profiler docs

# Specific profiles to a custom directory
sf profiler docs --name "Admin,Custom Profile" --output-dir profile-docs
```

---

## 2. Smart Deployment (`sf smart-deployment`)

### Analyze Dependencies

Always analyze before deploying. This builds the dependency graph and identifies
optimal deployment waves.

```bash
# Analyze only (no deploy)
sf smart-deployment analyze
```

Review the output: it shows the dependency graph, wave breakdown, and any
circular dependencies that need manual resolution.

### Validate (Dry Run)

```bash

From jterratsdev/smart-deployment, BSD-3-Clause.

More from jterratsdev/smart-deployment

Signals

Stars
0
Forks
0
Open issues
14
Last commit (this folder)
Aug 5, 2026 (2 months ago)
Last release
Sep 29, 2026 (29 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
BSD-3-Clause
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from jterratsdev

Cite this page

sf-deploy skill. Agent Mart. https://agentmart.dev/skills/jterratsdev-sf-deploy (last updated 2026-10-24)