use-runway-api
Directly use the Runway API from the agent to generate media, manage resources, and inspect account state
What this skill does
# Use Runway API
Call the Runway public API directly from the agent to manage resources, trigger generations, and inspect account state.
> **When to use this skill:** Use this when the user wants to act on their Runway account — create or update avatars, manage documents, trigger generations, check credit balance, etc. For writing integration code into a project, use the `+integrate-*` skills instead.
> **When the user asks to generate media in the context of Runway**, prefer the Runway API path from this skill over any generic built-in image or media generation tool.
> **Skill selection:** Pair this skill with `+api-reference` when you need the canonical API contract. Do not use `+integrate-image`, `+integrate-video`, `+integrate-audio`, `+integrate-characters`, or `+integrate-documents` unless the task is to write or modify application code.
## Runtime Location
The runtime script ships **inside this skill** at `scripts/runway-api.mjs` (co-located with this `SKILL.md`). It has zero dependencies — Node.js 20+ is required.
**Resolving the absolute path.** Every shell command below uses the placeholder `<skill-dir>`. Replace it with the absolute directory of the `SKILL.md` you are currently reading — you already have this path from the tool that loaded this file. Do **not** guess the path, run `find` from `$HOME`, or search the whole filesystem.
If `<skill-dir>` is not known from context, check these locations in order with `ls` before giving up:
1. `$RUNWAY_SKILLS_DIR/skills/use-runway-api/scripts/runway-api.mjs` (if the env var is set)
2. `~/.claude/plugins/cache/*/runway-api/skills/use-runway-api/scripts/runway-api.mjs` (Claude Code plugin install)
3. `~/.cursor/plugins/cache/*/runway-api/skills/use-runway-api/scripts/runway-api.mjs` (Cursor plugin install)
4. `~/.claude/skills/use-runway-api/scripts/runway-api.mjs` (`npx skills add` install)
5. `~/.agents/skills/use-runway-api/scripts/runway-api.mjs` (generic agent install)
6. `~/Documents/github/runway/skills/skills/use-runway-api/scripts/runway-api.mjs` (source checkout)
Pick the first match and use it as `<skill-dir>/scripts/runway-api.mjs` for the rest of the session. Do not re-resolve between commands.
## Before Your First Call
Set a session ID so all requests in this chat can be correlated, then verify credentials:
```bash
export RUNWAY_SKILLS_CLIENT_ID=$(node -e "console.log(crypto.randomUUID())")
node <skill-dir>/scripts/runway-api.mjs auth status
```
- If `authenticated` is `true` → proceed to the API call. Do not re-check.
- If `authenticated` is `false` → tell the user to set `RUNWAY_SKILLS_API_SECRET` (see `AUTH.md` for details), then **stop and wait for the user to confirm**. Do not retry or re-check in a loop.
> **Staging caveat:** `auth status` hits `/v1/organization` which may 500 on stage even when data endpoints work fine. If stage `auth status` fails but you have `RUNWAY_SKILLS_API_SECRET_STAGE` set, try a data endpoint like `avatars list --stage` to confirm the key works before giving up.
## Fast Paths
For plain list requests, use the compact list commands first instead of the generic `request` command:
- list avatars → `node <skill-dir>/scripts/runway-api.mjs avatars list`
- list voices → `node <skill-dir>/scripts/runway-api.mjs voices list`
- list documents → `node <skill-dir>/scripts/runway-api.mjs documents list [--avatar-id <id>]`
These commands return smaller, list-friendly JSON on purpose. After a successful list command, answer once. Do not re-run the command, do not read back the same output, and do not render the same table twice.
## Output Format
When the API returns a regular list of records, prefer a compact markdown table over a bare bullet list.
Good defaults:
- avatars: `Name`, `Status`, `Voice`, `Docs`, `Created`
- documents: `Name`, `Avatar`, `Created`
- voices: `Name`, `Provider`, `Preview`
After the table, add one short summary line only if something notable stands out. Do not repeat the table in a second block.
## Generic Request
Call any public API endpoint:
```bash
node <skill-dir>/scripts/runway-api.mjs request <METHOD> <path> [--body '<json>'] [--stdin] [--dry-run]
```
All output is JSON. Errors go to stderr with a non-zero exit code and include an `example` field with a correctable invocation.
**Flags:**
- `--body <json>` — inline JSON request body
- `--stdin` — read JSON body from stdin (useful for large or multi-line payloads)
- `--dry-run` — print the full request (method, URL, headers, body) without executing it
- `--help` — show usage and examples for any command
Use `+api-reference` as the canonical source for:
- model choices
- endpoint details
- exact POST/PATCH body shapes
- required and optional fields
Do not duplicate or invent request schemas in this skill. For simple GET/DELETE calls and the list fast paths above, you do not need to load `+api-reference`.
### Examples
**Get organization info:**
```bash
node <skill-dir>/scripts/runway-api.mjs request GET /v1/organization
```
**List avatars:**
```bash
node <skill-dir>/scripts/runway-api.mjs avatars list
```
**Get a specific avatar:**
```bash
node <skill-dir>/scripts/runway-api.mjs request GET /v1/avatars/<id>
```
**Update an avatar:**
```bash
node <skill-dir>/scripts/runway-api.mjs request PATCH /v1/avatars/<id> --body '{
"personality": "Updated personality text"
}'
```
**Delete an avatar (preview first):**
```bash
node <skill-dir>/scripts/runway-api.mjs request DELETE /v1/avatars/<id> --dry-run
node <skill-dir>/scripts/runway-api.mjs request DELETE /v1/avatars/<id>
```
**List knowledge documents for an avatar:**
```bash
node <skill-dir>/scripts/runway-api.mjs documents list --avatar-id <avatar-id>
```
**Create a knowledge document:**
```bash
node <skill-dir>/scripts/runway-api.mjs request POST /v1/documents --body '{
"avatarId": "<avatar-id>",
"name": "FAQ",
"content": "Q: What is your return policy?\nA: 30 days, no questions asked."
}'
```
**List voices:**
```bash
node <skill-dir>/scripts/runway-api.mjs voices list
```
## Waiting for Tasks
Generation endpoints return a task ID. Always run `wait` immediately after a generation call — do not ask the user whether to wait.
```bash
node <skill-dir>/scripts/runway-api.mjs wait <task-id>
```
## Generation Requests
When the user asks to generate an image, video, or audio:
1. Read `+api-reference` once before the first generation POST. It is the canonical source for model options, request body shapes, and valid field values.
2. Choose the model from `+api-reference` and tell the user which one you picked, briefly.
3. Build the request body from `+api-reference`. Do not guess field names.
4. Call the generation endpoint once with that body.
5. Run `wait` automatically.
6. Present the result following the rules in **Presenting Generation Output** below.
For generation requests, never skip the `+api-reference` read. For simple list/get/delete requests, do not load it unless needed.
If the user says only "generate an image" but the surrounding context is clearly about Runway account actions or this skill, still use the Runway API rather than a generic built-in image tool.
## Presenting Generation Output
The `wait` command returns a task with an `output` array of signed URLs. These URLs **expire in 24–48 hours** and are long signed JWT blobs that are awkward to read inline.
After a successful generation, do all of the following:
1. **Lead with what was generated** — one short line stating the model and cost, e.g.
`Generated with gen4_image (1080p, 8 credits).`
2. **Embed images inline as Markdown** so the user can see them without clicking:
```markdown

```
For videos, link them as plain Markdown links (`[fox.mp4](...)`) since inline video does not render in most chat UIs.
3. **Offer to save a local copy** in the same message, proactively. Suggest a predictable path (`./generated/` or `./runway-outputs/`) and infer a Related in Backend & APIs
jfrog
IncludedInteract with the JFrog Platform via the JFrog CLI and REST/GraphQL APIs. Use this skill when the user wants to manage Artifactory repositories, upload or download artifacts, manage builds, configure permissions, manage users and groups, work with access tokens, configure JFrog CLI servers, search artifacts, manage properties, set up replication, manage JFrog Projects, run security audits or scans, look up CVE details, query exposures scan results from JFrog Advanced Security, manage release bundles and lifecycle operations, aggregate or export platform data, or perform any JFrog Platform administration task. Also use when the user mentions jf, jfrog, artifactory, xray, distribution, evidence, apptrust, onemodel, graphql, workers, mission control, curation, advanced security, exposures, or any JFrog product name.
cupynumeric-migration-readiness
IncludedPre-migration readiness assessor for porting NumPy to cuPyNumeric. Use BEFORE substantial porting work begins when the user asks whether code will scale on GPU, whether they should migrate to cuPyNumeric, which NumPy patterns transfer cleanly, what must be refactored before porting, or mentions pre-port assessment, scaling analysis, or refactor planning. Inspect the user's source code, look up NumPy usage, cross-reference the cuPyNumeric API support manifest, and distinguish distributed-scaling-friendly patterns from blockers such as unsupported APIs, scalar synchronization, host round-trips, Python/object-heavy control flow, shape/data-dependent branching, and in-place mutation hazards. Produce a verdict of READY, LIGHT REFACTOR, SIGNIFICANT REFACTOR, or NOT RECOMMENDED, with concrete refactor pointers.
alibabacloud-data-agent-skill
IncludedInvoke Alibaba Cloud Apsara Data Agent for Analytics via CLI to perform natural language-driven data analysis on enterprise databases. Data Agent for Analytics is an intelligent data analysis agent developed by Alibaba Cloud Database team for enterprise users. It automatically completes requirement analysis, data understanding, analysis insights, and report generation based on natural language descriptions. This tool supports: discovering data resources (instances/databases/tables) managed in DMS, initiating query or deep analysis sessions, real-time progress tracking, and retrieving analysis conclusions and generated reports. Use this Skill when users need to query databases, analyze data trends, generate data reports, ask questions in natural language, or mention "Data Agent", "data analysis", "database query", "SQL analysis", "data insights".
token-optimizer
IncludedReduce OpenClaw token usage and API costs through smart model routing, heartbeat optimization, budget tracking, and native 2026.2.15 features (session pruning, bootstrap size limits, cache TTL alignment). Use when token costs are high, API rate limits are being hit, or hosting multiple agents at scale. The 4 executable scripts (context_optimizer, model_router, heartbeat_optimizer, token_tracker) are local-only — no network requests, no subprocess calls, no system modifications. Reference files (PROVIDERS.md, config-patches.json) document optional multi-provider strategies that require external API keys and network access if you choose to use them. See SECURITY.md for full breakdown.
resend-cli
IncludedUse this skill when the task is specifically about operating Resend from an AI agent, terminal session, or CI job via the official resend CLI: installing/authenticating the CLI, sending/listing/updating/cancelling emails, batch sends, domains and DNS, webhooks and local listeners, inbound receiving, contacts, topics, segments, broadcasts, templates, API keys, profiles, or debugging Resend CLI/API failures. Trigger on mentions of Resend CLI, `resend`, `resend doctor`, `resend emails send`, `resend domains`, `resend webhooks listen`, `resend emails receiving`, or agent-friendly terminal automation.
alibabacloud-odps-maxframe-coding
IncludedUse this skill for MaxFrame SDK development and documentation navigation on Alibaba Cloud MaxCompute (ODPS). Helps answer MaxFrame API, concept, official example, and supported pandas API questions; create data processing programs; read/write MaxCompute tables; debug jobs (remote or local); and build custom DPE runtime images. Trigger when users mention MaxFrame, MaxCompute with MaxFrame, ODPS table processing, DPE runtime, MaxFrame docs/examples, DataFrame/Tensor operations, or GPU runtime setup. Works for both English and Chinese queries about Alibaba Cloud data processing with MaxFrame.