Agent skill

Service Omni Presence Status Deploy

by forcedotcom in forcedotcom/sf-skills

Create the standard Available and Busy presence statuses needed for Omni-Channel routing.

Apache-2.0Auto-check: notes

Install Service Omni Presence Status Deploy

skills CLI
$ npx skills add forcedotcom/sf-skills --skill service-omni-presence-status-deploy -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install forcedotcom/sf-skills service-omni-presence-status-deploy --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/service-omni-presence-status-deploy .claude/skills/service-omni-presence-status-deploy && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
service-omni-presence-status-deploy
GitHub stars
1.1k
Token cost
~1.4k tokens
SKILL.md length
558 words
Files
4 (incl. scripts, references, assets)
Skills in repo
252
Repo updated
First seen
Licence
Apache-2.0

At a glance

Create the standard Available and Busy presence statuses needed for Omni-Channel routing.

  • Users ask to deploy Omni presence statuses
  • SKILL.md covers Inputs, Preconditions and safety, Run and Behavior, plus 3 more sections
  • Runs Shell scripts from its folder; calls bash
  • Configure agent availability

What it does

Service Omni Presence Status Deploy is an agent skill from forcedotcom/sf-skills. Create the standard Available and Busy presence statuses needed for Omni-Channel routing. TRIGGER when users ask to deploy Omni presence statuses, configure agent availability, deploy Omni status metadata, create an Available status for Case, Incident, Messaging, or Voice, or add the standard Busy status. DO NOT TRIGGER for custom status designs, unsupported objects, or PresenceUserConfig capacity.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts, reference files and assets (for example `references/api-notes.md` and `scripts/deploy-and-report.sh`).

The repository describes itself as: Salesforce's curated collection of agent skills for building applications. Optimized for Agentforce Vibes, compatible with all AI tools. The licence is Apache-2.0.

When your agent uses it

  • Users ask to deploy Omni presence statuses
  • Configure agent availability
  • Deploy Omni status metadata
  • Create an Available status for Case

Example prompts

  • “/service-omni-presence-status-deploy”

Requirements

  • A Bash shell
  • Pre-approved tools (allowed-tools): Bash, Read, Write, Edit, Glob, Grep

What it can do on your machine

Read from SKILL.md and the folder at commit 4bbae5c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Write
    • Edit
    • Glob
    • Grep

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Service Omni Presence Status Deploy loads about 1.4k tokens when it runs, and up to ~3.4k if it reads all its reference files. Until then it costs about 109 tokens; SKILL.md has 558 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~109
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Write, Edit, Glob, Grep

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from forcedotcom/sf-skills at commit 4bbae5c, republished under its Apache-2.0 licence (© forcedotcom). 558 words, ~1,423 tokens.

Download SKILL.mdSave it as .claude/skills/service-omni-presence-status-deploy/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
service-omni-presence-status-deploy
description
Create the standard Available and Busy presence statuses needed for Omni-Channel routing. TRIGGER when users ask to deploy Omni presence statuses, configure agent availability, deploy Omni status metadata, create an Available status for Case, Incident, Messaging, or Voice, or add the standard Busy status. DO NOT TRIGGER for custom status designs, unsupported objects, or PresenceUserConfig capacity.
allowed-tools
Bash, Read, Write, Edit, Glob, Grep
metadata.version
1.0
metadata.domains
Service
metadata.minApiVersion
66.0
metadata.relatedSkills
service-omni-base-settings-configure, service-omni-channel-setup-coordinate, service-omni-permission-set-assign, service-omni-service-channel-configure

service-omni-presence-status-deploy

Deploy the sObject-specific Available_<X> ServicePresenceStatus bound to that sObject's ServiceChannel, and ensure a universal Busy status exists, in one atomic Metadata API deploy. Every Omni agent needs an "available for work" status carrying a channel (so incoming work routes) and an "off-work" status (so they can step away). A presence status binds to exactly one ServiceChannel by DeveloperName, so each routing target needs its own Available status. It pairs with service-omni-permission-set-assign, which grants agents access to the statuses this skill deploys, and is invoked once per routing target by service-omni-channel-setup-coordinate.

Target sObjectAvailable statusBound channel
CaseAvailable_CaseCases
IncidentAvailable_IncidentIncidents
MessagingSessionAvailable_Messagingsfdc_livemessage
VoiceCallAvailable_Voicesfdc_phone

Busy is UI-defined, not metadata-defined. The Omni "Busy vs Online" option is not expressible via the Metadata API — a ServicePresenceStatus carries only <label> and <channels>, and a status with no channels is treated as busy. The conventional busy DeveloperName is simply Busy, and most orgs already have one, so this skill reuses an existing Busy and deploys the bundled asset only when none exists. A busy status is not required to receive work — the Available status carrying the channel is what routes it.

Inputs

