Agent skill

Service Omni Skills Based Routing Configure

by forcedotcom in forcedotcom/sf-skills

A skill your agent uses to make agents routable by Omni skills-based routing: ensure an Omni Skill exists, then assign it to each active agent through the classic Omni-Channel SkillUser junction.

Apache-2.0Auto-check: notesAI & LLM Engineering

Install Service Omni Skills Based Routing Configure

skills CLI
$ npx skills add forcedotcom/sf-skills --skill service-omni-skills-based-routing-configure -a claude-code

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

GitHub CLI
$ gh skill install forcedotcom/sf-skills service-omni-skills-based-routing-configure --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-skills-based-routing-configure .claude/skills/service-omni-skills-based-routing-configure && 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-skills-based-routing-configure
GitHub stars
1.1k
Token cost
~1.3k tokens
SKILL.md length
491 words
Files
5 (incl. scripts, references)
Skills in repo
252
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses to make agents routable by Omni skills-based routing: ensure an Omni Skill exists, then assign it to each active agent through the classic Omni-Channel SkillUser junction.

  • Works in 2 steps: Skill — query Skill by DeveloperName.… → SkillUser — query existing SkillUser…
  • Make agents routable by Omni skills-based routing: ensure an Omni Skill exists
  • SKILL.md covers Inputs, Preconditions and safety, Run and Behavior, plus 3 more sections
  • Runs Python and Shell scripts from its folder; calls bash and python3

What it does

Service Omni Skills Based Routing Configure is an agent skill from forcedotcom/sf-skills. Use to make agents routable by Omni skills-based routing: ensure an Omni Skill exists, then assign it to each active agent through the classic Omni-Channel SkillUser junction. Idempotent — existing skills and user bindings are reused, and only missing bindings are created. Works on Service Cloud orgs without requiring Field Service. Triggers: set up skills-based routing agents, assign Omni skills to agents, make agents skill-routable, create an Omni skill and bind users, repair missing agent skill assignments. Do…

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts and reference files (for example `references/api-notes.md`, `scripts/configure-and-report.sh` and `scripts/tests/_bootstrap.py`).

It sits in AI & LLM Engineering, covering Building AI agents. 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

  • Make agents routable by Omni skills-based routing: ensure an Omni Skill exists
  • Then assign it to each active agent through the classic Omni-Channel SkillUser junction
  • Author WorkSkillRouting rules
  • Create agent users

Example prompts

  • “/service-omni-skills-based-routing-configure”

Requirements

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

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. Skill — query Skill by DeveloperName. Present → reused; absent → deploy a Skill component via the Metadata API and re-query for its Id.
  2. SkillUser — query existing SkillUser records for the Skill and resolved users, then create only missing (SkillId, UserId) bindings via…

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 3 files in scripts/ (Python and Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • bash
    • python3

    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 Skills Based Routing Configure loads about 1.3k tokens when it runs, and up to ~2k if it reads all its reference files. Until then it costs about 161 tokens; SKILL.md has 491 words of instructions outside code blocks.

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

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). 491 words, ~1,297 tokens.

Download SKILL.mdSave it as .claude/skills/service-omni-skills-based-routing-configure/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
service-omni-skills-based-routing-configure
description
Use to make agents routable by Omni skills-based routing: ensure an Omni Skill exists, then assign it to each active agent through the classic Omni-Channel SkillUser junction. Idempotent — existing skills and user bindings are reused, and only missing bindings are created. Works on Service Cloud orgs without requiring Field Service. Triggers: set up skills-based routing agents, assign Omni skills to agents, make agents skill-routable, create an Omni skill and bind users, repair missing agent skill assignments. Do not use to author WorkSkillRouting rules, create agent users, or configure queues.
allowed-tools
Bash, Read, Write, Edit, Glob, Grep
metadata.version
1.0
metadata.domains
Service
metadata.minApiVersion
66.0
metadata.relatedSkills
service-omni-agent-users-create, service-omni-base-settings-configure

service-omni-skills-based-routing-configure

Make agents routable by Omni skills-based routing (SBR). A routable agent needs the Skill and a SkillUser junction assigning that skill to the agent's user. SkillUser is the classic Omni-Channel model written by Setup > Skills > Assign Users and evaluated when work has skill requirements. This skill ensures both, idempotently, for one skill across a set of active agent users.

