OATDA List Models

v1.0.4

List available AI models from OATDA's 10+ providers with optional filtering by type (chat, image, video) or provider name. Triggers when the user wants to se...

0· 111·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for devcsde/oatda-list-models.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "OATDA List Models" (devcsde/oatda-list-models) from ClawHub.
Skill page: https://clawhub.ai/devcsde/oatda-list-models
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required env vars: OATDA_API_KEY
Required binaries: curl, jq
Config paths to check: ~/.oatda/credentials.json
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install oatda-list-models

ClawHub CLI

Package manager switcher

npx clawhub@latest install oatda-list-models
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description (list models from OATDA) match the declared requirements: an OATDA API key, curl and jq for HTTP+JSON, and an optional local credentials file for fallback. Nothing requested appears unrelated to listing models.
Instruction Scope
Instructions explicitly read ~/.oatda/credentials.json as a fallback to obtain OATDA_API_KEY and run curl queries against https://oatda.com/api/v1/llm/models. Reading the credentials file is within scope for resolving the API key, but it does require access to a local file containing secrets — the SKILL.md correctly warns not to print the full key.
Install Mechanism
Instruction-only skill with no install steps or downloads. Lowest-risk install profile.
Credentials
Only requests the OATDA_API_KEY and an optional credentials file under ~/.oatda. No unrelated secrets or additional service credentials are required.
Persistence & Privilege
Does not request always:true, does not modify other skills or system settings. Default agent invocation settings are preserved.
Assessment
This skill is coherent for listing models via OATDA. Before installing, verify you trust https://oatda.com and that your OATDA_API_KEY has minimal required privileges. Keep ~/.oatda/credentials.json file permissions restricted (e.g., chmod 600) since the skill reads that file to obtain the key. Never paste the full API key into chat; the SKILL.md's guidance to only show the first 8 characters is appropriate. If you prefer stricter separation, create a dedicated API key for this skill and revoke it if you stop using the skill.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

📋 Clawdis
Binscurl, jq
EnvOATDA_API_KEY
Config~/.oatda/credentials.json
Primary envOATDA_API_KEY
latestvk97dmgcxyr86m6rd1jzjggv3r584496z
111downloads
0stars
4versions
Updated 3w ago
v1.0.4
MIT-0

OATDA List Models

List all available AI models from OATDA's providers with optional filtering.

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.

API Calls

All requests are GET. Add query parameters to filter.

List all models

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 GET "https://oatda.com/api/v1/llm/models" \
  -H "Authorization: Bearer $OATDA_API_KEY"

Filter by type

  • ?type=chat — Text/chat models
  • ?type=image — Image generation models
  • ?type=video — Video generation models

Filter by provider

  • ?provider=openai
  • ?provider=anthropic
  • ?provider=google
  • ?provider=bytedance
  • ?provider=deepseek
  • etc.

Combine filters

curl -s -X GET "https://oatda.com/api/v1/llm/models?type=image&provider=openai" \
  -H "Authorization: Bearer $OATDA_API_KEY"

Discover model-specific parameters

Image and video models include supported_params describing model-specific options:

# Image model params
curl -s -X GET "https://oatda.com/api/v1/llm/models?type=image" \
  -H "Authorization: Bearer $OATDA_API_KEY" | jq '.image_models[] | {id, supported_params}'

# Video model params
curl -s -X GET "https://oatda.com/api/v1/llm/models?type=video" \
  -H "Authorization: Bearer $OATDA_API_KEY" | jq '.video_models[] | {id, supported_params}'

# Specific provider's video params
curl -s -X GET "https://oatda.com/api/v1/llm/models?type=video&provider=bytedance" \
  -H "Authorization: Bearer $OATDA_API_KEY" | jq '.video_models[] | select(.model | contains("seedance")) | .supported_params'

Response Format

{
  "total": 42,
  "filter": {"type": "all", "provider": null},
  "chatModels": [
    {"id": "provider/model-name", "provider": "...", "model": "...", "displayName": "..."}
  ],
  "imageModels": [
    {
      "id": "provider/model-name",
      "provider": "...",
      "model": "...",
      "displayName": "...",
      "supported_params": {
        "style": {"type": "string", "values": ["vivid", "natural"], "default": "vivid"}
      }
    }
  ],
  "videoModels": [
    {
      "id": "provider/model-name",
      "provider": "...",
      "model": "...",
      "displayName": "...",
      "supported_params": {
        "ratio": {"type": "string", "values": ["16:9", "9:16", "1:1"], "default": "16:9"},
        "duration": {"type": "string", "values": ["5", "10"], "default": "5"},
        "generate_audio": {"type": "boolean", "default": false, "optional": true},
        "first_frame_image": {"type": "file", "accept": "image/*", "optional": true}
      }
    }
  ]
}

Understanding supported_params

Each parameter has:

  • type: string, number, boolean, or file
  • values: Allowed values for enums
  • default: Default value
  • description: What it does
  • optional: Whether required
  • accept: For file types — accepted MIME types (e.g., "image/*")
  • min / max: Range constraints for numbers

File-type params (e.g., mask, first_frame_image, last_frame_image) require public HTTPS URLs, not local paths.

Presenting Results

Format models by category. Use the actual data returned by the API — do not hardcode model names.

Chat Models (N total):

  • provider/model-name — Display Name

Image Models (N total):

  • provider/model-name — Display Name

Video Models (N total):

  • provider/model-name — Display Name

Error Handling

HTTP StatusMeaningAction
401Invalid API keyTell user to check their key
429Rate limitedWait and retry

Notes

  • This is a GET request — no request body
  • The id field (e.g., openai/gpt-4o) is the model identifier used in other OATDA skills
  • Use supported_params to discover model-specific parameters before generating
  • For file-type params, provide publicly accessible URLs
  • Related skills: oatda-text-completion, oatda-generate-image, oatda-generate-video, oatda-vision-analysis

Comments

Loading comments...