← 返回 Skills 市场
belafontelabs

CinePrompt

作者 CinePrompt · GitHub ↗ · v1.1.0 · MIT-0
cross-platform ⚠ suspicious
420
总下载
0
收藏
1
当前安装
3
版本数
在 OpenClaw 中安装
/install cineprompt
功能描述
Build CinePrompt video prompts and share links without a browser. Converts natural language shot descriptions into structured CinePrompt state, generates pro...
使用说明 (SKILL.md)

CinePrompt Skill

AI video prompt builder for cinematographers. Translates natural language shot descriptions into structured prompts optimized for AI video generators.

What It Does

CinePrompt turns vague ideas ("cinematic sunset over mountains") into precise cinematography prompts with lens, movement, lighting, color science, sound design, and 133 total fields. Three workflow modes, 24 generation models, 8 model optimizers.

Live: https://cineprompt.io Guides: https://cineprompt.io/guides (18+ articles, daily additions) Models: https://cineprompt.io/models

CLI Usage

# Install
npm install -g cineprompt

# Auth (Pro subscription required for API)
cineprompt auth cp_your_key_here

# Build a share link from state JSON
cineprompt build '{"mode":"single","subjectType":"character","fields":{...}}'

# Build from file
cineprompt build --file shot.json

# Pipe JSON
cat shot.json | cineprompt build

# List all 133 fields
cineprompt fields

# Show values for a specific field
cineprompt fields mood
cineprompt fields movement_type

Building State JSON

The agent constructs a state object and passes it to the CLI. The CLI creates a share link on cineprompt.io where the user can view, tweak, and copy the prompt.

State Structure

{
  "mode": "single",
  "complexity": "complex",
  "subjectType": "character",
  "fields": {
    "media_type": ["cinematic"],
    "mood": ["contemplative"],
    "genre": ["drama"],
    "setting": "interior",
    "location_type": ["apartment"],
    "custom_location": "A cluttered one-bedroom with peeling wallpaper",
    "env_time": "night",
    "char_label": "A retired boxer",
    "subject_description": "Weathered face, broken nose, calloused hands",
    "expression": "quietly resigned",
    "wardrobe": "Stained white undershirt, suspenders hanging at sides",
    "action_primary": "sitting alone at a kitchen table",
    "shot_type": "medium close-up",
    "framing": ["positioned left-third of frame"],
    "focal_length": "85mm",
    "dof": "shallow depth of field, bokeh",
    "movement_type": ["static, locked-off"],
    "lighting_type": ["practical lights"],
    "key_light": "Single bare bulb overhead, slightly swinging",
    "film_stock": ["Kodak Vision3 500T 5219"],
    "color_grade": ["desaturated"],
    "sfx_environment": ["room tone"],
    "ambient": "Refrigerator hum, distant sirens",
    "props": "Half-empty whiskey bottle, old photograph face-down"
  }
}

Key Parameters

Parameter Values Notes
mode single, multi_shot Single shot or multi-shot sequence
complexity simple, complex Simple = curated fields, Complex = all fields
subjectType character, creature, object, vehicle, landscape, abstract Unlocks subject-specific fields

Field Types

Button fields (93) — accept arrays of predefined values. Use cineprompt fields \x3Cname> to see valid options.

"media_type": ["cinematic"],
"mood": ["nostalgic", "contemplative"],
"shot_type": "extreme close-up"

Text fields (40) — accept free-form strings.

"char_label": "A young street musician",
"subject_description": "Dark curly hair, paint-stained fingers",
"dialogue": "I never said goodbye",
"ambient": "Rain on a tin roof, distant thunder"

Modes

Single Shot — one shot, full cinematography control.

Multi-Shot — sequence of shots with global settings + per-shot overrides. Supports recurring characters, transitions between shots.

{
  "mode": "multi_shot",
  "complexity": "complex",
  "fields": {
    "media_type": ["cinematic"],
    "mood": ["tense"]
  },
  "shots": [
    {
      "subjectType": "character",
      "fields": {
        "shot_type": "establishing shot",
        "char_label": "Detective",
        "action_primary": "approaching the building"
      }
    },
    {
      "subjectType": "character",
      "fields": {
        "shot_type": "close-up",
        "char_label": "Detective",
        "expression": "steeling herself",
        "action_primary": "reaching for the door handle"
      }
    }
  ]
}

