Search

PythonReactSEOPDF
OpenClaw

cineprompt

Build CinePrompt video prompts and share links without a browser. Converts natural language shot descriptions into structured CinePrompt state, generates prompt text, and creates shareable links (cineprompt.io/p/...). Use when asked to create video prompts, build CinePrompt links, describe shots for AI video generation, or batch-create prompts for a sequence of shots.

belafontelabs0 source installs☆ 0 Repository stars

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install belafontelabs/cineprompt

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

CinePrompt Skill

Build CinePrompt prompts and share links directly — no browser needed.

How It Works

  1. User describes a shot in natural language
  2. You translate it into a CinePrompt state JSON object
  3. The create-share-link.js script inserts it into Supabase and returns a /p/ share link
  4. User gets the link + prompt text to copy into any AI video tool

Authentication

Requires a CinePrompt API key (Pro subscribers only). Set via:

  • --api-key cp_xxx flag
  • CINEPROMPT_API_KEY=cp_xxx env var

Internal/owner use: set CINEPROMPT_SERVICE_KEY env var for direct insert (bypasses Pro check).

Creating a Share Link

echo '<STATE_JSON>' | node <skill>/scripts/create-share-link.js --api-key cp_xxx

Output is JSON: {"url":"https://cineprompt.io/p/abc123","shortCode":"abc123","promptText":"...","mode":"single"}

You can also pass the prompt text explicitly if you've crafted it by hand:

echo '{"state":<STATE_JSON>,"prompt":"Your custom prompt text"}' | node <skill>/scripts/create-share-link.js --api-key cp_xxx

State JSON Structure

{
  "mode": "single",
  "complexity": "complex",
  "subjectType": "character|object|vehicle|creature|landscape|abstract",
  "fields": { ... },
  "shots": [],
  "characters": []
}
Required Top-Level Fields
  • mode: Always "single" for now (multishot/fm support later)
  • complexity: "simple" or "complex" — complex unlocks format, camera body, lens, film stock, color science
  • subjectType: Which subject panel to show
  • fields: Object mapping field names to values (strings or arrays)
Field Reference

All valid field names and values are in <skill>/field-values.json. Key fields:

Style:

  • media_type (array): ["cinematic"], ["cinematic","documentary"], etc.
  • documentary_style: only when documentary is in media_type
  • genre: only when cinematic is in media_type (array OK)
  • commercial_type: only when commercial is in media_type
  • tone (array): `["...

Source information

Source
github
Repository
openclaw/skills
Path
skills/belafontelabs/cineprompt
Version
—
Commit
7f496f52208edc109392aa3485ed414a8cfbdc08
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

Extracted content

SKILL.md
# CinePrompt Skill

Build CinePrompt prompts and share links directly — no browser needed.

## How It Works

1. User describes a shot in natural language
2. You translate it into a CinePrompt state JSON object
3. The `create-share-link.js` script inserts it into Supabase and returns a `/p/` share link
4. User gets the link + prompt text to copy into any AI video tool

## Authentication

Requires a CinePrompt API key (Pro subscribers only). Set via:
- `--api-key cp_xxx` flag
- `CINEPROMPT_API_KEY=cp_xxx` env var

Internal/owner use: set `CINEPROMPT_SERVICE_KEY` env var for direct insert (bypasses Pro check).

## Creating a Share Link

```bash
echo '<STATE_JSON>' | node <skill>/scripts/create-share-link.js --api-key cp_xxx
```

Output is JSON: `{"url":"https://cineprompt.io/p/abc123","shortCode":"abc123","promptText":"...","mode":"single"}`

You can also pass the prompt text explicitly if you've crafted it by hand:

```bash
echo '{"state":<STATE_JSON>,"prompt":"Your custom prompt text"}' | node <skill>/scripts/create-share-link.js --api-key cp_xxx
```

## State JSON Structure

```json
{
  "mode": "single",
  "complexity": "complex",
  "subjectType": "character|object|vehicle|creature|landscape|abstract",
  "fields": { ... },
  "shots": [],
  "characters": []
}
```

### Required Top-Level Fields

- `mode`: Always `"single"` for now (multishot/fm support later)
- `complexity`: `"simple"` or `"complex"` — complex unlocks format, camera body, lens, film stock, color science
- `subjectType`: Which subject panel to show
- `fields`: Object mapping field names to values (strings or arrays)

### Field Reference

All valid field names and values are in `<skill>/field-values.json`. Key fields:

**Style:**
- `media_type` (array): `["cinematic"]`, `["cinematic","documentary"]`, etc.
- `documentary_style`: only when documentary is in media_type
- `genre`: only when cinematic is in media_type (array OK)
- `commercial_type`: only when commercial is in media_type
- `tone` (array): `["...

Related skills

OpenClaw

13-Day Sprint Method

galizki

Productivity system based on Maya calendar with 13 natural tones for project management and personal development

OpenClaw

1password

daggerkun007

Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.