From runway-api
Analyzes codebase to verify compatibility with Runway's server-side public API. Checks project type, backend frameworks, existing SDK, runtime versions, and env support.
npx claudepluginhub runwayml/skillsThis skill is limited to using the following tools:
Analyze the user's project to determine whether it is compatible with Runway's public API.
Guides full Runway API setup in Node.js/Python projects: checks server-side compatibility, configures API key/SDK install, integrates video/image/audio generation endpoints.
Validates dev environment by checking OS, runtime versions (Node, Python, Rust, Go, Ruby), installed tools, port availability, env vars, and disk space. Use for new projects, machine switches, or 'works on my machine' bugs.
Performs 12-Factor App compliance analysis on any codebase. Use when evaluating application architecture, auditing SaaS applications, or reviewing cloud-native applications.
Share bugs, ideas, or general feedback.
Analyze the user's project to determine whether it is compatible with Runway's public API.
Runway's public API requires server-side invocation. The API key must never be exposed in client-side code. Projects that are purely frontend (static HTML/JS, client-only SPAs without a backend) cannot safely call the API.
Search the project root for these files to determine the stack:
| File | Indicates |
|---|---|
package.json | Node.js project |
requirements.txt, pyproject.toml, Pipfile, setup.py | Python project |
go.mod | Go project |
Cargo.toml | Rust project |
pom.xml, build.gradle | Java/Kotlin project |
Gemfile | Ruby project |
composer.json | PHP project |
If none of these exist, flag the project as unknown and ask the user what language/runtime they're using.
Look for indicators of a server/backend:
Node.js projects — check package.json dependencies for:
express, fastify, koa, hapi, nest, hono → HTTP server frameworknext → Next.js (has API routes — compatible)nuxt → Nuxt.js (has server routes — compatible)remix → Remix (has loaders/actions — compatible)@sveltejs/kit → SvelteKit (has server routes — compatible)astro → Astro (has API endpoints if SSR enabled)Python projects — check for:
flask, django, fastapi, starlette, tornado, aiohttp, sanic → web server frameworkstreamlit, gradio → can make server-side callsRed flags (frontend-only):
package.json with only react, vue, svelte, angular and NO server frameworkvite.config.ts or webpack.config.js with no server/SSR configurationindex.html as the only entry point with inline <script> tagsSearch for existing Runway SDK installations:
Node.js:
package.json for @runwayml/sdkimport RunwayML or require('@runwayml/sdk') in source filesPython:
requirements.txt / pyproject.toml for runwaymlfrom runwayml import RunwayML or import runwayml in source filesNode.js: Must be version 18 or higher (node --version)
Python: Must be version 3.8 or higher (python3 --version)
Look for .env file, .env.example, .env.local, or dotenv configuration:
dotenv in dependencies, or framework-native env support (Next.js, etc.)python-dotenv in dependencies, or framework-native supportAfter analysis, provide a clear report:
## Runway API Compatibility Report
**Project type:** [Node.js / Python / etc.]
**Server-side capable:** [Yes / No / Partial]
**Runtime version:** [version] — [Compatible / Needs upgrade]
**Runway SDK installed:** [Yes / No]
**Environment variable support:** [Yes / No / Needs setup]
### Verdict: [COMPATIBLE / NEEDS CHANGES / INCOMPATIBLE]
[If COMPATIBLE]
Your project is ready for Runway API integration. Proceed with API key setup.
[If NEEDS CHANGES]
Your project needs the following changes:
1. [List specific changes needed]
[If INCOMPATIBLE]
Your project is frontend-only and cannot safely call Runway's API. Options:
1. **Add a backend** — Add an Express/FastAPI server or use a framework with server routes (Next.js, SvelteKit, etc.)
2. **Use a serverless function** — Add API routes via Vercel Functions, AWS Lambda, Cloudflare Workers, etc.
3. **Create a separate backend** — Build a thin API proxy that your frontend calls
If the project is compatible, suggest the user proceed with +rw-setup-api-key to configure their API credentials.