prompt-reverse-engineer-skill

agent
Security Audit
Pass
Health Pass
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 10 GitHub stars
Code Pass
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

多模态 Prompt 逆向工程 Skill:把文本/图片/视频/剧本拆解还原为可复用 Prompt,适配 Midjourney V8.2 / Stable Diffusion 3.5 / FLUX.2 / GPT Image 2.5(文生图·复刻·编辑·参考图·合成五模式)/ Nano Banana Pro / GPT-5.5·Claude 5.5 / DeepSeek V4.1 / Sora 2 / Runway Gen-4.5 / Veo 3.1 十种模型,支持 Claude Code / Cursor / Codex / DeepSeek Harness / 豆包五平台,附百分制六维评分(剧本可逐场景出图)

README.md

Prompt Reverse Engineer — 多模态 Prompt 逆向工程 Skill

把任何优秀作品 → 逆向拆解 → 还原为可复用的专业 Prompt

支持 Claude Code / Cursor / Codex / DeepSeek Harness / 豆包 五大平台 · 文本 / 图片 / 视频 / 剧本小说 多模态输入 · Midjourney V8.2 / Stable Diffusion 3.5 / FLUX.2 / GPT Image 2.5 / Nano Banana Pro / GPT-5.5·Claude 5.5 / DeepSeek V4.1 Flash / Sora 2 / Runway Gen-4.5 / Veo 3.1 多模型格式输出 · 附百分制六维加权质量评分(剧本可逐场景生成图片/视频提示词)

看到一篇爆款文案、一张惊艳的 AI 图片、一段电影感短视频,想知道「它是怎么被生成的」?把作品丢给本技能,它会自动拆解其主体、风格、结构与参数,反向还原出可复刻、可修改的专业 Prompt,并适配输出为各主流生成模型的格式。

纯插件形态:无前端、无后端、无数据库、无 API key、无状态、幂等、零新增依赖(脚本仅用 Python 标准库 + opencv/pillow/numpy)。


目录


一、核心能力

1.1 三种输入模态

输入 分析目标 输出内容
文本(文章/文案/小说/脚本) 角色定位、写作风格、结构逻辑、约束规则 复刻 Prompt + 优化模板
图像(摄影/绘画/海报/产品图) 主体、场景、构图、光影、色彩、摄影参数 正向 Prompt + Negative Prompt + 风格迁移 Prompt
视频(短视频/广告/电影片段) 镜头序列、运镜方式、人物动作、环境氛围、叙事结构 视频生成 Prompt + 分镜脚本
剧本/小说/文章(叙事文本→场景化) 场景切分、全局基调、逐场景七段+分镜 每个场景的图片 Prompt(默认 MJ+SD)+ 视频 Prompt(默认 Sora)+ 逐场景评分

1.2 十种目标模型格式

生成的 Prompt 自动适配目标模型语法(模板元数据含展示名、厂商、版本、核验日期):

类别 模型 输出要点
图像 Midjourney V8.2 /imagine prompt: ... --ar 16:9 --v 8.2;负向用 --no;角色一致性用 Edit Model
图像 Stable Diffusion 3.5 Positive / Negative 严格分离 + Steps 28 / CFG 4.5 / DPM++ 2M 参数行
图像 FLUX.2 [pro] 自然语言长句,不支持 negative,参考图标注角色
图像 GPT Image 2.5 结构化规格书(Subject/Scene/Style/…/Constraints),文字逐字复现;五种任务模式(文生图/复刻/编辑/参考生成/融合)分别出稿
图像 Nano Banana Pro 分段标签 + 1K/2K/4K,最多 14 张参考图,文字渲染强
文本 GPT-5.5 / Claude 5.5 Markdown 标题组织六要素,System + User 结构
文本 DeepSeek V4.1 Flash 首行模型快照 + 思考档(low/high/max)+ 独立「推理要求」段
视频 Sora 2 4/8/12/16/20 秒;自然语言散文 + 分镜 + 声音设计;sora-2-pro 1080p
视频 Runway Gen-4.5 2–10 秒 / 720p;镜头先行,再写故事与氛围
视频 Veo 3.1 4/6/8 秒;电影摄影→主体→动作→背景→风格五段式,原生对白/音效

