llm-provider-knowledge
Verify LLM-provider product facts against official documentation, never
memory. This skill is the multi-provider sibling of Claude Code's bundled
product-self-knowledge — extended to OpenAI, Google Gemini, Anthropic,
Mistral, xAI, DeepSeek, Cohere, and Meta Llama, and portable to every host this
package projects to (not just Claude Code).
This skill is a signpost, not a library. It routes you to the authoritative
source and forces a source-cited answer. It does not cache model IDs,
context windows, prices, or rate limits — those churn constantly, and a cached
copy is exactly the stale "from memory" answer this skill exists to prevent.
When to use
- Your reply would state a specific fact about a provider's product: a model ID
or its context window, token pricing, a rate/quota limit, an SDK/API detail
(endpoint, parameter, auth, batch, streaming, function-calling shape), or a
consumer-app plan limit (ChatGPT/Gemini/Claude app tiers).
- Coding against a provider SDK where a wrong model name, parameter, or limit
would break at runtime.
- Content or comparisons that assert provider capabilities or pricing.
- Any time you would otherwise answer such a fact from training data — it may be
outdated or wrong.
When NOT to fire
- Ordinary SDK code that asserts no product fact (wiring a call whose model
and params the user already gave).
- The user already supplied the verified fact — use it; don't re-litigate.
- Writing provider-specific prompt grammar →
prompt-engineering-patterns.
- Choosing which model to use for the host →
model-recommendation (never
recommend another vendor's model over the host's; this skill only reports
facts, it does not steer model choice).
- Image-provider selection →
image-provider-routing.
Core principles
- Accuracy over guessing — if unsure, route to the docs; never assert.
- Distinguish products — a provider's API, its developer platform, and its
consumer app are separate surfaces with separate facts and separate docs.
- Source everything — every product fact in the reply carries an official
URL. No URL → not verified → don't state it as fact.
- Route, don't cache — hand off to the live docs; do not transcribe
volatile specs into the reply as if durable.
Provider routing table
Route to the stable root and read live from there — do not deep-link to
pages that churn. Prefer a provider's machine-readable index where one exists.
| Provider |
Docs root |
API reference |
Product / support |
| OpenAI (GPT) |
platform.openai.com/docs |
platform.openai.com/docs/api-reference |
help.openai.com |
| Google Gemini |
ai.google.dev/gemini-api/docs |
ai.google.dev/api |
support.google.com (Gemini app) |
| Anthropic (Claude) |
docs.claude.com/en/docs (index: /en/docs_site_map.md) |
docs.claude.com/en/api/overview |
support.claude.com |
| Mistral |
docs.mistral.ai |
docs.mistral.ai/api |
help.mistral.ai |
| xAI (Grok) |
docs.x.ai |
docs.x.ai/developers |
x.ai |
| DeepSeek |
api-docs.deepseek.com |
api-docs.deepseek.com/api |
platform.deepseek.com |
| Cohere |
docs.cohere.com (index: docs.cohere.com/llms.txt) |
docs.cohere.com/reference |
dashboard.cohere.com |
| Meta Llama |
llama.com (dev docs: ai.developer.meta.com/docs) |
ai.developer.meta.com/docs |
llama.com |
Claude Code specifics (install, Node.js requirement, MCP, config):
docs.anthropic.com/en/docs/claude-code/claude_code_docs_map.md.
Hosted access (not a distinct vendor): Azure OpenAI, AWS Bedrock, and
Google Vertex AI resell the underlying vendor's models. Route to BOTH the
underlying vendor's row above AND the cloud's own docs (learn.microsoft.com,
docs.aws.amazon.com/bedrock, cloud.google.com/vertex-ai) — model IDs,
quotas, and regions differ from the vendor's direct API.
Procedure
- Identify the provider and the surface — API / developer platform /
consumer app. A ChatGPT-Plus limit is not an OpenAI-API rate limit.
- Pick the row + column from the table; go to the stable root.
- Read the live docs for the exact fact (navigate from the root; follow
the provider's own index /
llms.txt where present).
- State the fact with its source URL. If the docs can't be reached or are
ambiguous, say so and point the user at the root rather than guessing.
- Never transcribe a volatile spec as durable — frame it as "per as
of now"; the source is authoritative, the reply is a pointer.
Output format
Every reply that states a provider product fact MUST include:
- The fact, scoped to the product surface — name the provider AND which
surface (API / platform / consumer app) it applies to.
- The official source URL — the specific docs page the fact came from (or
the stable root when you're directing the user to read it themselves).
- A freshness caveat when the fact is volatile (pricing, limits, model
availability): "verify at — these change without notice."
Do NOT
- Do NOT state a model ID, context window, price, or rate limit from
memory — route to the docs and cite the URL, or say you're unsure.
- Do NOT transcribe a volatile spec (pricing, limits, model availability)
into the reply as if durable — frame it as "per as of now".
- Do NOT conflate a provider's API with its consumer app — they carry
different limits and different docs.
- Do NOT steer the user to another vendor's model over the host's — that is
model-recommendation; this skill reports facts neutrally.
- Do NOT cache a provider's docs into this skill. When a root URL moves,
fix the one table row; a mismatch a user reports is a signal to correct the
row, never to start transcribing pages here.
Gotcha
- Provider docs URLs churn (Meta's Llama dev-docs host redirected during
this skill's authoring). That is why the skill links to stable roots and
reads live — a deep-linked page memorised here would rot. If a root itself
moves, fix the one table row; never start caching pages to compensate.
- Do not conflate surfaces. "Gemini" the app and the Gemini API have
different limits and different docs; the same for ChatGPT vs the OpenAI API
and Claude.ai vs the Claude API.
- Redundant with the harness on Claude Code. Claude Code's own
product-self-knowledge also fires for Anthropic facts — both route to the
same Anthropic docs, so the overlap is harmless. On every other host this is
the only such skill.
1---2name: llm-provider-knowledge3description: Before stating any specific fact about an LLM provider's product — models, pricing, limits, context windows, SDK/API — for OpenAI, Gemini, Claude & others, verify against official docs, not memory.4---56# llm-provider-knowledge78Verify LLM-provider product facts against **official documentation**, never9memory. This skill is the multi-provider sibling of Claude Code's bundled10`product-self-knowledge` — extended to OpenAI, Google Gemini, Anthropic,11Mistral, xAI, DeepSeek, Cohere, and Meta Llama, and portable to every host this12package projects to (not just Claude Code).1314**This skill is a signpost, not a library.** It routes you to the authoritative15source and forces a source-cited answer. It does **not** cache model IDs,16context windows, prices, or rate limits — those churn constantly, and a cached17copy is exactly the stale "from memory" answer this skill exists to prevent.1819## When to use2021- Your reply would state a specific fact about a provider's product: a model ID22 or its context window, token pricing, a rate/quota limit, an SDK/API detail23 (endpoint, parameter, auth, batch, streaming, function-calling shape), or a24 consumer-app plan limit (ChatGPT/Gemini/Claude app tiers).25- Coding against a provider SDK where a wrong model name, parameter, or limit26 would break at runtime.27- Content or comparisons that assert provider capabilities or pricing.28- Any time you would otherwise answer such a fact from training data — it may be29 outdated or wrong.3031## When NOT to fire3233- Ordinary SDK code that asserts **no** product fact (wiring a call whose model34 and params the user already gave).35- The user already supplied the verified fact — use it; don't re-litigate.36- Writing provider-specific prompt grammar → `prompt-engineering-patterns`.37- Choosing which model to use for the host → `model-recommendation` (never38 recommend another vendor's model over the host's; this skill only reports39 facts, it does not steer model choice).40- Image-provider selection → `image-provider-routing`.4142## Core principles43441. **Accuracy over guessing** — if unsure, route to the docs; never assert.452. **Distinguish products** — a provider's API, its developer platform, and its46 consumer app are separate surfaces with separate facts and separate docs.473. **Source everything** — every product fact in the reply carries an official48 URL. No URL → not verified → don't state it as fact.494. **Route, don't cache** — hand off to the live docs; do not transcribe50 volatile specs into the reply as if durable.5152## Provider routing table5354Route to the **stable root** and read live from there — do not deep-link to55pages that churn. Prefer a provider's machine-readable index where one exists.5657| Provider | Docs root | API reference | Product / support |58|---|---|---|---|59| **OpenAI** (GPT) | `platform.openai.com/docs` | `platform.openai.com/docs/api-reference` | `help.openai.com` |60| **Google Gemini** | `ai.google.dev/gemini-api/docs` | `ai.google.dev/api` | `support.google.com` (Gemini app) |61| **Anthropic** (Claude) | `docs.claude.com/en/docs` (index: `/en/docs_site_map.md`) | `docs.claude.com/en/api/overview` | `support.claude.com` |62| **Mistral** | `docs.mistral.ai` | `docs.mistral.ai/api` | `help.mistral.ai` |63| **xAI** (Grok) | `docs.x.ai` | `docs.x.ai/developers` | `x.ai` |64| **DeepSeek** | `api-docs.deepseek.com` | `api-docs.deepseek.com/api` | `platform.deepseek.com` |65| **Cohere** | `docs.cohere.com` (index: `docs.cohere.com/llms.txt`) | `docs.cohere.com/reference` | `dashboard.cohere.com` |66| **Meta Llama** | `llama.com` (dev docs: `ai.developer.meta.com/docs`) | `ai.developer.meta.com/docs` | `llama.com` |6768**Claude Code specifics** (install, Node.js requirement, MCP, config):69`docs.anthropic.com/en/docs/claude-code/claude_code_docs_map.md`.7071**Hosted access** (not a distinct vendor): Azure OpenAI, AWS Bedrock, and72Google Vertex AI resell the underlying vendor's models. Route to BOTH the73underlying vendor's row above AND the cloud's own docs (`learn.microsoft.com`,74`docs.aws.amazon.com/bedrock`, `cloud.google.com/vertex-ai`) — model IDs,75quotas, and regions differ from the vendor's direct API.7677## Procedure78791. **Identify the provider and the surface** — API / developer platform /80 consumer app. A ChatGPT-Plus limit is not an OpenAI-API rate limit.812. **Pick the row + column** from the table; go to the stable root.823. **Read the live docs** for the exact fact (navigate from the root; follow83 the provider's own index / `llms.txt` where present).844. **State the fact with its source URL.** If the docs can't be reached or are85 ambiguous, say so and point the user at the root rather than guessing.865. **Never transcribe a volatile spec as durable** — frame it as "per <URL> as87 of now"; the source is authoritative, the reply is a pointer.8889## Output format9091Every reply that states a provider product fact MUST include:92931. **The fact, scoped to the product surface** — name the provider AND which94 surface (API / platform / consumer app) it applies to.952. **The official source URL** — the specific docs page the fact came from (or96 the stable root when you're directing the user to read it themselves).973. **A freshness caveat when the fact is volatile** (pricing, limits, model98 availability): "verify at <URL> — these change without notice."99100## Do NOT101102- **Do NOT** state a model ID, context window, price, or rate limit from103 memory — route to the docs and cite the URL, or say you're unsure.104- **Do NOT** transcribe a volatile spec (pricing, limits, model availability)105 into the reply as if durable — frame it as "per <URL> as of now".106- **Do NOT** conflate a provider's API with its consumer app — they carry107 different limits and different docs.108- **Do NOT** steer the user to another vendor's model over the host's — that is109 `model-recommendation`; this skill reports facts neutrally.110- **Do NOT** cache a provider's docs into this skill. When a root URL moves,111 fix the one table row; a mismatch a user reports is a signal to correct the112 row, never to start transcribing pages here.113114## Gotcha115116- **Provider docs URLs churn** (Meta's Llama dev-docs host redirected during117 this skill's authoring). That is *why* the skill links to stable roots and118 reads live — a deep-linked page memorised here would rot. If a root itself119 moves, fix the one table row; never start caching pages to compensate.120- **Do not conflate surfaces.** "Gemini" the app and the Gemini API have121 different limits and different docs; the same for ChatGPT vs the OpenAI API122 and Claude.ai vs the Claude API.123- **Redundant with the harness on Claude Code.** Claude Code's own124 `product-self-knowledge` also fires for Anthropic facts — both route to the125 same Anthropic docs, so the overlap is harmless. On every other host this is126 the only such skill.