agentleFS
SAPSAP/custom-agentic-cookbook/skills/sap-sovereign-regions/SKILL.md

sap-sovereign-regions

Skill9 starsChanged 23 days agoApache-2.0View on GitHub

Use this skill before suggesting any SAP AI Core model, Joule capability, or BTP service in a recipe or generated code. Encodes the model and service availability deltas for China Landing, NS2, KSA, and commercial regions so the agent never recommends something that doesn't exist in the customer's region.

The file

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 2 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If the user has named a region (china, ns2, ksa, commercial / EU/US/AP), use it.

    line 12
  2. Distinctive:

    If they haven't but the prompt mentions sovereign keywords ("21Vianet", "FedRAMP", "Saudi", "国产化", "ITAR"), infer the region and confirm.

    line 13
  3. Distinctive:

    If still ambiguous, ASK before generating code.

    line 14

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

SAP Sovereign Regions — what works where

When generating code or recipes for a SAP customer, always check region context first. China and KSA have no Anthropic/OpenAI models in AI Core; NS2 has a gated subset. Hardcoding a wrong model produces a 403 at deploy time — the highest-cost failure mode for sovereign pilots.

Decision rule

  1. If the user has named a region (china, ns2, ksa, commercial / EU/US/AP), use it.
  2. If they haven't but the prompt mentions sovereign keywords ("21Vianet", "FedRAMP", "Saudi", "国产化", "ITAR"), infer the region and confirm.
  3. If still ambiguous, ASK before generating code.

Model availability (June 2026 snapshot — verify against live catalog)

Familycommercialchinans2ksa
Anthropic Claude✅ Sonnet/Opus 4.x❌⚠ subset❌
OpenAI GPT✅ 4o/5/o-series❌⚠ subset❌
Mistral✅✅ Large 2407⚠ check✅ Large 2407
Llama / SAP-hosted OSS✅✅ preferred✅✅
Qwen / DeepSeekrare✅ via partner❌rare
Falconrarerarerare✅
Embeddings (OpenAI)✅❌⚠ subset❌
Embeddings (multilingual SAP-hosted)✅✅✅✅

Default picks for new recipes

RegionLLMEmbedding
commercialanthropic--claude-sonnet-4-5text-embedding-3-large
chinamistralai--mistral-large-2407SAP-hosted multilingual
ns2pull live catalog; never defaultpull live catalog
ksamistralai--mistral-large-2407SAP-hosted multilingual (verify Arabic quality)

Other deltas

Capabilitychinans2ksa
Cross-region egressblockedblocked (FedRAMP)restricted
Public PyPI / Docker Hubblocked; use mirrorsmirror onlymirror only
Joule UIgatedgatedGA
Joule Studio 2.0 / BAIPlaterlaterlater

When you must hardcode a region default

Don't. Scaffold with /sap-a2a-agent-toolkit:create-agent from the A2A Agent Toolkit submodule at toolkits/a2a-agent-toolkit/ instead, passing --llm-provider aicore or --llm-provider openai-compatible based on live preflight output and the source-backed regional reference in references/btp-regional-availability.md. The generated project reads the model name from an env var (MODEL_NAME for AI Core, MODEL_GATEWAY_URL + gateway-side deployment name for openai-compatible) — never inline a model name in a template's source code.

Verify

# Confirm a model is available in the customer's region:
curl -s "$AICORE_BASE_URL/v2/lm/scenarios/foundation-models/configurations" \
  -H "Authorization: Bearer $TOKEN" -H "AI-Resource-Group: $AICORE_RESOURCE_GROUP" \
  | jq -r '.resources[].name' | grep -i "$MODEL_QUERY"

Cross-references

  • references/btp-regional-availability.md — source-backed regional availability matrix and operating guidance
  • Region-aware bootstrap walkthrough: recipes/00-develop/00-region-preflight/

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.