pruna-api
Use before any Pruna or Replicate HTTP call — credentials, upload/poll/download, parallel batches, and agent safety.
Rank
62
Safety
84
Downloads
1.0k
Updated
Oct 11, 2026
Version
1.0.14
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1K downloads reported by the source. Last updated 10/11/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 11, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 11, 2026
- Adoption signal
- 1K downloadsadoption · observed Oct 11, 2026
- Latest release
- 1.0.14release · observed Sep 29, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s173djpkkm1x4yfzg522h5vfp989mrn5:pruna-api- Install using `clawhub skill install s173djpkkm1x4yfzg522h5vfp989mrn5:pruna-api` in an isolated environment before connecting it to live workloads.
- No published capability contract is available yet, so validate auth and request/response behavior manually.
- Review the upstream CLAWHUB listing at https://clawhub.ai/pruna-ai/pruna-api before using production credentials.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-pruna-ai-pruna-api/snapshot"
Run-check
$0.02 USD1 measured facts are behind this paywall: success rate and latency, uptime and estimated cost, when not to use it, how to call it, benchmark scores.
Agents pay $0.02 in USDC. A card payment is $0.50, the smallest a card allows.
Documentation
CLAWHUB
147,342 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
--- name: pruna-api description: Use before any Pruna or Replicate HTTP call — credentials, upload/poll/download, parallel batches, and agent safety. license: MIT metadata: version: "1.0.14" package: pruna-skills --- # Pruna API HTTP patterns for the **Pruna P-API** and **Replicate** (audio tools). Install this before paid `POST` calls from Pruna tool skills. ## Install | Skill | Description | Install | | --- | --- | --- | | `pruna-api` | Use before any Pruna or Replicate HTTP call — credentials, upload/poll/download, parallel batches, and agent safety. | `npx skills add PrunaAI/pruna-skills@pruna-api -y` | | `generation-diversity` | Use when writing any generative prompt — ritual seed, explicit structure, scenario axes, and quality gates before paid API calls. | `npx skills add PrunaAI/pruna-skills@generation-diversity -y` | ## When to use - Setting up `PRUNA_API_KEY` / Replicate tokens - Uploading files, polling predictions, downloading outputs - Parallel async multi-scene batches - Safety review before enabling skills in untrusted repos ## Agent habit In the **first reply**, name `` `pruna-api` `` in backticks. Before any paid `POST`, confirm `PRUNA_API_KEY` and/or `REPLICATE_API_TOKEN` as needed. If media path, voice, or brand is still open, open intake → **`generation-diversity`** clarification intake before upload. Do not invent model payloads — use the matching tool skill. ## When NOT to use Use a different skill instead: | Skill | Description | Install | | --- | --- | --- | | `p-image-ideogram` | Use when photo generation needs more control — photoreal results, text in the image, or structured JSON with hex colors and bounding boxes. Simpler photo generation, edits, and video use other skills in the suite. | `npx skills add PrunaAI/pruna-skills@p-image-ideogram -y` | | `p-image` | Use when someone explicitly wants the fastest, cheapest photo generation — mood boards, bulk panels, or quick iterations — not when controlled photoreal or in-image text is needed. | `npx skills add PrunaAI/pruna-skills@p-image -y` | | `p-video-2-pro` | Use when someone wants a cinematic clip from text or start/end frames — product ads, documentary shots, or dialogue with generated audio. Not for 1080p, imported audio tracks, or talking-head-only hosts. | `npx skills add PrunaAI/pruna-skills@p-video-2-pro -y` | | `p-video-2` | Use when someone wants a polished short clip from text, images, or imported audio — 1080p B-roll, start/end frame animation, or a motion shot with a mixed track. Not for cinematic generated-audio clips or talking-head-only hosts. | `npx skills add PrunaAI/pruna-skills@p-video-2 -y` | | `p-video` | Use when someone wants a simple short clip from text or images — quick B-roll, drafts, or start/end frame animation. Not when the brief needs cinematic generation, highest quality, tight lip-sync, or imported audio at 1080p. | `npx skills add PrunaAI/pruna-skills@p-video -y` | | `generation-diversity` | Use when writing any generat
_meta.json
{
"ownerId": "kn7cagwf7q3t0cxrgteb7xk0bh81j0eb",
"slug": "pruna-api",
"version": "1.0.14",
"publishedAt": 1790695976818
}references/agent-safety.md
# Agent safety (data, credentials, locale) Required before the first paid generation call (`POST /v1/predictions`, Replicate prediction, or file upload to Pruna/Replicate). Link from tool and workflow skills that transmit media. ## Privacy / external transmission Local images, audio, scripts, and portraits are **uploaded to remote APIs** (primarily `https://api.pruna.ai/`; Replicate for TTS/song/bed/WhisperX). Uploads may include biometric-like portraits, personal voice, or copyrighted material. - Get **explicit user acknowledgment** before the first upload or prediction in a session (or when new media is introduced). - Do **not** use third-party likenesses or voices without the user’s confirmation that they have consent. - Tell the user that content leaves the local environment and is processed/stored remotely per the provider’s terms. ## Credentials - Read `PRUNA_API_KEY` / `REPLICATE_API_TOKEN` from the **host environment** only (shell / `.env` — never commit). - **Never** embed keys in prompts, chat, manifests, plan JSON, logs, or subagent task text. - Prefer the **parent agent** to own API calls. Do not fan credentials across parallel subagents unless the host documents isolated secret injection. - If a key is missing, stop and use the templates in [api-credentials.md](./api-credentials.md). ## Local disk Downloads (`curl -o …`, runners writing under an output dir) **create or overwrite** local files. Confirm the output path with the user before writing; avoid clobbering unrelated paths. ## Locale and voice - Confirm **`voice_language`** (and voice preset) with the user before avatar/TTS jobs. - Examples that use `English (US)` are **illustrative only** — not a silent default override of user locale. ## Creative and media decisions Before the first upload or paid call, resolve decisions that change cost or output when the user has not already answered: **generate vs use existing** media, brand/palette, narration vs text-only, music bed vs silent, aspect/duration/**resolution (720p/1080p, canvas, MP)**, and workflow **approval gates**. Shared checklist: open intake → **`generation-diversity`** clarification intake. ## Related - [api-credentials.md](./api-credentials.md) — signup + header rules - [pruna-api.md](./pruna-api.md) — upload / poll / download - generation-quality-checklists.md#approval-gates-workflows (`generation-diversity`) — approval phases
references/api-credentials.md
# API credentials (Pruna + Replicate)
**Agent rule:** Before any `POST /v1/predictions`, Replicate prediction, or paid runner — check env vars. If a required key is **missing or empty**, **stop** and tell the user how to sign up. Do not guess, mock, or skip with placeholder keys.
## Pruna P-API
| | |
|--|--|
| **Env var** | `PRUNA_API_KEY` |
| **Header** | `apikey: ${PRUNA_API_KEY}` (not `Authorization: Bearer`) |
| **Sign up / get key** | [Pruna dashboard](https://dashboard.pruna.ai/) |
| **Docs** | [Quickstart](https://docs.api.pruna.ai/guides/quickstart) · [pruna-api.md](./pruna-api.md) |
**Used by:** all `p-image*`, `p-video*` tool skills and Pruna workflow runners.
### If `PRUNA_API_KEY` is missing — agent message template
> Pruna generation needs an API key. Sign up or sign in at **[dashboard.pruna.ai](https://dashboard.pruna.ai/)**, create an API key, then set:
>
> ```bash
> export PRUNA_API_KEY="your_key_here"
> ```
>
> Add that to your shell profile or project `.env` (never commit the key). Reply when it’s set and we can continue.
## Replicate
| | |
|--|--|
| **Env var** | `REPLICATE_API_TOKEN` |
| **Header** | `Authorization: Bearer ${REPLICATE_API_TOKEN}` |
| **Sign up / get token** | [Replicate API tokens](https://replicate.com/account/api-tokens) ([sign in](https://replicate.com/signin) first if needed) |
| **Docs** | [replicate-api.md](./replicate-api.md) |
**Used by:** `music-2.5`, `gemini-3.1-flash-tts`, `stable-audio-2.5`, `whisperx`, and workflow beds/TTS/song phases.
### If `REPLICATE_API_TOKEN` is missing — agent message template
> This step uses Replicate (song, TTS, transcription, or background bed). Create a token at **[replicate.com/account/api-tokens](https://replicate.com/account/api-tokens)**, then set:
>
> ```bash
> export REPLICATE_API_TOKEN="r8_..."
> ```
>
> Reply when it’s set and we can continue.
## Which key does this job need?
| Task | Keys required |
|------|----------------|
| `p-image`, `p-image-edit`, `p-image-upscale`, `p-image-try-on`, `p-image-ideogram` | `PRUNA_API_KEY` |
| `p-video-2-pro`, `p-video-2`, `p-video`, `p-video-avatar`, `p-video-animate`, `p-video-replace`, `p-video-edit` | `PRUNA_API_KEY` |
| Music 2.5 song generation | `REPLICATE_API_TOKEN` |
| Gemini TTS narration | `REPLICATE_API_TOKEN` |
| Stable Audio background bed | `REPLICATE_API_TOKEN` |
| WhisperX transcription | `REPLICATE_API_TOKEN` |
| Music video / explainer (full pipeline) | **Both** — Pruna for stills/video; Replicate for song/TTS/bed as needed |
When only one key is missing, suggest **only** that provider’s signup link — not both.
## Security
- Never print full keys in chat or commit them to git.
- `.env` is gitignored; prefer env vars over hardcoding in plans or manifests.
- Never embed keys in prompts, manifests, plan JSON, logs, or **subagent task text**.
- Prefer the **parent agent** to own API calls; do not fan credentials across parallel subagents unless the host documents isolated secret injection.
- Freferences/pruna-api.md
# Pruna P-API (shared reference)
Official docs: [Developer Portal](https://docs.api.pruna.ai/), [Quickstart](https://docs.api.pruna.ai/guides/quickstart), [Models](https://docs.api.pruna.ai/guides/models).
**Before first upload or paid call:** [agent-safety.md](./agent-safety.md) — privacy, credentials, local disk, locale.
## Authentication
Send your API key in the **`apikey`** header on every request (not `Authorization: Bearer`).
```bash
-H "apikey: ${PRUNA_API_KEY}"
```
Use the same header on delivery URLs when downloading bytes.
## Base URL
- Predictions: `https://api.pruna.ai/v1/predictions`
- File upload: `https://api.pruna.ai/v1/files` (multipart form field `content=@file`)
- Status: `https://api.pruna.ai/v1/predictions/status/{id}`
- Delivery: use `generation_url` from a succeeded status (may be relative; prefix with `https://api.pruna.ai` if needed)
## Request shape
All generative calls use:
- `POST /v1/predictions`
- Headers: `Content-Type: application/json`, `apikey`, **`Model: <model-id>`** (for example `p-image-ideogram`, `p-image`, `p-image-edit`, `p-image-try-on`, `p-video-2-pro`, `p-video-2`, `p-video`, `p-video-avatar`, `p-video-animate`, `p-video-replace`, `p-image-upscale`)
- JSON body: `{ "input": { ... } }` where `input` fields match the model page (see each skill).
## Sync vs async
| Mode | Header | When to use |
|------|--------|--------------|
| Synchronous | `Try-Sync: true` | Fast jobs (many images, simple edits). Completes within ~60s or may time out. |
| Asynchronous | omit `Try-Sync` | Video, long edits, production reliability. Poll `get_url` / status until `succeeded` or `failed`. |
Official guidance: prefer **async for video**; sync is acceptable for quick **p-image** / **p-image-edit** / **p-image-upscale** / **p-image-try-on** when latency is low.
## Parallel async (multi-scene / batch)
When several predictions **do not depend on each other's outputs**, create them **in parallel** (async, omit `Try-Sync`), then **poll all** `get_url` endpoints until every job finishes. Use **phased** execution when later steps need URLs from earlier steps (hero → scene edits → avatars).
| Rule | Guidance |
|------|----------|
| **Async first** | Omit `Try-Sync` on production video, avatar, and batch image jobs. |
| **Parallel when independent** | If job B does not need job A's `generation_url`, start both before polling either. |
| **Phased when dependent** | Finish phase N (all jobs in the phase) before starting phase N+1. |
| **Subagents for lanes** | One subagent per independent scene/lane when 2+ scenes; parent owns manifest and assembly. |
| **Sync only for probes** | `Try-Sync: true` is OK for a **single** quick image test — not for video or batch runs. |
Typical multi-scene avatar phases: plan → hero `p-image-ideogram` → parallel scene `p-image-edit` → parallel `p-video-avatar` → assembly. Narrated films: parallel Gemini TTS per scene after scripts approved, then parallel `p-video-2` (quality) or `p-video`AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/pruna-ai/skills/pruna-api",
"sourceUrl": "https://clawhub.ai/pruna-ai/skills/pruna-api",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T18:49:25.196Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-pruna-ai-pruna-api/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-pruna-ai-pruna-api/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-11T18:49:25.196Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1K downloads",
"href": "https://clawhub.ai/pruna-ai/pruna-api",
"sourceUrl": "https://clawhub.ai/pruna-ai/pruna-api",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T18:49:25.196Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.0.14",
"href": "https://clawhub.ai/pruna-ai/pruna-api",
"sourceUrl": "https://clawhub.ai/pruna-ai/pruna-api",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-09-29T15:32:56.818Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-pruna-ai-pruna-api/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-pruna-ai-pruna-api/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.0.14",
"description": "- Bumped version to 1.0.14. - Updated documentation in SKILL.md and references/pruna-models.md. - Removed deprecated skill-card.md file.",
"href": "https://clawhub.ai/pruna-ai/pruna-api",
"sourceUrl": "https://clawhub.ai/pruna-ai/pruna-api",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-09-29T15:32:56.818Z",
"isPublic": true
}
]
}Record generated Oct 11, 2026.
For crawlers
This page is free to read. The run-check above is the only paid part, and it answers HTTP 402 until it is paid. Everything else here is public.
- One record, as JSON: card, facts, snapshot, contract, trust.
- Every agent, one feed: /.well-known/ai-catalog.json
- What this site sells, and the price: /.well-known/x402
- Paid run-check: /api/v1/agents/clawhub-pruna-ai-pruna-api/run-check
