agentforce-architectur…
Declared architecture snapshot for one Agentforce agent: planner, topics, actions, flows, Apex, prompt templates, and NGA…
Read org state and change Setup through the Headless 360 (H360) MCP tools discover, describe, dispatch_readonly, and dispatch. Use when H360 tools are present and the answer is org state no skill or sf command reads: Setup settings, feature or license access, org-specific caps,
Claude Code
$ npx -y skills add forcedotcom/sf-skills --skill platform-headless-360-integrate --agent claude-code
Codex
$ npx skills add forcedotcom/sf-skills --skill platform-headless-360-integrate -a codex -y
Cursor
$ npx skills add forcedotcom/sf-skills --skill platform-headless-360-integrate -a cursor -y
Gemini CLI
$ npx skills add forcedotcom/sf-skills --skill platform-headless-360-integrate -a gemini-cli -y
GitHub Copilot
$ npx skills add forcedotcom/sf-skills --skill platform-headless-360-integrate -a github-copilot -y
OpenCode
$ npx skills add forcedotcom/sf-skills --skill platform-headless-360-integrate -a opencode -y
Windsurf
$ npx skills add forcedotcom/sf-skills --skill platform-headless-360-integrate -a windsurf -y
name: platform-headless-360-integrate
description: "Read org state and change Setup through the Headless 360 (H360) MCP tools discover, describe, dispatch_readonly, and dispatch. Use when H360 tools are present and the answer is org state no skill or sf command reads: Setup settings, feature or license access, org-specific caps, health checks, release updates. Also H360 setup and errors (401, 403, 404, ROUTE_NOT_FOUND, INVALID_ARGUMENT). DO NOT TRIGGER for records, SOQL, schema, limits in sf org list limits, deploys, or which-plugin questions."
metadata:
domains: ["Platform"]
mcpTools:
# Salesforce-hosted server. The plugin can bundle it as salesforce-headless-360,
# or the user registers it under a name of their choice. The two give different
# tool prefixes, so Step 1 resolves the prefix at runtime instead of naming
# tools in allowed-tools.
headless-360:
tools: ["describe", "discover", "dispatch", "dispatch_readonly"]
semver: ">=1.0.0"
cliTools:
- tool: ["python3"]
semver: ">=3.9"
- tool: ["sf"]
semver: ">=2.0.0"
relatedSkills:
- "platform-capability-search"
- "platform-data-manage"
- "platform-soql-query"
- "platform-lsp-integrate"The **Headless 360 (H360) MCP server** is a Salesforce-hosted MCP server. It exposes an org's REST and Connect APIs, plus Setup-page operations that have no public API, through four tools: search a corpus of operations and recipes, read one's contract, and call it. This skill is the **contract** for those tools: when to reach for them, how to call them, how to keep writes safe, and how to read their errors. It also covers setup when the server isn't connected.
H360 may expose task-specific recipes in its catalog. Use `discover` to find a candidate and `describe` to inspect its current steps and inputs before calling it; don't rely on remembered or copied recipe details.
> This is not the plugin's capability discovery (`/salesforce-development:discover`, > "what could help me do X?"). That is `platform-capability-search`.
reads: a setting or preference, whether a feature or license is available, an org-specific cap, security or health posture, or pending release updates. For example: "Is event log generation on?", "Do we have Field Audit Trail?", or "Which release updates are due?"
state like the above.
The plugin routes work to skills first, then the `sf` CLI, then direct API calls. H360 is the direct-API tier:
1. An installed skill matches the task: use it. For example, record changes go to `platform-data-manage`, SOQL to `platform-soql-query`, and deploys to `platform-metadata-deploy`. 2. A purpose-built `sf` command does the job: use the CLI. For example, `sf org list limits` reports storage and daily API requests. 3. Otherwise, use H360 and follow this skill.
**Never fill an org-specific value from documentation.** An org's caps and settings can differ from the documented defaults: one org's field history cap was 200, not the documented 20. When a skill or command answers only part of a question, get the rest from H360 with `discover`. If H360 can't read it either, say the value is unverified and where in Setup the user can check it.
If H360 isn't connected or is disabled and the user doesn't want to set it up, `sf api request rest` can send the same REST call using the CLI's org login. It can't reach `/headless/invoke/...` paths; they return `404` there. The write rules in Step 5 still apply.
The four tool names end in `discover`, `describe`, `dispatch_readonly`, and `dispatch`. Their prefix depends on how the server was added.
server and use its four tools. Tool prefixes vary by host. This server signs in as the project's target org (`sf config get target-org`), so there's no `/mcp` sign-in. On Claude Code, enable **Headless 360 MCP server** in the plugin settings. On Codex, use the saved local opt-in below; CLI and desktop can then start normally. The setting defaults off on both hosts. When enabled, start in a Salesforce DX project with a target org, and activate H360 in that org (Setup, step 1). The project's `.sf/mcp-health/headless-360.json` records the last connection result.
is the registration name, such as `headless-360`. Use the host's tool search (ToolSearch on Claude Code) for `discover describe dispatch dispatch_readonly` and reuse the prefix of the server that has all four.
confirm the session restarted after the setting changed, the project has a target org, and the server is activated in that org. Otherwise follow Setup below.
version and Organization reads in Step 2 against each registration, show the server names and orgs, then ask which one to use. Use only that server for the rest of the task. Never write until the selected org is confirmed.
In this skill, `discover` means `<prefix>discover`, and so on. Use the field names from each tool's input schema. Query parameters go in `queryParams`, never in the `url`.
Every call runs as the signed-in user, in the org that issued the session's token. You never pass an org ID. Before the first write
This repository provides Salesforce agent skills, plugins, and sample apps for building applications.
Declared architecture snapshot for one Agentforce agent: planner, topics, actions, flows, Apex, prompt templates, and NGA…
Use this skill to Upgrade Einstein Bots into Agentforce agents end-to-end in a single pass, orchestrating per-bot Agent Spec…
Data Cloud 360° view of a single Agentforce session. TRIGGER when user asks to trace, inspect, summarize, or describe a specific…
Build, modify, audit, repair, optimize, debug, and deploy agents with Agentforce Agent Script. TRIGGER when: user creates,…
Analyze production Agentforce agent behavior using session traces and Data Cloud, and manage Agent Health Monitoring (AHM)…
Use to design an AI agent persona — identity, voice, tone, behavioral style, guardrails — and encode it into Agent Script (.agent…
Ask which skill or flow fits your situation. A router over the skills in this repo.
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…
Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…