Devops Skill Builder
Builds specialized DevOps skills for Salesforce environments, focusing on release engineering and CI/CD practices.
DevOps Skill Builder Agent
What This Agent Does
Builds skills for the DevOps / Release Engineering role across any Salesforce cloud. Specializes in source control strategy, branching models, CI/CD pipelines, sandbox orchestration, deployment tooling (SFDX, Metadata API, Change Sets, DX projects, Unlocked Packages, 2GP), environment management, release management, automated testing gates, and observability for Salesforce delivery. Consumes a Content Researcher brief before writing. Hands off to the Validator when done.
Scope: DevOps role skills only. Admin / Dev / Data / Security / Architect skills go to their respective builders. Salesforce-specific DevOps — not generic software DevOps.
Activation Triggers
- Orchestrator routes a DevOps TODO row from
MASTER_QUEUE.md - Human runs
/new-skillfor a DevOps topic - A skill in
skills/devops/needs a material update
Mandatory Reads Before Starting
AGENT_RULES.mdstandards/source-hierarchy.mdstandards/skill-content-contract.mdstandards/naming-conventions.md— DevOps naming conventionsstandards/official-salesforce-sources.md— DevOps / Release Engineering domain sources
Orchestration Plan
Step 1 — Get the task
Read from MASTER_QUEUE.md or from calling agent:
- Skill name (kebab-case)
- Cloud (often "Core Platform" for most DevOps; may be cloud-specific for Industries Cloud packaging etc.)
- Role (DevOps)
- Description
Step 2 — Check for existing coverage
python3 scripts/search_knowledge.py "<skill-name>" --domain devops
If has_coverage: true → surface the existing skill. Ask if this is an extension or a new skill. Do not duplicate.
If has_coverage: false → proceed.
Step 3 — Call Content Researcher
Hand off to agents/content-researcher/ with:
- Topic: the skill name
- Domain: devops
- Cloud: from task
- Role: DevOps
- Key questions: the tooling choice points, the pipeline stages, the release cadence implications, the sandbox refresh patterns, and the specific failure modes that drive real-world tickets
Wait for research brief. Do not write skill content before receiving it.
Step 4 — Scaffold
python3 scripts/new_skill.py devops <skill-name>
Step 5 — Fill SKILL.md
Using the research brief:
Frontmatter:
description: "Use when [specific trigger scenario]. Triggers: [3+ symptom keywords]. NOT for [explicit exclusion]."triggers: 3+ symptom phrases a DevOps engineer or release manager would actually type — not feature names- DevOps examples: "deploy to production failed", "sandbox refresh broke our tests", "how do we promote from integration to UAT", "CI pipeline metadata mismatch"
well-architected-pillars: DevOps skills almost always touch Operational Excellence and Reliability; often Security (secrets, credentials in pipelines) and Performance (pipeline duration).inputs: Pipeline stage, environment topology, tooling vendor (native SFDX, Copado, Gearset, Flosum, AutoRABIT, Blue Canvas, etc.), branching model, edition, packaging approach (Happy Soup / Unlocked / 2GP Managed)outputs: Named artifacts ("pipeline config YAML", "branching model diagram", "deployment runbook", "sandbox refresh checklist", "rollback plan")
Body — DevOps skill structure:
## Before Starting
[Environment topology, branching model, tooling vendor, edition, packaging approach — gather these before anything else because every DevOps answer branches on them]
## Mode 1: Design / Configure
[Step-by-step with explicit tool commands where applicable]
[Include: source-of-truth clarification — is the org the source of truth, or the repo? Most DevOps failures trace here]
[Include: environment mapping — which sandbox corresponds to which branch, which user promotes between them]
[Include: the metadata coverage discussion — what is AND is not in source; what "happy soup" vs packaged means for this skill]
## Mode 2: Review Existing Pipeline
[What to look for when auditing an existing pipeline — stages, gates, test coverage, rollback readiness]
[Include: the failure-mode catalog — deploy hangs, failed because of API version mismatch, test failures from sandbox data differences, permissions drift]
## Mode 3: Troubleshoot
[Specific symptoms → specific causes → specific fixes]
[DevOps troubleshooting is almost always: metadata coverage gap, destructive change missing, sandbox data drift, cached metadata in the IDE, API version mismatch, or permission drift on the deploy user]
## Governance Notes
[Who approves promotions, how hotfixes are handled, how emergency releases bypass gates safely, how audit trails are preserved, how production-only configuration is version-controlled]
Step 6 — Fill references/
examples.md: Use real DevOps scenarios:
- "An org running Happy Soup with 140 developers hit a deploy-time cliff at ~4 hours; migrating validation rules into an Unlocked Package..."
- "A release manager lost track of which branch matched which sandbox after a 3-way merge failed..."
- "A CI pipeline passed all tests in a fresh sandbox but failed in production because a Custom Setting record was in the source sandbox only..."
- Never generic: "A company needed to set up CI/CD..."
gotchas.md: DevOps-specific non-obvious behaviors:
- Metadata API does not retrieve everything — Standard Value Sets, some translations, some Settings behave unexpectedly. Keep a manual "post-deploy config" runbook.
- Validation rules on Standard fields sometimes retrieve under one developer name and deploy under another across orgs — test the round-trip.
- Destructive changes require a separate package.xml; you cannot delete metadata with the regular deployment package.
- Change Sets do not support all metadata types — a failing Change Set usually means the type isn't Change-Set-eligible.
- Deploying Profiles does not deploy all the Profile's permissions unless the referenced objects and fields are also in the deployment — Profile deploys are additive only for referenced artifacts.
- Apex Test coverage in a deploy counts ONLY tests in the deployment package plus production tests; tests in the source org may not count if they're not deployed.
- Sandbox refresh erases custom data in the sandbox; any admin workflow that depends on specific sandbox records must be scripted to recreate them post-refresh.
force:source:pushandforce:source:deployhave different semantics — push is scratch-org only.- Named Credentials and Auth Providers generally require post-deploy manual configuration — the secrets don't deploy.
- Scratch Org shape may diverge from production — reliance on Shape assumes you keep the Shape refreshed.
well-architected.md: DevOps skills almost always touch:
- Operational Excellence: repeatability, automation, audit trails, rollback, observability
- Reliability: test gates, environment parity, disaster recovery of metadata + config
- Security: secrets in pipelines, deploy-user privilege minimization, branch protection
- Performance Efficiency: deploy duration, parallelization, test selection
Step 7 — Fill templates/
DevOps templates = ready-to-use pipeline config, runbooks, and checklists.
For pipeline skills: example pipeline YAML (GitHub Actions / Bitbucket Pipelines / Jenkinsfile / Azure DevOps) with placeholders, plus a prose explanation of each stage.
For release management skills: a release runbook template with pre-deploy / during-deploy / post-deploy / rollback sections.
For sandbox management skills: a refresh checklist and a data-refresh script template.
Every template must include a verification section: "How to confirm this worked" — not only "the command exited zero" but "the target state matches expectations" (e.g. "the deploy user can log in, the post-deploy job completed, the smoke test Apex ran").
Step 8 — Fill scripts/check_*.py
DevOps checker targets:
- Check that the skill explicitly names a source-of-truth (org vs repo) and doesn't leave it implicit.
- Check that the skill addresses rollback, not only forward-deploy.
- Check that secret-handling guidance is present when the skill involves credentials / tokens / JWT.
- Check that no hardcoded org IDs, user IDs, or secret values appear in templates.
Step 9 — Hand off to Validator
Pass: skills/devops/<skill-name>
Validator runs both structural and quality gates.
Do not commit — Validator commits on SHIPPABLE.
DevOps Domain Knowledge (use this — do not rely on training data alone)
The single most common DevOps mistake this repo prevents: Treating the org as the source of truth alongside the repo. The moment both can diverge, every failure becomes a forensic exercise. Every DevOps skill must establish which side is authoritative and what the reconciliation ritual is when they drift.
The second most common: Underestimating metadata gaps. Teams assume "the Metadata API covers everything" and discover post-cutover that a Standard Value Set, a Translation, a Custom Setting row, a Named Credential secret, or a Dashboard Running User didn't come through. Every DevOps skill that touches deployment must address the "what doesn't deploy" catalog.
The third most common: Sandbox data rot. Tests that pass in the source sandbox fail in production because data shape differs. Every DevOps skill touching test gates must address data parity or test-data factories.
DevOps role boundary: DevOps owns the delivery pipeline and environment fleet. It does NOT own what's being delivered (that's Dev / Admin / Data / Architect). If a "DevOps skill" is telling someone how to write a validation rule, it belongs in Admin. If it's telling someone how to write a trigger, it belongs in Dev. DevOps tells them how the validation rule / trigger gets from one environment to the next, safely and repeatably.
Vendor-neutral by default, vendor-specific when it matters: Default to native SFDX + CI of the team's choosing. When a user's tooling is a DevOps platform (Copado, Gearset, Flosum, AutoRABIT, Blue Canvas), write the skill to that platform explicitly — pretending to be vendor-neutral when the entire answer is a Gearset workflow produces hollow skills.
Official sources for DevOps domain:
Check standards/official-salesforce-sources.md Domain Mapping → DevOps / Release Engineering section. Salesforce Architect Center DevOps tree + DX Developer Guide + Packaging Developer Guide are the primary Tier 1s.
Anti-Patterns
- Never write DevOps guidance that doesn't specify the source-of-truth stance
- Never produce a "Mode 1: Configure" that ends before verification of the happy path AND the rollback path
- Never assume the deploy user has System Administrator — the right answer is a least-privileged deploy user per environment
- Never leave secret-handling implicit — skills that handle credentials must name how secrets are provided
- Never recommend Change Sets for a team of more than ~5 developers without flagging the scaling cliff
- Never write pipeline templates without test stages AND destructive-change handling
- Never conflate scratch orgs with sandboxes — they behave very differently
- Never skip the "what doesn't deploy" catalog section for any skill touching deployment