Soql Lib Query Builder
beyond-the-cloud-dev/soql-lib
Builds Salesforce SOQL queries using the SOQL Lib fluent builder API (SOQL.cls).
Configure (or troubleshoot) an AI coding agent or CLI to route through the Salesforce Models API using a signed OrgJWT.
$ npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install forcedotcom/sf-skills platform-models-api-configure --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/platform-models-api-configure .claude/skills/platform-models-api-configure && rm -rf skills-srcUse ~/.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/
Install the "platform-models-api-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/platform-models-api-configure into .claude/skills/platform-models-api-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "platform-models-api-configure", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/forcedotcom/sf-skills/tree/main/skills/platform-models-api-configureType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install forcedotcom/sf-skills platform-models-api-configure --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/platform-models-api-configure .agents/skills/platform-models-api-configure && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "platform-models-api-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/platform-models-api-configure into .agents/skills/platform-models-api-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "platform-models-api-configure", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install forcedotcom/sf-skills platform-models-api-configure --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/platform-models-api-configure .cursor/skills/platform-models-api-configure && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "platform-models-api-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/platform-models-api-configure into .cursor/skills/platform-models-api-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "platform-models-api-configure", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/forcedotcom/sf-skills.git --path skills/platform-models-api-configure--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install forcedotcom/sf-skills platform-models-api-configure --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/platform-models-api-configure .gemini/skills/platform-models-api-configure && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "platform-models-api-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/platform-models-api-configure into .gemini/skills/platform-models-api-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "platform-models-api-configure", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install forcedotcom/sf-skills platform-models-api-configureInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/platform-models-api-configure .github/skills/platform-models-api-configure && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "platform-models-api-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/platform-models-api-configure into .github/skills/platform-models-api-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "platform-models-api-configure", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install forcedotcom/sf-skills platform-models-api-configure --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/forcedotcom/sf-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/platform-models-api-configure .opencode/skills/platform-models-api-configure && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "platform-models-api-configure" agent skill from https://github.com/forcedotcom/sf-skills/tree/main/skills/platform-models-api-configure into .opencode/skills/platform-models-api-configure/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "platform-models-api-configure", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
platform-models-api-configureConfigure (or troubleshoot) an AI coding agent or CLI to route through the Salesforce Models API using a signed OrgJWT.
Platform Models API Configure is an agent skill from forcedotcom/sf-skills. Configure (or troubleshoot) an AI coding agent or CLI to route through the Salesforce Models API using a signed OrgJWT. Use this skill when pointing an agent at the Salesforce model endpoint (api.salesforce.com/ai/gpt/v1), setting up OrgJWT / Bedrock-mode auth, wiring the agent's settings, API-key helper, and credentials file for the Salesforce endpoint, or fixing Models API 401 / 404 / "model not available" errors. DO NOT TRIGGER when the user needs to create or configure the Salesforce Connected App itself (use…
Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/get-orgjwt.sh`).
It sits in Sales & Support, covering CRM management. It works with Salesforce. 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.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit e5164d9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
bashcurlsfFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.salesforce.comAlso links to:
developer.salesforce.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ANTHROPIC_AUTH_TOKENSF_CLIENT_SECRETANTHROPIC_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Platform Models API Configure loads about 2.1k tokens when it runs. Until then it costs about 171 tokens; SKILL.md has 743 words of instructions outside code blocks.
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.
The automated check found no risky patterns in SKILL.md.
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.
The full file from forcedotcom/sf-skills at commit e5164d9, republished under its Apache-2.0 licence (© forcedotcom). 743 words, ~2,095 tokens.
.claude/skills/platform-models-api-configure/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.The Salesforce Models API (https://api.salesforce.com/ai/gpt/v1) is
authenticated with a signed OrgJWT (obtained via client_credentials with
the sfap_api scope — see scripts/get-orgjwt.sh; no proxy). That auth and the
base URL are the same for any agent. How each agent then talks to the
endpoint is agent-specific: Anthropic clients (Claude Code and the Claude
Agent SDK) route through Bedrock mode (the env vars in Step 3), whereas
other agents (e.g. Codex) use their own client config against the same endpoint
and token — Bedrock mode does not apply to them.
The steps below are the Claude Code / Claude Agent SDK reference implementation (Bedrock mode + a JSON settings file + an API-key helper). For a non-Bedrock agent, reuse the OrgJWT auth (Step 1) and the base URL, and apply the equivalent client settings in that agent's own config location instead of the Bedrock env vars.
Bundled scripts are in scripts/. Path placeholders below: <SKILL> = the
absolute path to this skill's own directory (the folder containing this
SKILL.md; resolve it from the skill path in context). <ABS> = the absolute
path to the user's project root. Always emit fully resolved absolute paths —
the API-key helper runs from an undefined working directory, so relative paths
break it.
A connected app in the org with the sfap_api OAuth scope and the
client_credentials flow enabled (consumer key/secret + a run-as user).
Setup steps: https://developer.salesforce.com/docs/ai/agentforce/guide/access-models-api-with-rest.html
curl + jq installed.
SF_INSTANCE_URL — org My Domain, e.g. https://acme.my.salesforce.comSF_CLIENT_ID, SF_CLIENT_SECRET — connected-app consumer key/secrethttps://api.salesforce.com/ai/gpt/v1sfdc_ai__… name, e.g.
sfdc_ai__DefaultBedrockAnthropicClaude46Sonnet
(full list: https://developer.salesforce.com/docs/ai/agentforce/guide/supported-models.html)<cwd>/.claude/settings.json, default) or user (~/.claude/settings.json) — reference-agent settings paths<FEAT> = x-client-feature-id (default ai-platform-models-connected-app),
<APP> = x-sfdc-app-context (default EinsteinGPT). Used in the Step 2 verify curl
and in ANTHROPIC_CUSTOM_HEADERS.Concrete values for a JSON-settings + API-key-helper agent. Reuse the OrgJWT auth, verify curl, and base URL verbatim for any agent; adapt the settings-file location and env-var wiring to the target agent.
<project>/.claude/.orgjwt.env (chmod 600), gitignore it:SF_INSTANCE_URL="..."
SF_CLIENT_ID="..."
SF_CLIENT_SECRET="..."200 before writing settings:TOKEN=$(bash <SKILL>/scripts/get-orgjwt.sh <ABS>/.claude/.orgjwt.env)
curl -s -o /dev/null -w '%{http_code}\n' \
<MODELS_API_URL>/model/<MODEL>/invoke-with-response-stream \
-H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
-H 'x-client-feature-id: <FEAT>' -H 'x-sfdc-app-context: <APP>' \
--data '{"anthropic_version":"bedrock-2023-05-31","max_tokens":16,"messages":[{"role":"user","content":"hi"}]}'.claude/settings.json (merge into existing; keep other keys):{
"apiKeyHelper": "bash <SKILL>/scripts/get-orgjwt.sh <ABS>/.claude/.orgjwt.env",
"model": "<MODEL>",
"env": {
"ANTHROPIC_AUTH_TOKEN": "",
"CLAUDE_CODE_USE_BEDROCK": "1",
"CLAUDE_CODE_SKIP_BEDROCK_AUTH": "1",
"ANTHROPIC_BEDROCK_BASE_URL": "<MODELS_API_URL>",
"ANTHROPIC_SMALL_FAST_MODEL": "<MODEL>",
"ANTHROPIC_DEFAULT_MODEL": "<MODEL>",
"ANTHROPIC_CUSTOM_HEADERS": "x-client-feature-id: <FEAT>\nx-sfdc-app-context: <APP>"
}
}apiKeyHelper. (<FEAT> / <APP> defaults are in
"Inputs to collect" above.)claude for the reference agent) —
settings and the API-key helper load at startup only.If the user wants the setup written up for review instead of applied to their
machine (e.g. "save it as a Markdown runbook"), write all of the above into
the requested file (e.g. models-api-setup-runbook.md), in order and self-contained:
the exact .orgjwt.env contents, the chmod 600 + gitignore note, the
verification curl (with the "must be 200 before writing settings" note), the
full settings.json block with every key from Step 3, and the final
"fully restart claude" step. Don't omit any of the nine settings.json keys.
.claude/.orgjwt.env created, chmod 600, and gitignored200 before settings.json was writtenANTHROPIC_AUTH_TOKEN set to "" in settings.jsonCLAUDE_CODE_USE_BEDROCK set to "1"CLAUDE_CODE_SKIP_BEDROCK_AUTH set to "1"ANTHROPIC_BEDROCK_BASE_URL is exactly https://api.salesforce.com/ai/gpt/v1 (no trailing slash/path)model, ANTHROPIC_DEFAULT_MODEL, and ANTHROPIC_SMALL_FAST_MODEL all use the fully qualified sfdc_ai__… aliasANTHROPIC_CUSTOM_HEADERS contains x-client-feature-id and x-sfdc-app-contextapiKeyHelper uses absolute paths (bash <SKILL>/scripts/get-orgjwt.sh <ABS>/.claude/.orgjwt.env)claude"ANTHROPIC_AUTH_TOKEN": "" — clears any global token that would otherwise
outrank apiKeyHelper (precedence: ANTHROPIC_AUTH_TOKEN > ANTHROPIC_API_KEY
apiKeyHelper). Without it → wrong/old bearer → 401/404.
CLAUDE_CODE_USE_BEDROCK=1 — activates the Bedrock API client; without it
Claude Code uses the standard Anthropic API protocol and ignores
ANTHROPIC_BEDROCK_BASE_URL entirely, so every call bypasses the Models API.CLAUDE_CODE_SKIP_BEDROCK_AUTH=1 — else Claude Code overwrites Authorization
with AWS SigV4 and the OrgJWT never lands.apiKeyHelper must be invoked as bash <path> <credsfile> (avoids exit-126).sfdc_ai__… name (see supported models).client_credentials (a signed JWT, 2 dots, scope
sfap_api) — NOT sf org display (unsigned session token → 404). sf CLI
has no client_credentials command; the helper calls /services/oauth2/token.ANTHROPIC_BEDROCK_BASE_URL routes; no tenant-id header needed.| Error | Meaning | Check first |
|---|---|---|
401 | Token is not a valid OrgJWT | Connected App sfap_api scope, client_credentials flow enabled, consumer key/secret in .orgjwt.env; ANTHROPIC_AUTH_TOKEN not cleared to "" |
404 | Token valid but model/env/org not routable | Fully qualified sfdc_ai__… model alias, ANTHROPIC_BEDROCK_BASE_URL exactly https://api.salesforce.com/ai/gpt/v1, org entitled for the Models API, ANTHROPIC_AUTH_TOKEN cleared |
model not available | Non-alias model id | Replace with a fully qualified sfdc_ai__… alias (see supported models) |
© 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
SKILL.md and 1 other file (scripts) in skills/platform-models-api-configure of forcedotcom/sf-skills.
Open the folder on GitHubat commit e5164d9
Platform Models API 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Platform Models API Configure this skillforcedotcom/sf-skills | 1.1k | — | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Soql Lib Query Builderbeyond-the-cloud-dev/soql-lib | 154 | — | ~4.3k | Automated safety check: Pass | MIT | |
| Sf DatacloudJaganpro/sf-skills | 424 | — | ~2.7k | Automated safety check: Pass | MIT | |
| Soql Lib Selectorbeyond-the-cloud-dev/soql-lib | 154 | — | ~2k | Automated safety check: Pass | MIT | |
| Dev SetupPortwood-Global-Solutions/Portwood | 125 | — | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| Sf FlowJaganpro/sf-skills | 424 | — | ~1.8k | Automated safety check: Pass | MIT |
beyond-the-cloud-dev/soql-lib
Builds Salesforce SOQL queries using the SOQL Lib fluent builder API (SOQL.cls).
Jaganpro/sf-skills
Salesforce Data Cloud product orchestrator for connect→prepare→harmonize→segment→act workflows.
beyond-the-cloud-dev/soql-lib
Creates Salesforce Apex selector classes using the SOQL Lib selector pattern.
Portwood-Global-Solutions/Portwood
Get from a fresh clone of Portwood to a working, fully-tested Salesforce org.
Jaganpro/sf-skills
Creates and validates Salesforce Flows with 110-point scoring.
gmapsscraper/google-maps-agent-skills
Export Google Maps business data to CSV, JSON, or CRM format (HubSpot, Pipedrive, Salesforce).
forcedotcom/sf-skills
Declared architecture snapshot for one Agentforce agent: planner, topics, actions, flows, Apex, prompt templates, and NGA plugins.
forcedotcom/sf-skills
Data Cloud 360° view of a single Agentforce session. An agent skill from forcedotcom/sf-skills.
forcedotcom/sf-skills
Apply a Salesforce sandbox post-copy automation JSON config against a target org.
forcedotcom/sf-skills
Apply a Salesforce sandbox post-copy automation JSON config against a target org.
forcedotcom/sf-skills
Apply SLDS-compliant UI using the correct blueprints, styling hooks, utility classes, and icons.
forcedotcom/sf-skills
Lightning Web Components with PICKLES methodology and 165-point scoring.
Works with
Categories
Configure (or troubleshoot) an AI coding agent or CLI to route through the Salesforce Models API using a signed OrgJWT. Platform Models API Configure is an agent skill from forcedotcom/sf-skills. Configure (or troubleshoot) an AI coding agent or CLI to route through the Salesforce Models API using a signed OrgJWT.
Platform Models API Configure fits situations like: pointing an agent at the Salesforce model endpoint (api.salesforce.com/ai/gpt/v1); setting up OrgJWT / Bedrock-mode auth; wiring the agents settings; credentials file for the Salesforce endpoint.
Run `npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a claude-code`. Or copy the skill folder (skills/platform-models-api-configure in forcedotcom/sf-skills) into .claude/skills/platform-models-api-configure in your project. Claude Code loads it when a task matches its description.
Run `npx skills add forcedotcom/sf-skills --skill platform-models-api-configure -a codex`. Or copy the skill folder (skills/platform-models-api-configure in forcedotcom/sf-skills) into .agents/skills/platform-models-api-configure in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add forcedotcom/sf-skills --skill platform-models-api-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/platform-models-api-configure, .gemini/skills/platform-models-api-configure, .github/skills/platform-models-api-configure and .opencode/skills/platform-models-api-configure in your project.
Going by SKILL.md and its folder, Platform Models API Configure needs a shell for the scripts in its folder, the command-line tools its instructions call (bash, curl and sf) and credentials named ANTHROPIC_AUTH_TOKEN, SF_CLIENT_SECRET and ANTHROPIC_API_KEY. Our summary lists: A Bash shell; A credential in SF_CLIENT_SECRET; A credential in ANTHROPIC_AUTH_TOKEN.
SKILL.md names 2 domains. In commands or code: api.salesforce.com; the agent is likely to contact it when it follows the instructions. As links in the text: developer.salesforce.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. 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.
Platform Models API 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.
About 2.1k tokens (SKILL.md is roughly 8.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Platform Models API Configure: Soql Lib Query Builder (beyond-the-cloud-dev/soql-lib, 154 stars), Sf Datacloud (Jaganpro/sf-skills, 424 stars), Soql Lib Selector (beyond-the-cloud-dev/soql-lib, 154 stars) and Dev Setup (Portwood-Global-Solutions/Portwood, 125 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
forcedotcom (a GitHub organization) maintains it in forcedotcom/sf-skills, which has 1,060 GitHub stars. The repository holds 251 skills in this directory. The repository was last updated on October 7, 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.