/install oatda-text-completion
OATDA Text Completion
Generate text from 10+ LLM providers through OATDA's unified API.
API Key Resolution
All commands need the OATDA API key. Resolve it inline for each exec call:
export OATDA_API_KEY="${OATDA_API_KEY:-$(cat ~/.oatda/credentials.json 2>/dev/null | jq -r '.profiles[.defaultProfile].apiKey' 2>/dev/null)}"
If the key is empty or null, tell the user to get one at https://oatda.com and configure it.
Security: Never print the full API key. Only verify existence or show first 8 chars.
Model Mapping
| User says | Provider | Model |
|---|---|---|
| gpt-4o | openai | gpt-4o |
| gpt-4o-mini | openai | gpt-4o-mini |
| o1 | openai | o1 |
| claude, sonnet | anthropic | claude-3-5-sonnet |
| haiku | anthropic | claude-3-5-haiku |
| opus | anthropic | claude-3-opus |
| gemini | gemini-2.0-flash | |
| gemini-1.5 | gemini-1.5-pro | |
| deepseek | deepseek | deepseek-chat |
| mistral | mistral | mistral-large |
| grok | xai | grok-2 |
| qwen | alibaba | qwen-max |
Default: openai / gpt-4o if no model specified. If user provides provider/model format, split on /.
⚠️ Models update frequently. If a model ID fails, query
oatda-list-modelsfor the latest available models.
API Call
export OATDA_API_KEY="${OATDA_API_KEY:-$(cat ~/.oatda/credentials.json 2>/dev/null | jq -r '.profiles[.defaultProfile].apiKey' 2>/dev/null)}" && \
curl -s -X POST "https://oatda.com/api/v1/llm" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OATDA_API_KEY" \
-d '{
"provider": "\x3CPROVIDER>",
"model": "\x3CMODEL>",
"prompt": "\x3CUSER_PROMPT>",
"temperature": 0.7,
"maxTokens": 4096
}'
Optional Parameters
temperature: 0 (deterministic) to 2 (creative). Default: 0.7maxTokens: Max tokens to generate. Default: 4096 (max 128000 for some models)stream: Set totruefor streaming (not recommended via curl)
Response Format
{
"success": true,
"provider": "openai",
"model": "gpt-4o",
"response": "The generated text content...",
"tokenUsage": {
"prompt_tokens": 25,
"completion_tokens": 150,
"total_tokens": 175,
"cost": 0.001375
}
}
Present the response field to the user. Optionally mention token usage and cost.
Error Handling
| HTTP Status | Meaning | Action |
|---|---|---|
| 401 | Invalid API key | Tell user to check key at https://oatda.com/dashboard/api-keys |
| 402 | Insufficient credits | Tell user to check balance at https://oatda.com/dashboard/usage |
| 429 | Rate limited | Wait 5 seconds and retry once |
| 400 | Bad request / model not found | Check model format, suggest oatda-list-models |
Example
User: "Write a haiku about code using claude"
export OATDA_API_KEY="${OATDA_API_KEY:-$(cat ~/.oatda/credentials.json 2>/dev/null | jq -r '.profiles[.defaultProfile].apiKey' 2>/dev/null)}" && \
curl -s -X POST "https://oatda.com/api/v1/llm" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OATDA_API_KEY" \
-d '{
"provider": "anthropic",
"model": "claude-3-5-sonnet",
"prompt": "Write a haiku about code",
"temperature": 0.7,
"maxTokens": 256
}'
Notes
- The API expects
promptas a plain string, NOT amessagesarray - Split
provider/modelinto separate JSON fields - For long-form content, increase
maxTokens - Use
oatda-list-modelsto see all available models - Use
oatda-vision-analysisfor image analysis tasks
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install oatda-text-completion - 安装完成后,直接呼叫该 Skill 的名称或使用
/oatda-text-completion触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
OATDA Text Completion 是什么?
Generate text using OATDA's unified LLM API. Triggers when the user wants to generate, write, or complete text using a specific LLM provider (OpenAI, Anthrop... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 119 次。
如何安装 OATDA Text Completion?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install oatda-text-completion」即可一键安装,无需额外配置。
OATDA Text Completion 是免费的吗?
是的,OATDA Text Completion 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
OATDA Text Completion 支持哪些平台?
OATDA Text Completion 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 OATDA Text Completion?
由 devcsde(@devcsde)开发并维护,当前版本 v1.0.5。