未指定目标模型时,默认输出 Midjourney V8.2 + GPT-5.5/Claude 5.5 双版本;其余模型按需追加(--models 接受模型 ID 或别名)。

1.3 质量评分

每个生成的 Prompt 附百分制评分,六维加权(权重见下表),评分后自动附 1-2 条优化建议:

维度 权重 维度 权重
主题明确度 20% 结构清晰度 15%
场景完整度 20% 参数合理性 15%
风格契合度 20% 可调性/复用性 10%

1.4 工作原理:双层分析

作品(文本/图片/视频/剧本)
   │
   ├── 脚本层(本地确定性信号)──→ 字数/句式统计 · 主色/构图/EXIF · 镜头切分/关键帧 · 场景切分信号
   │        analyze_text.py / analyze_image.py / analyze_video.py / analyze_scenes.py
   │
   ├── Agent 多模态本体(语义分析)──→ 主体 · 风格 · 结构 · 叙事 · 逐场景七段+分镜(按规则库)
   │
   ├── 编译层 prompt_compiler.py ──→ 模板渲染成 10 种模型格式 + 六维评分 + 安全过滤(含 scenes 子命令逐场景编译)
   │
   └── 输出:元信息卡 + 分析摘要 + Prompt 列表 + 评分表 + 使用提示
             (场景化:总览 + 场景总表 + 逐场景 Prompt + 逐场景评分)

脚本只做「本地可计算」的事,语义判断归 Agent——因此脚本不可用时(如豆包纯文本模式)技能仍可完整运行,仅缺少量化信号(降级路径已内置于 SKILL.md)。


二、快速开始

2.1 环境要求

依赖 用途 必需性
Python 3.10+ 运行分析/编译脚本 脚本模式必需
opencv-python、pillow、numpy 图片/视频信号提取 脚本模式必需

纯指令降级模式(豆包粘贴版)无任何依赖。安装依赖:pip install opencv-python pillow numpy(URL 下载用标准库 urllib,无需额外包)

2.2 安装(五平台)

# 预览安装动作(不执行任何写操作)
python tools/install.py --dry-run

# 一键安装到全部已检测到的 Agent(缺失的自动跳过)
python tools/install.py
  • Claude Code → 安装到 ~/.claude/skills/prompt-reverse-engineer
  • Cursor → 安装到 ~/.cursor/skills/prompt-reverse-engineer
  • Codex → 注册本地插件市场到 ~/.codex/config.toml
  • DeepSeek Harness → 安装到 ~/.dsh/skills/prompt-reverse-engineer(格式与 Claude Code 的 SKILL.md bundle 兼容,无需改写;宿主模型 deepseek-flash = V4.1 Flash,1M 上下文 + 原生视觉输入)
  • 豆包(桌面版) → 直接上传 platform-adapters/doubao/prompt-reverse-engineer.zip(内含标准 SKILL.md + scripts + references + assets)

Windows 默认使用 junction 联接安装(技能目录只放联接点,实体留在仓库内,更新仓库即自动生效,无需管理员权限);可用 --mode copy 切换为物理复制。各平台细节见 platform-adapters/README.md。

2.3 30 秒上手

安装后在任意支持的 Agent 中说:

把这段文案逆向成 prompt:
「【爆款】声波电动牙刷,3 档模式只要 199!……」

分析这张图片生成 Midjourney prompt:D:\images\cyberpunk.png

拆解这个视频的分镜脚本,转成 Sora prompt:https://example.com/video.mp4

把这部短剧按场景生成图片和视频提示词:D:\scripts\rain_umbrella.txt

