GhostCut Skill for AI Agents

让 Agent 先安装 Skill,再按官方文档接入视频翻译、字幕擦除、配音与图片翻译能力。

将以下提示词发送给您的 Agent,以添加 Skills。

请访问 https://github.com/zhaoli-ai/GhostCut-ai/blob/main/skills.md 并按说明为我安装 GhostCut Skill。
Video AI 视频擦除

字幕 / 文字 / Logo

Dubbing 翻译配音

多语翻译 / AI 声音

Subtitle 字幕处理

OCR / ASR / SRT 压制

Image AI 图片 AI

图片翻译 / 文字擦除

Why GhostCut

为什么选择鬼手剪辑

译制全链路

覆盖从导入、翻译、校对、擦除、配音压制到成片下载的完整流程。既支持 API + 网站协同快速接入,也支持全流程 API 自动化。

70%

头部出海短剧客户和服务商正在使用

覆盖头部出海短剧客户,也覆盖 AI 短剧生产和交付团队。

20 万

日处理译制真人短剧和 AI 短剧近 20 万集

约 2000 多部内容进入日常生产,适合批量任务队列。

10 倍

一键译配帮助客户整体译制效率提升 10 倍

把翻译、配音、字幕擦除和成片回收串成可复用生产动作。

Workflow

把译制链路变成
可编排的生产步骤

新建项目 上传素材 字幕翻译 人工校对 字幕擦除 AI 配音 成片下载

Customer Paths

适合哪些 API 客群

按业务形态选择接入深度:公司可直接调用独立能力,出海团队可组合译制流程,Agent 可把 GhostCut 作为可编排工具。

01 · Independent API

电商 / 内容平台

把图片翻译、图片文字擦除、视频去文字、字幕生成等独立能力接入已有后台。

  • 批量处理商品图、详情图和营销素材
  • 把文字擦除、字幕处理做成内部生产工具
  • 用回调和轮询接入现有任务队列
03 · Agent Native

Agent / 自动化平台

让 Codex、Cursor、Claude Code 或内部机器人先读取 Skill,再按文档提交任务、查询状态和处理回调。

  • Skill 约束鉴权、签名、端点和任务查询
  • 凭证通过环境变量或密钥管理系统注入
  • 把视频处理变成可编排的工具动作

Localization Workflow

译制出海流程

这部分说明一条短剧如何从原片变成外语成片。你可以只把前后端流程接到 API,中间精修继续在网站完成;也可以把翻译、校对、擦除、配音和成片下载都接成 API。

Choose Mode

选择接入方式

两种方式不是流程先后关系,而是不同接入深度。

API + Web

API网站协同模式

适合希望快速对接的团队。API 先接入建项目、传视频、传字幕、翻译字幕和下载成片这些最耗时、最标准化的环节;字幕校对、字幕擦除、AI 配音等复杂交互继续在鬼手剪辑网站完成。

Full API

全流程 API 模式

适合已有内部系统或自动化平台的团队。原片上传、字幕处理、校对、擦除、配音、压制、任务状态和结果回收都通过 API 完成。

Run Workflow

查看处理步骤

无论选择哪种接入方式,一条短剧通常都会经过这些节点。

01

导入素材

通过 API 新建项目,上传视频和已有字幕;如果没有字幕,可以后续走识别或翻译流程。

02

字幕翻译

把中文字幕翻译成目标语言。需要人工把关时,在网站里校对;需要系统化处理时,继续接 API。

03

处理画面和声音

根据片源情况擦除原字幕,压制新字幕,并选择是否做 AI 配音、声音克隆或保留背景音。

04

获得成片

任务完成后,通过回调或轮询拿状态,下载最终视频,再回传到你的内容库、投放系统或发布流程。

Minimum Call Shape

最小调用形态

安装 Skill 后,最小调用不是孤立的 curl,而是“凭证 -> payload -> 签名 POST -> 作品 ID -> 状态查询”的可重复闭环。

