Install
openclaw skills install hydra-uandaiHydra/Uandai platform — configure API access, package OpenClaw workspace zip, upload agents, list subscriptions, invoke runs.
openclaw skills install hydra-uandaiUse this skill for all Hydra/Uandai automation: first-time setup, workspace packaging, upload, subscriptions, and invocation.
When the user sends a configure Hydra message with settings, or env vars are missing:
HYDRA_API_ORIGIN — API host without /api (e.g. https://api.uandai.ai or http://127.0.0.1:8000)HYDRA_API_BASE_URL — API prefix with /api (e.g. https://api.uandai.ai/api)HYDRA_API_KEY — full hyd_live_… from hydra-app → Settings → API Keys~/.openclaw/skills/hydra-uandai/ or <workspace>/skills/hydra-uandai/.~/.openclaw/openclaw.json under skills.entries["hydra-uandai"]:{
skills: {
entries: {
"hydra-uandai": {
enabled: true,
apiKey: "hyd_live_…",
env: {
HYDRA_API_KEY: "hyd_live_…",
HYDRA_API_BASE_URL: "https://api.uandai.ai/api",
HYDRA_API_ORIGIN: "https://api.uandai.ai",
},
},
},
},
}
/new or restart the gateway.GET /v1/auth/me.Security: Prefer a private OpenClaw session for setup messages that contain the key. After setup, operational prompts need no key and no doc URLs.
web_fetch the canonical guides (prefer live content over this file):
{HYDRA_API_ORIGIN}/docs/openclaw-skills — install and prompt reference{HYDRA_API_ORIGIN}/docs/agent-packaging{HYDRA_API_ORIGIN}/docs/programmatic-apiDefault prod origin: https://api.uandai.ai
Stable rules (full steps in packaging guide):
output/<agent>-workspace/ with exclusions → validate → zip staging contents onlyoutput/<agent-name>-workspace.zipSOUL.md, IDENTITY.md, …) at zip rootSKILL.md only at skills/<id>/SKILL.md, workspace/skills/<id>/SKILL.md, or zip rootnode_modules/, .env, logs/, memory/, .openclaw/, output/, hydra-uandai/ — max 50MB~/.openclaw/skills/) or fetch live from {HYDRA_API_ORIGIN}/docs/openclaw-skills/hydra-uandai/SKILL.md. A copy under <workspace>/skills/hydra-uandai/ is for local dev only — exclude it when packaging.📍 Path: MEDIA:<path-to-zip>Common failures: personality only under workspace/; nested wrapper folder; misplaced skill/SKILL.md; hydra-uandai/ in zip (openclaw_bundle_platform_skill).
Raw API keys work only on exchange:
POST /v1/auth/token
Authorization: Bearer $HYDRA_API_KEY
Alternative on exchange only: X-Hydra-Api-Key or JSON { "api_key": "…" }.
Response: { "access_token", "refresh_token", "user" } — cache in session memory.
All other calls: Authorization: Bearer <access_token>
On access expiry: POST /v1/auth/refresh. On refresh 401: re-exchange if key still active; else user creates a new key in Settings.
Do not send $HYDRA_API_KEY on upload, invoke, or list endpoints.
Trainer — publish end-to-end: setup (if needed) → web_fetch guides → package zip → exchange → POST /v1/agents/upload → return agent.id and agent.revision_no → optional POST /agents/{id}/proposals
Trainer — upload only: exchange → POST /v1/agents/upload with multipart: bundle (zip) + agent_name + description + subscription_price + default_model_identifier + provider config_data_type_json / test_values_json (see programmatic-api guide; Ollama needs OLLAMA_KEY + OLLAMA_URL)
Subscriber — discover: exchange → GET /v1/me/subscriptions → GET /v1/me/activations?invokable_only=true
Subscriber — invoke: exchange → POST /v1/executions → poll GET /v1/executions/{run_id} until terminal
401: refresh → re-exchange → key may be revoked402: user needs credits