即得完整输出:元信息卡 → 分析摘要 → Prompt 列表(可直接粘贴使用)→ 评分表 → 使用提示。


三、详细使用说明

3.1 触发方式

提供具体内容(粘贴文本 / 本地文件路径 / URL)并表达「逆向 / 复刻 / 拆解 / 变成 prompt / 优化 prompt」意图即触发。英文触发词:prompt reverse engineering、reverse engineer this text/image/video、recreate this style as a prompt。

3.2 文本模式(文章/文案/小说/脚本)

输入:直接粘贴文本、给本地文件路径或 URL。

分析维度:

  • 角色定位:作者身份、专业领域、人设定位、目标受众
  • 写作风格:语言特点、情绪倾向、表达方式、关键词使用习惯
  • 结构逻辑:开头方式、内容展开、信息组织、结尾设计
  • 约束规则:字数限制、格式要求、禁止内容、输出规范

输出:复刻 Prompt(System 含角色/风格/结构/约束六要素,User 为变量占位)+ 优化模板 + 评分报告。

示例对话:

用户:「把这篇文章逆向成 prompt,输出 GPT 版本」
技能:输出分析摘要 → GPT-5.5/Claude 5.5 复刻 Prompt(可直接把 [此处填写主题] 换成自己的主题复用)→ 评分报告

3.3 图片模式(摄影/绘画/海报/产品图)

输入:本地图片路径或图片 URL。

分析维度:主体(人物/物体/动作/外观/服饰)→ 场景(地点/环境/时间/氛围)→ 构图(视角/景别/构图方式)→ 光影(光源/明暗/氛围)→ 色彩(主色调/风格/饱和度)→ 摄影参数(镜头/焦距/景深),辅以脚本量化信号(主色、亮度、构图网格、清晰度)。

输出:MJ V8.2 /imagine 正向 Prompt + --no 负向 + 风格迁移版 + GPT 描述版 + 评分;还可按需出 FLUX.2(无负向)、GPT Image 2.5、Nano Banana Pro 版本。

指定模型与风格:

「分析这张图,出 MJ 和 SD 两个版本」
「把这张图的风格迁移成宫崎骏动画风」
「再出一版 FLUX.2 和 Nano Banana,画面文字写 APS 2077」

GPT Image 2.5 五种任务模式:文生图 / 复刻参考图 / 编辑已有图 / 参考图各自定角色生成新图 / 多参考图融合。Agent 在 semantic_analysis.task_type 写入对应枚举(text_to_image / image_recreation / image_editing / reference_guided / image_composition),脚本只渲染该用途;也可在编译时显式指定:

# 编辑已有图(一次只改一件事)
python prompt-reverse-engineer-skill/scripts/prompt_compiler.py compile   --analysis image.json --models gpt_image --kind edit
# 用两张参考图合成新画面
... --models gpt_image --kind compose

--kind 与 task_type 冲突退出 4;参考图用 reference_images: ["图1:人物姿态", "图2:霓虹配色"] 逐行标注角色,缺编号或编号重复退出 4。五种模式的模板与字段见 references/model_mappings.md 3.4 节、references/prompt_framework.md 2.3.1–2.3.2 节。

3.4 视频模式(短视频/广告/电影片段)

输入:本地视频路径或 URL。

分析流程:脚本自动切分镜头并抽取关键帧 → Agent 逐关键帧做多模态分析 → 还原故事结构与分镜表(景别/运镜/时长/画面内容/台词)。

输出:Sora 2 / Runway Gen-4.5 / Veo 3.1 自然语言分镜脚本 + 复刻 Prompt + GPT 版分镜表 + 评分;含声音/对白设计的模型会额外输出 audio / narration 段。

超长视频:默认只取前 120 秒(--max-seconds 可调,截断而非跨片抽样),输出注明截取范围。

3.5 叙事文本场景化模式(剧本/小说/文章)