import hashlib
import json
import os

import requests

APP_KEY = os.environ["GHOSTCUT_APP_KEY"]
APP_SECRET = os.environ["GHOSTCUT_APP_SECRET"]
BASE_URL = "https://api.zhaoli.com"
VIDEO_URL = "https://example.com/input.mp4"


def post(path, payload):
    body = json.dumps(payload, ensure_ascii=False, separators=(",", ":"))
    body_md5 = hashlib.md5(body.encode("utf-8")).hexdigest()
    app_sign = hashlib.md5((body_md5 + APP_SECRET).encode("utf-8")).hexdigest()

    response = requests.post(
        BASE_URL + path,
        headers={
            "Content-Type": "application/json",
            "AppKey": APP_KEY,
            "AppSign": app_sign,
        },
        data=body.encode("utf-8"),
        timeout=30,
    )
    response.raise_for_status()
    return response.json()


payload = {
    "urls": [VIDEO_URL],
    "needChineseOcclude": 2,
    "videoInpaintLang": "all",
    "extraOptions": json.dumps(
        {"extra_inpaint_config": {"model": "advanced_lite"}},
        separators=(",", ":"),
    ),
    "videoInpaintMasks": json.dumps(
        [{
            "type": "remove_only_ocr",
            "start": 0,
            "end": 99999,
            "region": [[0, 0], [1, 0], [1, 1], [0, 1]],
        }],
        separators=(",", ":"),
    ),
}

result = post("/v-w-c/gateway/ve/work/free", payload)
work_id = result["body"]["dataList"][0]["id"]
print("work_id:", work_id)

status = post("/v-w-c/gateway/ve/work/status", {"idWorks": [work_id]})
print(json.dumps(status, ensure_ascii=False, indent=2))

将 VIDEO_URL 替换为自己的公网视频 URL;本地视频需先上传获得可访问 URL。运行前通过环境变量设置 AppKey 和 AppSecret。

01

签名和请求体必须一致

示例会将 payload 序列化为紧凑 JSON,用 AppSign = md5(md5(body_str) + AppSecret) 生成请求头,并发送同一份 body_str。

02

创建任务只代表进入队列

/work/free 返回成功后保存 body.dataList[0].id;普通视频结果用 /work/status 查询,processStatus == 1 才代表处理成功。

03

本地素材先上传

如果是本地素材请先申请上传凭证,再把文件传到 OSS,并返回后续接口可用的 URL。

Demo Scenarios

演示场景

下文为三类高频任务传参示例,示例代码默认已封装完成签名请求方法 ghostcutPost(path, payload)

01 · Video AI 高级去文字 / 硬字幕擦除
const payload = {
  urls: ["https://gc100.cdn.izhaoli.cn/demo/1691660164246.mp4"],
  needChineseOcclude: 2,
  videoInpaintLang: "all",
  extraOptions: JSON.stringify({
    extra_inpaint_config: { model: "advanced_lite" }
  }),
  videoInpaintMasks: JSON.stringify([{
    type: "remove_only_ocr",
    start: 0,
    end: 99999,
    region: [[0, 0], [1, 0], [1, 1], [0, 1]]
  }])
};

const task = await ghostcutPost("/v-w-c/gateway/ve/work/free", payload);
const workId = task.body.dataList[0].id;

Integration Path

接入路径

从获取凭证到拿到处理结果,把 GhostCut API 接入拆成四步:准备权限、安装 Skill、提交首个任务、接收或查询结果。

01

获取 API 凭证

登录 GhostCut 后进入 用户中心,在“我的账户”中创建 API 权限,并获取 AppKey 和 AppSecret,用于后续请求签名。

02

安装接入 Skill

Agent 先读取 skills.md 并安装 ghostcut-skill;开发者可执行 npx skills add zhaoli-ai/GhostCut-ai。

