skills/rw-check-compatibility/SKILL.md
Analyze a user's codebase to verify it can use Runway's public API (server-side requirement)
npx skillsauth add runwayml/skills rw-check-compatibilityInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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.
development
Directly use the Runway API from the agent to generate media, manage resources, and inspect account state
development
Guide users through obtaining and configuring a Runway API key
development
Complete Runway API setup: check compatibility, configure API key, and integrate generation endpoints
development
Help users integrate Runway video generation APIs (text-to-video, image-to-video, video-to-video)