Frame → Motion — dual-prompt output for img2vid workflows. Build the frame (image prompt), then direct the motion (video prompt). The FM tab uses direct-edit motion text with quick-insert chips:

  • Camera chips: Slow push in, Slow pull out, Orbit, Dolly, Crane up/down, Handheld, Tracking, Locked off
  • Pacing chips: Slow motion, Real-time, Time-lapse, Hyperlapse
  • Transition chips: Whip pan, Steadicam, Rack focus, Reveal, Morph, Dissolve
  • Direction chips: Slow Build, One at a Time, Breathe, Anchor, Physics, Chaos, Match

Key Fields Reference

Core (always relevant)

media_type, mood, genre, setting, location_type, custom_location, env_time, weather

Subject — Character

char_label, subject_description, expression, body_language, age_range, build, hair_style, hair_color, skin_tones, wardrobe, action_primary, props

Subject — Creature

creature_label, creature_description, creature_category, creature_size, creature_body, creature_skin, creature_expression

Subject — Object

obj_description, obj_material, obj_condition, obj_scale

Subject — Vehicle

veh_description, veh_type, veh_era, veh_condition

Subject — Landscape

land_scale, land_season

Subject — Abstract

abs_description, abs_quality, abs_movement, abstract_environment

Camera & Lens

shot_type, framing, focal_length, camera_body, lens_brand, lens_filter, dof, movement_type, pacing

Lighting

lighting_type, lighting_style, key_light, fill_light

Color & Look

color_grade, color_science, film_stock, palette_colors

Environment

location, env_bg, env_mg, env_fg

Sound

dialogue, dialogue_character, dialogue_language, delivery_style, delivery_style_custom, voiceover_text, music, music_genre, music_mood, ambient, sfx_environment, sfx_interior, sfx_dramatic, sfx_mechanical, beat_1, beat_2, beat_3

Style

animation_style, documentary_style, commercial_type, music_video_style, social_media_style, format

Scene-to-Prompt

CinePrompt also accepts natural language descriptions via the Scene-to-Prompt feature. Users type a shot description and an LLM auto-populates all fields. The agent can use this as an alternative to manually constructing state JSON — just direct users to the text box at the top of the page.

Generate

CinePrompt includes built-in generation with BYOK (bring your own key) across 24 models:

  • Text-to-video (9): Kling O3 Pro, Sora 2 Pro, Veo 3.1, WAN 2.6, Seedance 1.5 Pro, LTX 2.3, Grok Imagine (Fal + Venice)
  • Image-to-video (5): Kling O3 Pro, Sora 2 Pro, Veo 3.1, WAN 2.6, LTX 2.3, Grok Imagine
  • Reference-to-video (1): Kling O3 Pro R2V (character elements)
  • Image gen (4): Nano Banana Pro, NB2, Chroma, Grok Imagine
  • Image edit (4): NBP Edit, NB2 Edit, Grok Imagine Edit, Qwen Edit
  • Providers: Fal.ai + Venice.ai

Subject Library

Persistent character/element system. Users save subjects with frontal + reference images and field state. Subjects auto-inject into prompts and enable R2V (reference-to-video) generation with Kling Elements.

Internal Scripts

cineprompt-x-post

Daily cron (8:55 AM) that reads today's guide article, finds a trending AI video post on X, and writes a quote-tweet mini-essay for the CinePrompt Discord channel. Output goes to Discord for Tylios to post.

create-share-link.js

Creates share links via Supabase RPC (with API key) or direct insert (with service key). Used internally by the CLI and agent.

Tiers

Tier Price Access
Free $0 Simple mode only
Pro $7/mo or $70/yr All modes + API key + Generate
Founding $25 lifetime Everything (capped at 100)
安全使用建议
What to consider before installing/using this skill: - The included create-share-link.js will send prompt/state data to a specific Supabase instance (https://jbeuvbsremektkwqmnps.supabase.co). If you provide a CINEPROMPT_API_KEY, that key will be passed to the remote RPC to create the share link. Only supply keys you trust the service with. - The skill metadata declares no required environment variables, but the script expects CINEPROMPT_API_KEY (user API key) or CINEPROMPT_SERVICE_KEY (an internal/service key). Do NOT set or expose any internal/service keys (CINEPROMPT_SERVICE_KEY) unless you control the backend and understand the risk — that key can perform higher-privilege direct inserts. - The SKILL.md suggests installing an npm package named 'cineprompt'; that package is not included in this bundle. If you plan to follow that path, inspect the npm package contents and publisher identity before installing globally. - If you want to use this skill safely: prefer the user-authenticated RPC path (supply only a personal CINEPROMPT_API_KEY), inspect create-share-link.js yourself, and avoid exposing any service-level secrets. If the author can update the skill metadata to explicitly declare CINEPROMPT_API_KEY as a required credential (and mark CINEPROMPT_SERVICE_KEY as owner-only and not used by general installs), that would reduce the incoherence. - If you cannot confirm the publisher or do not want to send prompt/state data to the hardcoded Supabase instance, do not run the included script and instead use a trusted upstream CinePrompt client or the official website.
功能分析
Type: OpenClaw Skill Name: cineprompt Version: 1.1.0 The CinePrompt skill bundle is a legitimate tool designed to help users build structured cinematography prompts for AI video generators. The core logic in `create-share-link.js` facilitates the creation of shareable links by sending prompt state data to a Supabase backend (jbeuvbsremektkwqmnps.supabase.co) using standard API patterns. The `SKILL.md` provides clear, non-malicious instructions for the agent to construct JSON objects based on a comprehensive schema defined in `field-values.json`. While the bundle includes a placeholder shell script (`cineprompt-x-post.sh`) and references internal workflows, there is no evidence of data exfiltration, credential theft, or malicious prompt injection.
能力评估
Purpose & Capability
The skill's name/description (build CinePrompt prompts and create share links) aligns with the included create-share-link.js which posts a prompt/state to a Supabase endpoint to create a share link. That network activity is expected for this feature. However, the registry metadata declares no required environment variables or primary credential, yet the code expects CINEPROMPT_API_KEY or CINEPROMPT_SERVICE_KEY — an inconsistency between claimed requirements and actual code.
Instruction Scope
SKILL.md instructs the agent to construct state JSON and call a CLI (cineprompt build). The included script create-share-link.js will accept state via stdin or args and then make network calls to the hardcoded Supabase URL. The SKILL.md does not explicitly document that the agent or user must set CINEPROMPT_API_KEY or CINEPROMPT_SERVICE_KEY environment variables, nor does it warn that the API key will be forwarded to the Supabase RPC. The script will also accept a service key (described as 'internal/owner use only') if present — that allows higher-privilege direct inserts if someone sets that variable.
Install Mechanism
There is no install spec (instruction-only skill), so nothing will be automatically downloaded/installed. The repository includes local scripts but no remote install instructions that pull arbitrary archives or untrusted binaries. The SKILL.md references installing an npm package named 'cineprompt', which is not provided in the skill bundle — users should verify the npm package separately before running it.
Credentials
The code reads CINEPROMPT_API_KEY and CINEPROMPT_SERVICE_KEY from environment variables but the skill metadata lists no required env vars or primary credential. CINEPROMPT_API_KEY is expected for normal user-authenticated RPC use (reasonable), but CINEPROMPT_SERVICE_KEY grants direct-insert privileges into the Supabase table — this is a high-privilege secret and the skill does not declare it or explain owner-only usage clearly. The script will also embed and use a hardcoded Supabase 'anon' key for RPC calls; it will forward whatever api key you supply to the backend RPC. This hidden credential requirement and the presence of an owner/service key path are the main proportionality concerns.
Persistence & Privilege
The skill is not marked always:true and has normal invocation settings. It does not request to modify other skills or agent config. There is no install step that writes persistent system-wide binaries in the bundle. The main privilege concern is the potential presence of a service key in the environment if the user (or operator) sets it.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install cineprompt
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /cineprompt 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.1.0
133 fields (up from 92): 40 text fields added (dialogue, descriptions, sound, environment layers, lighting), mood replaces tone (8 curated values), FM chip fields (camera, pacing, transition, direction), multi-shot synced. SKILL.md rewritten with full field reference, all 3 modes, Scene-to-Prompt, Generate (24 models), Subject Library.
v1.0.1
Added Grok Imagine model support
v1.0.0
Initial public release — AI video prompt builder skill for cinematographers
元数据
Slug cineprompt
版本 1.1.0
许可证 MIT-0
累计安装 1
当前安装数 1
历史版本数 3
常见问题

CinePrompt 是什么?

Build CinePrompt video prompts and share links without a browser. Converts natural language shot descriptions into structured CinePrompt state, generates pro... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 420 次。

如何安装 CinePrompt?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install cineprompt」即可一键安装,无需额外配置。

CinePrompt 是免费的吗?

是的,CinePrompt 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

CinePrompt 支持哪些平台?

CinePrompt 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 CinePrompt?

由 CinePrompt(@belafontelabs)开发并维护,当前版本 v1.1.0。

💬 留言讨论