bash
bash scripts/deploy-and-report.sh <org-alias> [Case|Incident|MessagingSession|VoiceCall]
  • org-alias (required).
  • sobject_type (optional, default Case).

Preconditions and safety

  • Target org authenticated via sf CLI (My Domain URL), Service Cloud license, sf CLI ≥ 2.139.6.
  • Omni-Channel base settings enabled (service-omni-base-settings-configure) — otherwise the deploy fails with INVALID_TYPE.
  • The target sObject's ServiceChannel exists (service-omni-service-channel-configure) — otherwise the deploy fails with Value '<channel>' is not valid. Incident requires the Incident Management feature enabled; MessagingSession requires Enhanced Messaging.
  • The three-way safe_to_write production guard applies.

Run

deploy-and-report.sh deploys the Available_<X> status (and Busy only when the org has none) in one Metadata API call, then maps the per-component files[].state to a skill status:

  • reused — every component Unchanged.
  • updated — any component Changed, none Created.
  • created — any component Created.

There is no separate detect step — Salesforce's files[].state is authoritative. The deploy uses explicit --metadata flags (never --source-dir) so unrelated assets cannot piggyback.

Show full SKILL.md (232 more words)Show less

Behavior

Reuse over redeploy. An existing Busy is detected and left untouched; only a missing one is deployed. The skill never deletes or overwrites presence statuses it did not deploy — orgs often carry other custom statuses (Omni_OnBreak, availableForMiaw).

Schema. The XML omits <statusType> (removed in v66; online/busy is inferred from the presence of <channels>), and the skill never SOQL-queries StatusType (not queryable on v66 — only Id, DeveloperName, MasterLabel are reliable). Available_Messaging binds the standard sfdc_livemessage channel that Enhanced Messaging always ships.

Output contract

A single JSON object with status ∈ created | reused | updated | blocked, sobject_type, a presence_statuses array (each with developer_name, label, channels, state, and — for Busy — reused_existing), deploy_id, manual_actions, and blocking_issue.

  • blocked — deploy failed (missing prereq, schema mismatch, or org error); manual_actions names the prerequisite skill to run and blocking_issue is an operator-friendly translation of the Salesforce error.
  • deploy_id is populated on every run (Salesforce issues one even for no-op deploys).

