sshvarzman-salesforce/claude-skills

sf-agent-api-variables

Agent API context and custom variables — passing session context to an agent and configuring variable accessibility.

소스 보기

사용 방법

  1. 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
  2. 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
  3. 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/sshvarzman-salesforce/claude-skills --skill sf-agent-api-variables

시작 전 확인

  • 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
  • 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Agent API Variables

Use This Skill When

  • Passing context variables ($Context.*) or custom variables in a start-session or send-message call.
  • Deciding which variables can be set at start vs edited mid-conversation.
  • Configuring variable API accessibility in Agentforce Builder or via Metadata API (ConversationVariable, ConversationContextVariable).

Concept

You can pass two kinds of variables so the agent can use them on subsequent turns:

  • Context variables — prefixed $Context. (for example $Context.EndUserLanguage). Predefined session context.
  • Custom variables — your own named values (for example team_descriptor, troubleshootingSteps).

Quick Start

Add a variables array to the start-session body (or a send-message body for editable variables):

json
{
  "externalSessionKey": "{RANDOM_UUID}",
  "instanceConfig": { "endpoint": "https://{MY_DOMAIN_URL}" },
  "streamingCapabilities": { "chunkTypes": ["Text"] },
  "bypassUser": true,
  "variables": [
    { "name": "$Context.EndUserLanguage", "type": "Text", "value": "en_US" },
    { "name": "team_descriptor", "type": "Text", "value": "The Greatest Team" },
    { "name": "troubleshootingSteps", "type": "Text", "value": "Complete this list of troubleshooting steps: 1. Confirm username/password. 2. ..." }
  ]
}

Each variable has name, type, and value.

Editability Rules

  • Many variables are read-only and can only be set during the start session call.
  • Context variables ($Context prefix) are not editable after the session starts — except $Context.EndUserLanguage.
  • Only editable variables can be modified during a send-message call.
  • When referencing variables derived from custom fields, omit the `__c` suffix. Example: Conversation_Key__c → $Context.Conversation_Key.

Variable Types

Text, Number, Boolean, Object, Date, DateTime, Currency, Id.

Configuring Accessibility

Agentforce Builder

When creating an agent variable, check Allow value to be set by API so the API can populate it.

Metadata API

Configure via ConversationVariable (in BotVersion/BotTemplate) and ConversationContextVariable (in Bot/BotTemplate).

Key fields:

FieldPurpose
dataTypeText, Number, Boolean, Object, Date, DateTime, Currency, Id
developerNameUnique name; starts with a letter, no spaces, no trailing underscore, no double underscores
labelHuman-readable label in the UI
descriptionUsed by the Agentforce planner service
includeInPromptWhether the variable is included in the prompt sent to the model
visibilityinternal = set only by action output; external = also settable by API (ConversationVariable only)

Do not change includeInPrompt for the default Id, EndUserId, and EndUserLanguage variables — doing so can block the agent from key session data.

Guardrails

  • To set a variable via API it must be external visibility (ConversationVariable) and "Allow value to be set by API" enabled.
  • Strip __c from custom-field-derived names, and use the $Context. prefix for context variables.
  • Don't try to mutate read-only/context variables after start (except $Context.EndUserLanguage) — the change is ignored.
  • Treat variable values as untrusted input downstream; validate before using in SOQL, HTML, or callouts.
  • Keep prompt-injected variables (includeInPrompt: true) minimal and non-sensitive.

Deliverables

  • A variable contract: name, type, context-vs-custom, set-at-start-vs-editable, and API accessibility.
  • Metadata definitions (ConversationVariable / ConversationContextVariable) for any API-settable variables.
  • A validation plan for how variable values are consumed downstream.

Additional Resources

관련 작업

같은 저장소의 Skills

더 많은 Skills

모든 Skills
sshvarzman-salesforce
커뮤니티

activating-datacloud

Salesforce Data Cloud Act phase. Use this skill when the user manages activations, activation targets, data actions, or downstream delivery of Data Cloud audiences and data. TRIGGER when: user manages activations, activation targets, data actions, or downstream delivery of Data Cloud audiences and data. DO NOT TRIGGER when: the task is segment creation (use segmenting-datacloud), data retrieval/search work (use retrieving-datacloud), or STDM/session tracing (use observing-agentforce).

설치 수
1
GitHub Stars
0
업데이트
10월 15일
sshvarzman-salesforce
커뮤니티

agentforce-skills-research

Research Agentforce configuration patterns — topics, actions, instructions, CLTs, knowledge, planner behavior. Searches Salesforce docs, Trailhead, internal repos (git.soma), Slack channels, and Google Docs to find working examples, known issues, and best practices.

설치 수
1
GitHub Stars
0
업데이트
10월 15일
sshvarzman-salesforce
커뮤니티

harmonizing-datacloud

Salesforce Data Cloud Harmonize phase. Use this skill when the user works with DMOs, mappings, relationships, identity resolution, unified profiles, data graphs, or universal IDs. TRIGGER when: user works with DMOs, mappings, relationships, identity resolution, unified profiles, data graphs, or universal IDs. DO NOT TRIGGER when: the task is only about streams/DLOs (use preparing-datacloud), segments/insights (use segmenting-datacloud), retrieval/search (use retrieving-datacloud), or STDM/sessio

설치 수
1
GitHub Stars
0
업데이트
10월 15일
sshvarzman-salesforce
커뮤니티

preparing-datacloud

Salesforce Data Cloud Prepare phase. Use this skill when the user creates or manages Data Cloud data streams, DLOs, transforms, or Document AI configurations. TRIGGER when: user creates or manages Data Cloud data streams, DLOs, transforms, or Document AI configurations, or asks about ingestion into Data Cloud. DO NOT TRIGGER when: the task is connection setup only (use connecting-datacloud), DMOs and identity resolution (use harmonizing-datacloud), or query/search work (use retrieving-datacloud)

설치 수
1
GitHub Stars
0
업데이트
10월 15일