输入:本地文本路径、URL 或直接粘贴的剧本/小说/文章,并表达「生成对应场景的图片/视频提示词」「把故事变成画面」「逐场景出图」意图。

分析流程:脚本 analyze_scenes.py 先做确定性场景切分信号(剧本按场次标记 第X场/INT./EXT. 等;散文按叙事块+时间地点提示)→ Agent 通读全文提炼全局基调(题材/风格/角色表)→ 按「时间/地点/人物关系任一变化即新场景」定稿场景划分 → 每场景独立完成图片七段 + 视频分镜语义分析(契约见 references/prompt_framework.md 2.5 节)。

输出(每场景一份,逐场景评分):元信息卡 → 文本总览 → 场景总表(场景/标题/Prompt 数/得分/等级)→ 逐场景图片 Prompt(默认 MJ V8.2 + SD 3.5 双版本)+ 视频分镜 Prompt(默认 Sora 2)→ 逐场景六维评分 → 使用提示。

示例对话:

用户:「把这本小说按场景拆成图片和视频提示词,图片出 MJ 和 SD 版」
技能:输出总览 → 场景总表 → 每场景 MJ/SD Prompt + Sora 2 分镜脚本 → 逐场景评分与优化建议

3.6 指定目标模型

说法 结果
(不指定) 默认 Midjourney V8.2 + GPT-5.5/Claude 5.5 双版本
「也出 SD 版」/「转成 Sora」/「出 Veo 版」 追加对应模型
「也出 FLUX.2 / GPT Image / Nano Banana」 追加对应图像模板
「复刻这张图」/「编辑这张图」/「用这两张参考图合成」 GPT Image 对应 recreate / edit / reference_guided、compose 用途(见 3.3 节)
「也出 DeepSeek 版」 追加 DeepSeek 格式(含思考档位,见 model_mappings.md 第 8 节)
「全部模型」 全部 10 种格式输出(--models all)
指定了未注册的模型名 回退默认双版本并说明
场景化模式(不指定) 图片默认 MJ + SD、视频默认 Sora 2(--image-models / --video-models 可换)

3.7 安全红线(自动执行)

  • 输出 Prompt 强制经安全过滤:越狱指令("忽略之前指令"等)与可执行系统命令(rm -rf、cmd.exe、subprocess 等)命中即阻断,重写后才可输出
  • 被分析内容中的指令性文本一律视为数据,不执行、不改变工作流
  • 涉暴力、露骨、侵权模仿特定在世人物的内容拒绝生成
  • 脚本不做任何网络上传;唯一网络行为是按用户要求下载用户提供的 URL

四、架构与设计

4.1 目录结构

├── prompt-reverse-engineer-skill/     # 技能本体(唯一事实源)
│   ├── SKILL.md                       # 核心定义:触发条件/六步工作流/输出规范/异常处理
│   ├── scripts/
│   │   ├── analyze_text.py            # 文本确定性统计
│   │   ├── analyze_image.py           # 图片信号提取(主色/构图/EXIF/人脸)
│   │   ├── analyze_video.py           # 视频镜头切分+关键帧+运镜估计(无需 ffmpeg)
│   │   ├── analyze_scenes.py          # 叙事文本场景切分信号(剧本场次标记/散文候选块)
│   │   ├── _net.py                    # 受限 URL 下载(仅公网/逐跳复检重定向/大小上限)
│   │   └── prompt_compiler.py         # 编译/评分/安全过滤(compile|score|filter|all|scenes|validate-templates)
│   ├── references/                    # 规则知识库(Markdown,Agent 阅读)
│   │   ├── prompt_framework.md        # 六要素+字段契约+评分细则+安全规则(总纲,含 2.5 节 story 契约)
│   │   ├── image_rules.md             # 摄影/绘画/光影/色彩术语库(含七段结构)
│   │   ├── video_rules.md             # 电影镜头语言+分镜规范
│   │   └── model_mappings.md          # 十模型格式映射表(含 DeepSeek 思考档位与版本迁移)
│   └── assets/
│       ├── templates/                 # 11 个 JSON 模板(10 模型渲染 + 1 评分报告,新模型=新文件,自动注册)
│       └── examples/                  # 四模态示例(输入媒体+金标输出,含 story_example 场景化样例)
├── platform-adapters/                 # 平台适配层(内容由 install.py 物化,勿手改)
│   ├── codex/…/.codex-plugin/plugin.json
│   ├── deepseek/README.md             # DeepSeek Harness 适配说明(~/.dsh/skills)
│   └── doubao/                        # 豆包:上传 zip + 粘贴指令双产物
├── docs/                              # 项目文档
│   ├── 2026-11-14-项目改进方案.md     # 工程与 GPT Image 专项改进方案
│   └── DEVLOG.md                      # 阶段开发记录(改动/验证/回滚)
├── tasks/
│   └── todo.md                        # 分阶段任务清单
└── tools/
    ├── install.py                     # 一键安装(junction/copy,幂等,--dry-run)
    ├── verify.py                      # 离线端到端验证(26 项断言)
    └── fixtures/                      # 金标语义分析 JSON(契约测试/字段范例)