Limitations

  • Deploys only the Available_<X> + Busy pair — custom statuses require forking the assets/servicePresenceStatuses/*.xml.
  • Only Case, Incident, MessagingSession, VoiceCall — extend by adding a dispatcher branch and a matching asset.
  • Does not configure PresenceUserConfig capacity or decline reasons, and never deletes existing statuses.

References

FileWhen to read
assets/package.xmlLoad when preparing the explicit Metadata API deployment for the selected Available status and the optional Busy status
references/api-notes.mdOn unexpected deploy behavior — the v66 XML schema (no statusType), channel-binding rules, and MessagingSession-specific notes

© forcedotcom, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts, references, assets) in skills/service-omni-presence-status-deploy of forcedotcom/sf-skills.

  • SKILL.md
  • assets/package.xml
  • references/api-notes.md
  • scripts/deploy-and-report.sh

Open the folder on GitHubat commit 4bbae5c

Compare with similar skills

Service Omni Presence Status Deploy next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Service Omni Presence Status Deploy compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Service Omni Presence Status Deploy this skillforcedotcom/sf-skills1.1k—~1.4kAutomated safety check: NotesApache-2.0
Statusudecode/plate17k—~377Automated safety check: PassCustom licence
Statusanthropics/claude-for-legal9.6k3 repos~1.8kAutomated safety check: PassApache-2.0
Gemini Omnicalesthio/OpenMontage66k—~2.1kAutomated safety check: NotesAGPL-3.0
Telemetry Standardssupabase/supabase111k—~2kAutomated safety check: PassApache-2.0
Mem0 Statusmem0ai/mem067k—~288Automated safety check: PassApache-2.0

Similar skills

  • Status

    udecode/plate

    Show current goal-plan status at a glance - phases, progress, checklist, verification, and risks.

    17k GitHub stars~377 tokensUpdated yesterday
    Auto-check passed
  • Status

    anthropics/claude-for-legal

    Official

    Case status summary by audience — client-facing (plain language), internal (for the professor), or court-ready (formal caption format per local rules).

    9.6k GitHub starsUsed in 3 repos~1.8k tokens
    Writing & ContentAuto-check passed
  • Gemini Omni

    calesthio/OpenMontage

    Generate and conversationally edit short videos with Google Gemini Omni Flash (gemini-omni-flash-preview).

    66k GitHub stars~2.1k tokensUpdated 7 days ago
    Media & CreativeAuto-check: notes
  • Telemetry Standards

    supabase/supabase

    Official

    PostHog event tracking standards for Supabase Studio. An agent skill from supabase/supabase.

    111k GitHub stars~2k tokensUpdated yesterday
    Data & AnalyticsAuto-check passed
  • Mem0 Status

    mem0ai/mem0

    Reports whether Mem0 memory is working in a repository, covering capture state, scope, API key, event counts and doctor checks, and flags an invalid key plainly.

    67k GitHub stars~288 tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Summarize Status

    paperclipai/paperclip

    Write a short, colloquial summary for a Paperclip summary slot: open with the 1–3 specific, concrete actions the reader needs to take right now to unblock the work, then a brief plain-language…

    100k GitHub stars~2.2k tokensUpdated today
    Writing & ContentAuto-check passed

More from forcedotcom/sf-skills

All 252 skills in this repo
  • Agentforce Architecture Analyze

    forcedotcom/sf-skills

    Declared architecture snapshot for one Agentforce agent: planner, topics, actions, flows, Apex, prompt templates, and NGA plugins.

    1.1k GitHub stars~4.5k tokensUpdated yesterday
    Auto-check passed
  • Agentforce D360 Analyze

    forcedotcom/sf-skills

    Data Cloud 360° view of a single Agentforce session. An agent skill from forcedotcom/sf-skills.

    1.1k GitHub stars~3.4k tokensUpdated yesterday
    Auto-check passed
  • Apply a Salesforce sandbox post-copy automation JSON config against a target org.

    1.1k GitHub stars~5.3k tokensUpdated yesterday
    Auto-check: notes
  • Apply a Salesforce sandbox post-copy automation JSON config against a target org.

    1.1k GitHub stars~5.4k tokensUpdated yesterday
    Auto-check: notes
  • Design Systems Slds Apply

    forcedotcom/sf-skills

    Apply SLDS-compliant UI using the correct blueprints, styling hooks, utility classes, and icons.

    1.1k GitHub stars~3.7k tokensUpdated yesterday
    Auto-check passed
  • Experience Lwc Generate

    forcedotcom/sf-skills

    Lightning Web Components with PICKLES methodology and 165-point scoring.

    1.1k GitHub stars~2.4k tokensUpdated yesterday
    Auto-check passed

Questions about Service Omni Presence Status Deploy

What does Service Omni Presence Status Deploy do?

Create the standard Available and Busy presence statuses needed for Omni-Channel routing. Service Omni Presence Status Deploy is an agent skill from forcedotcom/sf-skills. Create the standard Available and Busy presence statuses needed for Omni-Channel routing.

When should I use Service Omni Presence Status Deploy?

Service Omni Presence Status Deploy fits situations like: users ask to deploy Omni presence statuses; configure agent availability; deploy Omni status metadata; create an Available status for Case.

How do I install Service Omni Presence Status Deploy in Claude Code?

Run `npx skills add forcedotcom/sf-skills --skill service-omni-presence-status-deploy -a claude-code`. Or copy the skill folder (skills/service-omni-presence-status-deploy in forcedotcom/sf-skills) into .claude/skills/service-omni-presence-status-deploy in your project. Claude Code loads it when a task matches its description.

How do I install Service Omni Presence Status Deploy in Codex?

Run `npx skills add forcedotcom/sf-skills --skill service-omni-presence-status-deploy -a codex`. Or copy the skill folder (skills/service-omni-presence-status-deploy in forcedotcom/sf-skills) into .agents/skills/service-omni-presence-status-deploy in your project. Codex loads it when a task matches its description.

Can I use Service Omni Presence Status Deploy in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add forcedotcom/sf-skills --skill service-omni-presence-status-deploy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/service-omni-presence-status-deploy, .gemini/skills/service-omni-presence-status-deploy, .github/skills/service-omni-presence-status-deploy and .opencode/skills/service-omni-presence-status-deploy in your project.

What does Service Omni Presence Status Deploy need to run?

Going by SKILL.md and its folder, Service Omni Presence Status Deploy needs a shell for the scripts in its folder and the command-line tools its instructions call (bash). Our summary lists: A Bash shell. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, Glob, Grep.

Does Service Omni Presence Status Deploy access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Service Omni Presence Status Deploy safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Service Omni Presence Status Deploy use?

Service Omni Presence Status Deploy is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Service Omni Presence Status Deploy use?

About 1.4k tokens (SKILL.md is roughly 5.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.9k tokens, read only when the agent opens those files.

What are the alternatives to Service Omni Presence Status Deploy?

Skills that share tags, products or a category with Service Omni Presence Status Deploy: Status (udecode/plate, 17k stars), Status (anthropics/claude-for-legal, 9.6k stars), Gemini Omni (calesthio/OpenMontage, 66k stars) and Telemetry Standards (supabase/supabase, 111k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Service Omni Presence Status Deploy?

forcedotcom (a GitHub organization) maintains it in forcedotcom/sf-skills, which has 1,067 GitHub stars. The repository holds 252 skills in this directory. The repository was last updated on October 9, 2026.

Source: forcedotcom/sf-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.