03

跑通首个任务

使用最小调用示例提交一个视频去文字任务,验证 AppSign 签名、任务创建和状态查询链路是否完整。

04

获取处理结果

生产环境建议创建任务时传入 callback;同时保留轮询作为补偿。视频结果查 /work/status,图片任务查 /image/translate/query。

Billing

计费与额度

API 的扣费规则和鬼手剪辑网站一致。你可以先用网站账户跑通测试,再根据任务量、并发和交付周期选择合适套餐。

Same Account Billing API 与网站共用会员、点卡和额度

同一账号下,API 提交的任务和网站创建的任务按同一规则计费。批量上线前,建议确认账户余额、任务量预估、并发需求和交付周期。

查看会员与定价

Production Rules

生产规则

Video limits 视频时长与大小

当前素材时长上限为 15 分钟,单文件要求小于 1000MB。超长视频先分段,超大文件先压缩。

Media URL 素材必须可公网访问

视频、图片、SRT URL 不能依赖登录态、内网或本机路径,URL 中不要包含中文字符。

Image limits 图片限制

图片不超过 2000 * 2000 px、50MB,支持 png、jpeg、jpg、bmp、webp。本地图片先上传。

Callbacks 回调与幂等

校验 Callback-Sign,按作品 ID 或任务 ID 去重,落库或入队后返回 HTTP 200 和非空 body。

Retry 重试与补偿

回调失败会在 24 小时内约每 30 分钟重试;即使使用 callback,也应保留补偿轮询。

For AI Coding Tools

给 AI Coding 工具

把安装入口、最小闭环、鉴权签名、异步回调和机器索引交给 Codex、Cursor、Claude Code、内部机器人或自动化 Agent。凭证只通过环境变量提供,真实字段以 Skill 文档为准。

FAQ

常见问题

把接入前最常见的概念、权限、场景、异步任务、素材和计费问题提前说明,减少开发者和 Agent 的试错成本。

GhostCut Skill 和 GhostCut API 是什么关系?

GhostCut API 提供视频翻译、字幕擦除、配音、图片翻译等能力;GhostCut Skill 是给 AI Agent 和 AI Coding 工具读取的接入说明,让 Agent 按官方流程安装、鉴权、签名和调用 API。

开发者如何获取 GhostCut API Key?

登录鬼手剪辑账号后,进入 用户中心,在“我的账户”中创建 API 权限并获取 AppKey 和 AppSecret,用于后续请求签名。

GhostCut API 适合哪些业务场景?

适合短剧出海、AI 短剧译制、电商素材本地化、视频字幕擦除、图片翻译、批量配音、内部内容生产系统和自动化 Agent 工作流。

API 支持完整短剧译制流程吗?

支持。可以接入新建项目、上传素材、字幕翻译、校对、字幕擦除、AI 配音、成片下载等流程,也可以只接入其中某些能力,与鬼手剪辑网站协同使用。

任务是同步返回结果还是异步处理?

视频和图片处理通常是异步任务。提交任务后先获得任务或作品 ID,再通过状态查询接口或 callback 获取最终结果。生产环境建议 callback 优先,轮询作为补偿。

本地视频或图片可以直接传文件路径吗?

不可以直接使用本机路径。素材需要是公网可访问 URL;如果是本地素材,需要先申请上传凭证,把文件上传到 OSS,再使用返回的 URL 调用后续接口。

调用失败时应该优先检查什么?

优先检查 AppSign 是否按同一份请求体生成、媒体 URL 是否可公网访问、文件大小和格式是否符合限制、任务 ID 是否取对、以及最终状态是否通过正确的查询接口确认。

GhostCut API 的计费规则是什么?

GhostCut API 不单独建立一套价格体系,API 任务与网站任务共用会员、点卡和额度。上线前建议确认账户余额、任务量预估、并发需求和交付周期,套餐、额度和价格以 计费文档 为准。