Token导航 LogoToken导航TokenDH.com
研究检索执行命令github未标认证来源可访问许可证需确认审计通过

use-runway-apiUSE runway API 搜索

Agent Skill

用于辅助 API 设计、接口文档、请求响应结构和服务集成说明。它适合让 Agent 梳理 endpoint、生成 OpenAPI 草稿、检查字段命名、整理错误码或辅助前后端联调。使用时需要确认真实业务语义、鉴权方式、分页和错误处理规则;涉及生成接口文档时,应避免凭空补字段,最好从现有代码、schema 或接口样例中提取事实。

总安装

706

周安装

30

GitHub Stars

30

下载量

247
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:use-runway-api(USE runway API 搜索)
来源仓库:https://github.com/runwayml/skills
仓库路径:skills/use-runway-api
安装命令:
npx skills add https://github.com/runwayml/skills --skill use-runway-api
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/runwayml/skills --skill use-runway-api

简介

use-runway-api 用于辅助 API 设计、接口文档和请求响应结构梳理。

  • 适合让 Agent 生成 OpenAPI 草稿、检查字段命名或辅助前后端联调。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装并使用。
  • 使用时需确认真实业务语义、鉴权方式和错误处理规则,避免凭空补字段。
  • 建议结合现有代码或接口样例提取事实,确保文档准确性。

SKILL.md

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:

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:

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:

node <skill-dir>/scripts/runway-api.mjs request GET /v1/organization

List avatars:

node <skill-dir>/scripts/runway-api.mjs avatars list

Get a specific avatar:

node <skill-dir>/scripts/runway-api.mjs request GET /v1/avatars/<id>

Update an avatar:

node <skill-dir>/scripts/runway-api.mjs request PATCH /v1/avatars/<id> --body '{
  "personality": "Updated personality text"
}'

Delete an avatar (preview first):

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:

node <skill-dir>/scripts/runway-api.mjs documents list --avatar-id <avatar-id>

Create a knowledge document:

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:

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.

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: ![Fox in a snowy forest](https://storage.runway.../signed-url) 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 filename from the prompt when possible. Example: Want me to save it to ./generated/fox.png? The signed URL expires in ~24–48h.
  4. Do not paste the full signed URL as raw text unless the user asks for it. The Markdown image/link already contains it.

If the user confirms a download, fetch with curl -L -o <path> '<url>' (quote the URL — it contains &).

API Reference

Use +api-reference for the canonical API contract. Use +fetch-api-reference only when you specifically need the latest docs content from docs.dev.runwayml.com.

Staging (--stage)

Add --stage to any command to target the staging API:

node <skill-dir>/scripts/runway-api.mjs --stage avatars list
node <skill-dir>/scripts/runway-api.mjs --stage request GET /v1/avatars

With --stage, the CLI checks RUNWAY_SKILLS_API_SECRET_STAGE first, then falls back to RUNWAY_SKILLS_API_SECRET. The base URL defaults to https://api.dev-stage.runwayml.com.

Large Payloads (--stdin)

When creating resources with data URIs (e.g. base64-encoded images for avatar referenceImage), the body can exceed shell argument limits. Use --stdin to pipe the body:

python3 -c "
import json, base64
with open('image.png', 'rb') as f:
    b64 = base64.b64encode(f.read()).decode()
body = json.dumps({'name': 'My Avatar', 'referenceImage': f'data:image/png;base64,{b64}', ...})
with open('/tmp/body.json', 'w') as f:
    f.write(body)
" && cat /tmp/body.json | node <skill-dir>/scripts/runway-api.mjs request POST /v1/avatars --stdin

Alternatively, write the JSON to a file and use curl -d @file directly. The --body flag is fine for small JSON payloads but will hit argument list too long for data URIs of images over ~200KB.

Environment Variables

The runtime reads credentials from the process environment:

VariableDescription
RUNWAY_SKILLS_API_SECRETProduction API key
RUNWAY_SKILLS_API_SECRET_STAGEStage API key (used with --stage)
RUNWAY_SKILLS_BASE_URLOverride the base URL for any environment
RUNWAY_SKILLS_DIROptional. Absolute path to the source checkout of this skills repo — used by the agent as a fallback when resolving <skill-dir>.

If the agent cannot see RUNWAY_SKILLS_API_SECRET, the editor likely needs to be restarted after the variable is set.

Related Files

  • AUTH.md — auth setup and troubleshooting for this skill

Related Skills

SkillWhen to use
+api-referenceFull API reference — models, endpoints, costs, rate limits
+fetch-api-referenceFetch latest docs from docs.dev.runwayml.com
+integrate-videoWrite video generation code into a project
+integrate-imageWrite image generation code into a project
+integrate-audioWrite audio generation code into a project
+integrate-charactersWrite avatar session code into a project
+integrate-documentsWrite knowledge document code into a project

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.7%
按下载量换算93

Claude

27.61%
按下载量换算68

Cursor

17.98%
按下载量换算44

Gemini CLI

8.77%
按下载量换算22

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/runwayml/skills --skill use-runway-api 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills