Agent skill
A skill is a short file an agent reads to learn how to use a service. Copy the block below into your agent's skills directory (for Claude Code: .claude/skills/jatevo/SKILL.md; for Codex: a file the agent is pointed at). It contains no key; the key comes from the environment.
---
name: jatevo
description: Use the Jatevo console at https://jatevo.ai as an OpenAI-compatible, Anthropic-compatible or Gemini-compatible API with the key in JATEVO_API_KEY.
---
# Jatevo
The gateway at https://jatevo.ai serves team-managed provider connections. My individual key is in the environment variable JATEVO_API_KEY. Member and key permissions and allowances apply to every request. Each model supports only the formats advertised by its connection.
## Addresses
- OpenAI chat: POST https://jatevo.ai/v1/chat/completions, header `Authorization: Bearer $JATEVO_API_KEY`
- Responses: POST https://jatevo.ai/v1/responses, same header
- Anthropic: POST https://jatevo.ai/v1/messages, header `x-api-key: $JATEVO_API_KEY` and `anthropic-version: 2023-06-01`
- Gemini: POST https://jatevo.ai/v1beta/models/<id>:generateContent, header `x-goog-api-key: $JATEVO_API_KEY`
- Models: GET https://jatevo.ai/v1/models with any of the headers above
## Rules
- Never put the key in a URL. Never print it. Read it from the environment.
- Pick an authorized namespaced model from GET /v1/models; do not guess IDs or change providers silently. Use the protocol listed for that model.
- A 401 means authentication failed; stop and tell the user. A 403 means the key or member is not permitted to use this route or model.
- A 429 means an allowance, request rate, concurrency or provider limit; honor Retry-After where present and do not retry in a tight loop.
- Streaming uses the format's own flag.
The skill says nothing the API page does not say; it is the same facts in the shape an agent reads.