4.2 脚本通用约定

  • 统一信封:{schema_version, tool, modality, input{source,kind,sha256,size_bytes}, local_features}
  • 统一退出码:0 成功 / 1 用法错误(含无模型支持指定用途) / 2 输入不可读 / 3 下载失败或超过体积上限 / 4 契约错误(解码失败、缺字段、嵌套对象、类型不符、参考图编号冲突、task_type 与 --kind 冲突) / 5 安全阻断
  • 确定性幂等:同输入两次运行输出逐字节一致(固定分桶算法、无时间戳、无随机数、键排序)
  • 无状态:不写配置文件;视频关键帧写入 --workdir(默认仓库 .tmp/,安装态回退系统临时目录),路径返回 JSON 供 Agent 读取;stdin/URL 的视频副本分析后删除
  • 输入统一:本地路径 / -(stdin) / http(s):// URL 三种形式;URL 仅允许公网 http(s),私网/回环/链路本地/含凭据地址直接拒绝(退出码 3),重定向逐跳复检,并有 --max-bytes 大小上限(文本/场景 32 MiB、图片 64 MiB、视频 512 MiB)

4.3 数据契约(三层)

L1 脚本 → Agent:       local_features 量化信号(JSON 信封)
L2 Agent → 编译器:     semantic_analysis 语义字段(字段规范唯一权威:
                        references/prompt_framework.md 第二节)
L3 编译器 → Agent:     {prompts[], score_report{}, filter{blocked, matches, injection_flags}}

4.4 扩展设计

  • 新增目标模型:在 assets/templates/ 新增一个 *.json(含 model/display_name/vendor/version/last_verified/alias/default_params/modalities),编译器自动注册并检测别名冲突,零代码改动
  • 模板自检:python scripts/prompt_compiler.py validate-templates 一次列出全部问题(元数据缺失、日期非法、未知占位符、大括号未闭合、kind_requires 指向不存在的用途/字段)
  • 新增分析维度:references/prompt_framework.md 加字段定义 → 模板占位符引用 → SKILL.md 补一行
  • 新增评分维度:prompt_compiler.py 的 DIMENSIONS(权重和须为 100)与 prompt_framework.md 第三、五节两处同步修改

五、离线验证

python tools/verify.py

26 项断言、全部离线、可重复执行:

层 覆盖
单元层 四脚本跑示例输入:退出码/信封/关键字段 + 幂等(两次运行逐字节一致);analyze_scenes 剧本→场次标记、散文→候选块+时间地点提示
契约层 编译渲染(总分=加权和、建议 1-2 条)+ 越狱样例阻断(退出码 5)+ --sanitize 替换放行
负向层 缺字段(退出码 4 报字段名)/ 未知模型 / 坏文件 / 场景缺字段(报场景号)/ 场景黑名单
安装层 junction 创建、重复运行幂等、config.toml 标记块仅一次(Windows)
豆包兼容 YAML frontmatter 校验 + zip 内文件齐全 + 包内编译器独立运行成功
DeepSeek 模型 别名(deepseek/ds/deepseek-flash/deepseek-1017)解析一致 + 三模态渲染含模型名/思考档/推理段 + 不混入默认集合
模板层 10 个模型模板元数据齐全;FLUX.2 无负向、GPT Image/Nano Banana/Veo/Runway/Sora 结构正确;Markdown 排版;模板别名冲突→退出码 4
任务模式 GPT Image 五用途互斥渲染(--kind / task_type 映射);编辑顺序 Change→Scope→Preserve→Do not change;参考图逐行带编号;嵌套对象/编号缺失重复/未知 task_type/冲突→退出码 4,无模型支持→退出码 1
安全加固 全角、词内/词间零宽、大小写西里尔同形字 5 类绕过仍阻断;纯注入措辞(act as if/ignore all prior rules)只进 injection_flags 不阻断;validate-templates 全量通过且 5 类坏模板均报错;私网/回环/凭据/非 http URL 被拒,四脚本退出码 3
四场景 ① 营销文案→GPT Prompt(角色/风格/结构约束)② 赛博朋克图→MJ Prompt(/imagine+--no+风格迁移)③ 10 秒视频→分镜 Prompt(镜头数=分镜段落数)④ 剧本→逐场景 Prompt(每场景 MJ/SD/Sora 2 齐全 + 逐场景评分)

六、扩展指南

见 四、架构与设计 → 4.4。典型操作:

  1. 支持新模型:在 assets/templates/ 新建 *.json,填 model/display_name/vendor/version/last_verified/alias/default_params/modalities 与模板字符串 → 立即生效;别名不得与既有模型冲突
  2. 补充风格词库:直接编辑 references/image_rules.md(规则是 Markdown,无需改代码)
  3. 调排版:all / scenes 加 --format md 输出 Prompt 卡片 + Markdown 评分表;assets/templates/score_report.json 控制表格列与行格式

七、常见问题

Q1:豆包上传提示「SKILL.md 需包含 YAML 格式的技能名称和描述」?
请上传 platform-adapters/doubao/prompt-reverse-engineer.zip(含标准 YAML 头)。仓库中的 doubao_instruction.md 是旧版粘贴用纯文本,不含 YAML 头,上传会报此错。

Q2:豆包版和完整版的区别?
豆包 zip 包与技能本体内容一致(SKILL.md + scripts + references + assets 全量打入),唯一区别是豆包版 SKILL.md 正文为自包含扁平版(规则全部内联),以便豆包只读单文件时也能完整运行。

Q3:脚本跑不了怎么办?
技能设计即「规则为主、脚本为辅」。脚本不可用时走内置降级路径:Agent 直接基于内容做纯语义分析,流程与输出格式不变,仅缺少量化信号与硬过滤。

Q4:为什么视频分析不需要 ffmpeg?
关键帧抽取与镜头切分用 OpenCV(cv2.VideoCapture)完成,不依赖 ffmpeg CLI。

Q5:会消耗我的 API 吗?
离线验证(verify.py)完全不消耗 API。正式使用时的语义分析由所在 Agent 的模型完成,属 Agent 正常调用。


八、许可证

MIT License © 2026 niobium617


九、相关项目

项目 说明
AI Prompt Hub 集提示词库、AI 技能教程、在线工具、社区交流于一体的全栈学习项目(Vue 3 + NestJS + 微信小程序)。与本 Skill 理念同源——把好作品拆解为可复用的 Prompt;其提示词库与教程体系收录了本 Skill 的逆向分析方法论。

技能规则与数据契约的权威来源是 prompt-reverse-engineer-skill/references/,请以该目录为准。

Reviews (0)

No results found