ServiceResource and ServiceResourceSkill are the Field Service skill model. On a plain Service Cloud org, ServiceResource.IsActive is not writable or queryable, so a newly created resource remains inactive and the junction is rejected. This skill therefore uses the supported, license-appropriate SkillUser path.

Inputs

bash
bash scripts/configure-and-report.sh <org-alias> <skill_developer_name> [agent_members_csv] [skill_master_label]
  • org-alias (required).
  • skill_developer_name (required). The Omni Skill DeveloperName to ensure and bind (e.g. Omni_Demo_Voice).
  • agent_members_csv (optional). Comma-separated agents to make skill-routable — each token a Username (…@…) or a 15/18-char User Id (005…). May also be supplied via AGENT_MEMBERS_CSV. When omitted, the skill blocks (it will not guess which agents to skill).
  • skill_master_label (optional). MasterLabel used only when the skill must be created; defaults to a title-cased form of the DeveloperName.

Preconditions and safety

  • Target org authenticated via sf CLI, Service Cloud license, sf CLI ≥ 2.139.6.
  • Omni-Channel base settings enabled with skills-based routing turned on (service-omni-base-settings-configure).
  • The named agents exist and are active (service-omni-agent-users-create).
  • The three-way safe_to_write production guard applies.

Run

configure-and-report.sh proceeds in two idempotent phases, each detect-before-write:

  1. Skill — query Skill by DeveloperName. Present → reused; absent → deploy a Skill component via the Metadata API and re-query for its Id.
  2. SkillUser — query existing SkillUser records for the Skill and resolved users, then create only missing (SkillId, UserId) bindings via REST DML. A concurrent DUPLICATE_VALUE is reconciled as reused.
Show full SKILL.md (220 more words)Show less

Behavior

Idempotent + non-destructive. Existing skills and bindings are reused; the skill never deletes or reassigns anything it did not create, so re-runs converge without duplication. Only active users are resolved — an inactive user cannot be routed work, so it is reported rather than silently skilled.

Partial safety. If some bindings succeed and others fail, the status is partial with per-agent errors in blocking_issue; the successful bindings are left in place (each junction is an independent write).

Output contract

A single JSON object: status ∈ configured | reused | partial | blocked, skill ({developer_name, id, state}), agents (array of {username, user_id, skill_binding_id, skill_binding_state}), created_counts, reused_counts, manual_actions, blocking_issue.

  • reused — skill and all bindings already existed.
  • configured — at least one component created and all requested bindings now exist.
  • partial / blocked — see blocking_issue; manual_actions names the prerequisite skill when the cause is a missing precondition.

Limitations

  • One skill per invocation; run again per skill an agent set needs.
  • Does not author WorkSkillRouting rules or field-based skill criteria — that is a separate skill.
  • Does not create agent users, queues, or presence configuration.
  • SkillUser.SkillLevel is left at the platform default; forking the DML body is required to set explicit proficiency.

References

FileWhen to read
references/api-notes.mdSkill metadata vs Skill sObject, the SkillUser agent-binding model, and SBR base-setting prerequisites
scripts/tests/test_sbr_contracts.pyWhen validating changes — run python3 scripts/tests/test_sbr_contracts.py from this skill directory

© 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 4 other files (scripts, references) in skills/service-omni-skills-based-routing-configure of forcedotcom/sf-skills.

  • SKILL.md
  • references/api-notes.md
  • scripts/configure-and-report.sh
  • scripts/tests/_bootstrap.py
  • scripts/tests/test_sbr_contracts.py

Open the folder on GitHubat commit 4bbae5c

Compare with similar skills

Service Omni Skills Based Routing Configure 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 Skills Based Routing Configure compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Service Omni Skills Based Routing Configure this skillforcedotcom/sf-skills1.1k—~1.3kAutomated safety check: NotesApache-2.0
Agent BuildershareAI-lab/learn-claude-code78k4 repos~1.2kAutomated safety check: PassMIT
Paperclip Create Agentpaperclipai/paperclip100k1 repos~2.1kAutomated safety check: PassMIT
Senior Prompt Engineermaslennikov-ig/claude-code-orchestrator-kit2603 repos~1.4kAutomated safety check: PassCustom licence
Create Agentgnekt/My-Brain-Is-Full-Crew3.9k—~3.1kAutomated safety check: PassCustom licence
Ms Agent Framework RAGshuyu-labs/WebCode278—~1.1kAutomated safety check: PassCustom licence

Similar skills

  • Agent Builder

    shareAI-lab/learn-claude-code

    Design and build AI agents for any domain. An agent skill from shareAI-lab/learn-claude-code.

    78k GitHub starsUsed in 4 repos~1.2k tokens
    AI & LLM EngineeringAuto-check passed
  • Paperclip Create Agent

    paperclipai/paperclip

    Create new agents in Paperclip with governance-aware hiring.

    100k GitHub starsUsed in 1 repo~2.1k tokens
    AI & LLM EngineeringAuto-check passed
  • Senior Prompt Engineer

    maslennikov-ig/claude-code-orchestrator-kit

    Provides reference guides and Python scripts for prompt optimization, RAG evaluation, and agent orchestration when building or tuning LLM systems.

    260 GitHub starsUsed in 3 repos~1.4k tokens
    AI & LLM EngineeringAuto-check passed
  • Create Agent

    gnekt/My-Brain-Is-Full-Crew

    Create a new custom agent from scratch. An agent skill from gnekt/My-Brain-Is-Full-Crew.

    3.9k GitHub stars~3.1k tokensUpdated 3 mo ago
    AI & LLM EngineeringAuto-check passed
  • Ms Agent Framework RAG

    shuyu-labs/WebCode

    Comprehensive guide for building Agentic RAG systems using Microsoft Agent Framework in C.

    278 GitHub stars~1.1k tokensUpdated 3 mo ago
    AI & LLM EngineeringAuto-check passed
  • Google Agents CLI Adk Code

    pifferologo/cloud-agents-cli

    This skill should be used when the user wants to "write agent code", "build an agent with ADK", "add a tool", "create a callback", "define an agent", "use state management", or needs ADK (Agent…

    129 GitHub starsUsed in 1 repo~768 tokens
    AI & LLM EngineeringAuto-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 Skills Based Routing Configure

What does Service Omni Skills Based Routing Configure do?

A skill your agent uses to make agents routable by Omni skills-based routing: ensure an Omni Skill exists, then assign it to each active agent through the classic Omni-Channel SkillUser junction. Service Omni Skills Based Routing Configure is an agent skill from forcedotcom/sf-skills. Use to make agents routable by Omni skills-based routing: ensure an Omni Skill exists, then assign it to each active agent through the classic Omni-Channel SkillUser junction.

When should I use Service Omni Skills Based Routing Configure?

Service Omni Skills Based Routing Configure fits situations like: make agents routable by Omni skills-based routing: ensure an Omni Skill exists; then assign it to each active agent through the classic Omni-Channel SkillUser junction; author WorkSkillRouting rules; create agent users.

How do I install Service Omni Skills Based Routing Configure in Claude Code?

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

How do I install Service Omni Skills Based Routing Configure in Codex?

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

Can I use Service Omni Skills Based Routing Configure 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-skills-based-routing-configure -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-skills-based-routing-configure, .gemini/skills/service-omni-skills-based-routing-configure, .github/skills/service-omni-skills-based-routing-configure and .opencode/skills/service-omni-skills-based-routing-configure in your project.

What does Service Omni Skills Based Routing Configure need to run?

Going by SKILL.md and its folder, Service Omni Skills Based Routing Configure needs Python and a shell for the scripts in its folder and the command-line tools its instructions call (bash and python3). Our summary lists: Python 3; A Bash shell. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, Glob, Grep.

Does Service Omni Skills Based Routing Configure 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 Skills Based Routing Configure 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 Skills Based Routing Configure use?

Service Omni Skills Based Routing Configure 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 Skills Based Routing Configure use?

About 1.3k tokens (SKILL.md is roughly 5.2k 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 655 tokens, read only when the agent opens those files.

What are the alternatives to Service Omni Skills Based Routing Configure?

Skills that share tags, products or a category with Service Omni Skills Based Routing Configure: Agent Builder (shareAI-lab/learn-claude-code, 78k stars), Paperclip Create Agent (paperclipai/paperclip, 100k stars), Senior Prompt Engineer (maslennikov-ig/claude-code-orchestrator-kit, 260 stars) and Create Agent (gnekt/My-Brain-Is-Full-Crew, 3.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Service Omni Skills Based Routing Configure?

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.