gitruck/cli/gtrk-tools
Claude Code and agent skill by gitruck/cli
- community
Checking that the SKILL.md file is still in the repository.
gtrk 单点工具与媒体转换能力的调用向导,覆盖 `gtrk tool` 家族。当用户想“让图动起来 / 抠像去背景 / 图片或视频去黑边 / 图片或视频比例转换 / 视频防抖 / 添加蒸汽波滤镜 / 清理有权处理的图片或视频中的水印、字幕或叠加元素 / 视频超分变清晰 / 视频补帧变流畅 / 分离人声和伴奏 / 提取伴奏 / 按说话人分轨 / 音频变调变速 / 钢琴扒谱转 MIDI 或修复钢琴录音 / 给音频或视频降噪 / 去掉音频静音停顿 / 长图转方图 / 图片变 LivePhoto 微动 / 视频机械分镜或智能分镜切镜头 / 提取运镜高光片段 / 给视频加字幕或翻译字幕或烧录字幕 / 把视频翻译配音成另一种语言或译制 / 一键剪 MAD / 用某个 gtrk 单点工具 / gtrk 工具族里有什么”时使用本 Skill。凡涉及这些能力,优先驱动 CLI,不让用户自己去终端敲,也不手搓 ffmpeg。
Install
npx vskill@latest install gitruck/cli/gtrk-toolsSKILL.md
gtrk 工具族(gtrk-tools)
飞书使用教程统一入口:gtrk CLI 使用教程。
gtrk tool <name> [输入...] 是 gtrk 的单点能力族:一个工具 = 单发单收(给一份输入、出一份产物;多文件图片工具的「一份输入」是一组图片路径,顺序即拼装顺序),没有成片 SOP 次序;视频去水印必须先完成下文的用户模式选择——与成片管线的车道命令(oralcut / split / matrix / mg)是两回事。本 skill 是这个族的统一调用向导:认清有哪些工具、按纪律驱动 gtrk tool 命令、把产物和计费如实回给用户。
本 skill 已含你需要的全部信息(工具清单、调用纪律、恢复语义、排错话术)。工具清单以gtrk tool list --json为唯一真相——本文件与它漂移时以命令输出为准并回来修本文件。参数细节以gtrk tool --help为准。
工具清单(与 gtrk tool list 同源)
| 工具名 | 触发语(用户可能怎么说) | 输入要求 | 产物形态 | 计费 | 可用状态 | ||||
|---|---|---|---|---|---|---|---|---|---|
image_move | 「把这张图做成运镜视频 / 让图动起来 / 图转视频 / 往右推镜 / 拉远」 | 单张图片;可选 --motion 指定 26 种运镜之一(见下文枚举表) | 运镜视频 | 运行前实时查询 | 已上线 | ||||
image_matting | 「给图片抠像 / 抠出主体 / 去背景 / 出透明 png」 | 单张图片(带 EXIF 方向的手机照片自动摆正后上传) | 透明背景 png | 运行前实时查询 | 已上线 | ||||
image_blackborder_remove | 「图片去黑边 / 裁掉四周黑边 / 保留有效画面」 | 单张本地图片 | 去黑边图片 | 运行前实时查询 | 已上线 | ||||
image_canvas_adapt | 「图片比例转换 / 调整画布尺寸 / 转成矩形或方形裁剪」 | 单张本地图片;模式只支持 normal / rectangle / square | 比例适配图片 | 运行前实时查询 | 已上线 | ||||
image_purify | 「清理我有权处理的图片水印 / 去掉 Logo 或叠加元素 / 图片净化 / 按我圈的框去掉台标」 | 单张本地图片(仅处理你有权处理的素材);可选按框直接去除 | 净化图片 | 运行前实时查询 | 已上线 | ||||
video_matting | 「视频抠像 / 视频去背景 / 出透明背景视频」 | 单条视频(≤10 分钟) | 透明背景 webm | 运行前实时查询 | 已上线 | ||||
video_blackborder_remove | 「视频去黑边 / 裁掉视频四周黑边 / 保留有效画面」 | 单条本地视频 | 去黑边视频 | 运行前实时查询 | 已上线 | ||||
video_canvas_adapt | 「视频比例转换 / 横竖屏适配 / 截取片段并转换画布」 | 单条本地视频;模式只支持 normal / rectangle / square | 比例适配视频 | 运行前实时查询 | 已上线 | ||||
video_stabilizer | 「视频防抖 / 稳定手持画面 / 去抖」 | 单条本地视频;方式 fast / exp / turbo | 防抖视频 | 运行前实时查询 | 已上线 | ||||
video_vaporwave | 「给视频加蒸汽波滤镜 / 复古滤镜 / 使用某个滤镜预设」 | 单条本地视频;滤镜名需精确 | 蒸汽波滤镜视频 | 运行前实时查询 | 已上线 | ||||
video_purify | 「清理我有权处理的视频水印 / 去字幕 / 只净化指定区域 / 只抹我圈的这块 / 只抹片头几秒的角标」 | 单条本地视频(仅处理你有权处理的素材);可选范围、方式、归一化 ROI 和带时间段的区域框 | 一条净化视频 | 运行前实时查询 | 已上线 | ||||
video_upscale | 「视频超分 / 低清视频放大 / 动漫视频变清晰」 | 单条本地视频(≤1 分钟);倍数 2 / 3 / 4,类型 Reality / Anime | 一条超分视频 | 运行前实时查询 | 已上线 | ||||
video_interpolate | 「视频补帧 / 提高帧率 / 让画面更流畅」 | 单条本地视频;倍数 2 / 3 / 4,不附加 1 分钟限制 | 一条插帧视频 | 运行前实时查询 | 已上线 | ||||
video_highlight | 泛高光发现(视频高光算法);明确脚本优先语义检索 | 本地视频,3秒以上、30分钟以内;上传448p/4fps分析代理(缺省附单声道低码率原声,可 --no-audio) | 按请求分组的三秒候选,需 Agent 复核 | 未开放外部收费 | 内部验收候选 | ||||
video_segment | 「机械分镜 / 按画面变动切分镜区间 / 场景切分」 | 单条本地视频;可选 `--detector content\ | adaptive、--threshold` | 分镜区间结构 result-output.json(非下载文件) | 运行前实时查询 | 已上线 | |||
video_ai_segment | 「智能分镜 / 语义切镜头 / 按类目景别拆镜头」 | 单条本地视频;可选 `--segment-mode scene\ | shot_type\ | narrative\ | subject` | 语义分镜结构 result-output.json(非下载文件) | 运行前实时查询 | 已上线 | |
video_motion_cut | 「运镜高光 / 提取运镜片段 / 找高光镜头」 | 单条本地视频 | 运镜/高光片段结构 result-output.json(非下载文件) | 运行前实时查询 | 已上线 | ||||
video_speaker_detect | 「谁在说话 / 说话人检测 / 检测画面里谁在何时开口」 | 单条本地视频;可选 --language、--max-faces-per-frame、--detect-body、--track-sample-fps。重 GPU、按分钟计费较高,长片先想清楚 | 可见说话人结构 result-output.json(时间字段时基以服务端输出为准) | 运行前实时查询 | 已上线 | ||||
video_split_screen | 「分屏 / reaction 同框 / 对比视频 / 多画面合成」 | 2~16 段视频(多 positional,顺序有语义);精确档 --clips-json:条目 {input:0 起序号, begin_time_ms, end_time_ms, crop 归一化}(毫秒时基、input 指第几个输入文件、同文件可多窗口);可选 --layout-mode/--layout-id/--seed/--output-ratio/--quality/--fit-mode/--audio-mode/--gap-ratio/--background-color。成片时长对齐最短段 | 一条分屏成片视频 | 运行前实时查询 | 已上线 | ||||
video_long2short_pro | 「长视频剪成多条高光短片 / 一键出成片 / 长剪短精剪 / 播客切片直接出片」 | 单条长视频(整片上传,云端要渲成片);`--language <码>` 必填;可选 --output-language、--main-topic、--output-size、--no-jump-cut、--duration-pref、--max-clip-sec、--split-screen、--split-orientation、--speed-factor、--no-camera-move、--no-subtitle、--subtitle-translate-language;润色细颗粒走 --params-json | 逐条成片 clip{i}.mp4 + 人读报告 clips.md(含润色降级明细)+ result-output.json | 运行前实时查询(约为粗剪两倍) | 已上线 | ||||
video_face_track | 「人脸追踪 / 人物出场时间段 / 视频里有哪几个人」 | 单条本地视频;可选 --sample-fps、--max-faces、--min-face-ratio、--enable-body-match、--similarity-threshold;time_ranges 经 --params-json 传(单位毫秒,如 {"begin_time":0,"end_time":30000})。重 GPU、按分钟计费较高 | 人物 ID/时间段/轨迹结构 result-output.json(时基以服务端输出为准) | 运行前实时查询 | 已上线 | ||||
video_character_cut | 「角色 Cut / 找出某角色全片片段 / 正反打角色检索」 | 本地视频;--character、--seed-range,多人时 --seed-bbox x,y,w,h;全片镜头清单 + ≤720p/12fps 代理;CPU 解码 + 外部多图理解 | video_character_cut.v2:cuts、review_candidates、context_review、unknown_ranges;仅返回原片时间轴。partial 不可声称全片已找全;身份歧义换种子/框选 | 运行前实时查询 | v2 重构验证中,未部署 | ||||
video_ai_subtitle | 「智能字幕 / 给视频加字幕 / 视频翻译字幕 / 烧录字幕 / 去原字幕」 | 单条视频或音频;`--language <码>` 必填;可选 --translate-language、--need-render(烧录)、--need-pure(去原字幕)、--subtitle-type、--subtitle-color。默认只上传本地抽出的音频、毛片不出本地(几何随请求回传,字幕按原片画布出) | .ass 字幕文件 + 可选烧录/去字幕 .mp4 + result-output.json(LLM 摘要 + 字级时间轴) | 运行前实时查询 | 已上线 |
字幕这两条要提前讲给用户(video_ai_subtitle专属):---need-render(烧录)在本地跑 ffmpeg,成片不从云端下行。字幕模板用思源黑体 CN Bold,本机没装就直接报错(不拿替代字体顶——观感会与模板设计不符且用户难以察觉)。装上后重跑即可,字幕文件已落地、无需重新提交任务。4K/长片本地烧录要重编码,耗时可观,先跟用户打招呼。---need-pure(去原字幕)是画面操作,加了这个 flag 就会整片上传(CLI 会打一行说明)。只要字幕文件时别加。
audio_separation | 「分离人声和伴奏 / 提取人声 / 提取伴奏」 | 单条音频 | 人声与伴奏音频(按实际返回可为一项或两项) | 运行前实时查询 | 已上线 | ||
|---|---|---|---|---|---|---|---|
audio_speaker_split | 「按说话人分轨 / 把不同人的声音分开 / 谁在什么时候说话」 | 单条音频;可选 --only-struct 只出结构 | 各说话人 .wav 分轨 + spoken_list 时间线(result-output.json) | 运行前实时查询 | 已上线 | ||
audio_stretch | 「变调 / 变速 / 升降 key / 加快放慢音频」 | 单条音频;可选 --semitones、--speed(>0) | 变调变速音频 | 运行前实时查询 | 已上线 | ||
audio_noise_reduce | 「音频降噪 / 视频声音降噪 / 去底噪」 | 单条音频或视频 | 降噪后的音频 | 运行前实时查询 | 已上线 | ||
audio_silence_remove | 「去静音 / 删掉过长停顿 / 压缩音频空白」 | 单条音频 | 去静音音频 | 运行前实时查询 | 已上线 | ||
piano_audio_to_midi | 「钢琴扒谱 / 钢琴音频转 MIDI / 提取 MIDI」 | 单条音频 | MIDI 文件 .mid | 运行前实时查询 | 已上线 | ||
piano_audio_enhance | 「钢琴录音修复 / 增强钢琴音质」 | 单条音频 | 高质量 WAV + 配套 MIDI(双产物) | 运行前实时查询 | 已上线 | ||
image_to_square | 「长图转方图 / 把长图变方的」 | 单张图片;可选 --max-line(≤20000) | 方形图片 | 运行前实时查询 | 已上线 | ||
image_to_live | 「图片变 LivePhoto / 静图微动 / 让照片动起来 / 要能长按播放的动态照片」 | 单张图片;可选 --output-format(见下文) | 约 4 秒短视频 .mp4(无声);或安卓动态照片 .jpg + 附带同一条 .mp4 | 运行前实时查询 | 已上线 | ||
image_classic_template | 「做封面 / 智能拼图 / 标题配图出封面图」 | 多张图片(可传多个路径,文件顺序即拼装顺序);`--main-title <标题>` 必填;可选 --sub-title、--template-mode、--aspect、--quality、--output-pic-count(服务端钳制 ≤20)、--output-text-count(≤20)、--title-layout | 封面/拼图成品(text/pic/render 三组、各组可空可多张) | 运行前实时查询 | 已上线 | ||
image_vertical_stitch | 「拼长图 / 多图竖拼 / 截图接成一张长图」 | 多张图片(可传多个路径,顺序=自上而下拼接顺序) | 一张垂直拼接长图 | 运行前实时查询 | 已上线 | ||
audio_tts_clone | 「配音 / 文字转语音 / TTS / 用 xx 音色念这段 / 把这段稿子合成音频」 | 无文件:--text <短文本> 或 --text-file <txt> 二选一(≤5000 字,服务端为真相)+ `--speaker <音色代号>` 必填(可用音色见官网文档,传错时报错会列出全部可用项);可选 --text-lang/`--output-format wav\ | mp3/--speed/--split-method/--batch-size/--fragment-interval <秒>(句间停顿,**仅自训音色**,云引擎音色传了会报错;speed/切分法缺省跟随该音色调好的参数)/--subtitle-format <fmt>(**可选出字幕**,如 srt;缺省不出字幕、不额外计费,取值以服务端为准,传了不认的格式服务端会拒并列出可用项)。**计量单位与单价以 gtrk tool list` 实时显示为准 —— MUST NOT 在本文写死(此处写死过一次「200 字/分钟」,服务端实为 240,且计量口径已改为千字符) | 配音音频(wav/mp3);传了 --subtitle-format 时另产字幕 tts-<音色代号>.srt(服务端字幕降级时只落音频、不留空字幕文件) | 运行前实时查询 | 已上线 | |
video_translate_dub | 「视频翻译配音 / 译制 / 把这条视频换成英文配音 / 用我的声音说英文 / 给视频出个外语配音版」 | 单条视频或音频(≤120 分钟,整片上传);`--language <源语种>`、`--translate-language <目标语种>`、`--speaker <clone 或音色代号>` 三项必填(语种传标准地区码如 zh-CN / en-US;可用语种与音色以服务端为准,传错时报错会列出可用项);clone = 用原片说话人的声音,可加 --ref <音频或视频> 指定克隆参考、--ref-lang 标参考语种(非 clone 时 --ref 会被忽略并提示);可选 --no-keep-bgm(不保留原伴奏)、--fit-policy(时长拟合策略)、--speed-band <最小,最大>(语速倍率区间)、--subtitle-mode(字幕形态,音频输入不能烧录)、--subtitle-type(烧录样式)、--project-formats <逗号分隔>(缺省只出客户端工程 .gtrk;要剪映草稿写 gtrk,jianying,要 PR / Final Cut 工程写如 gtrk,xml)、--jianying-draft-dir <目录>(剪映草稿目录,缺省读 gtrk init 配置或自动探测);各参数取值以服务端为准 | 配音成片 <输入名>-dub.mp4(音频输入为 -dub.mp3)+ 纯配音轨 dub.wav + 伴奏轨 bgm.wav(有则)+ 延长后的底片 base.mp4(有则)+ 字幕 <输入名>.srt / <输入名>_bilingual.srt(有则)+ 逐句对齐记录 transcript.json + 工程文件按格式分目录(如 gtrk/project.gtrk、jianying/;音频输入没有)+ result-output.json(配音对齐报告) | 运行前实时查询 | 已上线 | ||
mad | 「一键剪 MAD / 素材文件夹自动出卡点成片 / 自动选技法 / 给这堆素材出个 AE 工程 / 我想要某某效果的卡点片」 | 一个素材文件夹(3~10 条视频)+ 可选 --bgm 歌.mp3 + 可选 --technique 技法名;--search <词> 只查技法目录不要输入 | AE 母合成工程 .jsx(仅支持 AE) | 仅 --bgm 触发实时查价 | 已上线 |
清单随 CLI 版本增补。动手前先跑 `gtrk tool list --json` 拿最新清单,别凭记忆——新工具、状态变化都在那里。
video_translate_dub(视频译制配音)要提前讲给用户的
- 克隆声音须本人同意:
--speaker clone(或--ref给的是别人的录音)会克隆说话人的声音。克隆别人的声音 MUST 先取得那个人的同意,发起任务即视为已取得;不确定就先问用户,别替他默认。 - 只换音轨,画面保持原样:不做口型同步,镜头也不动。缺省拟合策略下,个别译句过长时画面可能短暂定格来让出时间;用户要成片与原片严格等长,传
--fit-policy strict(超出部分截尾)。 - 时长与耗时:单条最长 120 分钟,超了 CLI 在上传前直接拒并提示分段;长片耗时十几分钟起,CLI 最多等 4 小时。中途断开别直接重跑(会重新计费),凭产物目录里
task.json的任务号取回。 - 工程文件怎么打开:CLI 提交时自动带上原片与产物目录的本机路径,各格式工程里的素材都指向本机的原片与产物目录里的
dub.wav/bgm.wav/base.mp4,打开即用。要剪映草稿加--project-formats gtrk,jianying:草稿自动放进剪映草稿目录,打开剪映就在列表里;CLI 提示「没找到剪映草稿目录」或「草稿缺 draft_meta_info.json」时,让用户给出剪映草稿目录再用--jianying-draft-dir重跑,或先用客户端工程。CapCut 草稿留在产物目录capcut/,需要时手动放进 CapCut 草稿目录。 - 附带产物偶尔缺项不算失败:字幕、逐句对齐记录、工程文件某一项没生成时,成片与配音轨照出、
ok=true,终端打一行「部分附带产物未生成」,原因在result-output.json的errors。照实告诉用户少了哪样。 - 常用形态:
gtrk tool video_translate_dub ./talk.mp4 --language zh-CN --translate-language en-US --speaker clone --json;用自己另录的干净人声做参考加--ref ./me.m4a;要剪映草稿加--project-formats gtrk,jianying,要 PR 工程加--project-formats gtrk,xml。
打开 PR 工程时的重链提醒照 gtrk-oralcut「回给用户(三端打开方式)」PR/FCP 条,引用不复制。
mad(一键剪 MAD)的特殊之处
mad 是族内首个 local 型「纯本地工具、可选云端加料」成员,与 cloud 型工具不同:
- 无 Key 可跑:不带
--bgm时全程只走免鉴权数据面(技法数据经云端 manifest 下发 +~/.gitruck/mad-cache缓存),首拉联网一次性下载、缓存命中后离线可跑;不要求 API Key、不触发计费任务。 - `--bgm` 才需 Key 且计费一次:带
--bgm且已配 Key → BGM 卡点到 downbeat(调一次云端节拍分析计费);没配 Key → 温和提示 `gtrk init` 可解锁卡点,不阻断,BGM 仍入轨、按固定节奏出片;坏 BGM/云端失败一律降级不崩。 - 产物只有 `.jsx`、只支持 AE:完成后引导「装 AE 2020+ → 文件›脚本›运行脚本文件 选它」。不承诺 `.amproj`/Alight Motion 等本命令未产出的形态。
- 可复现:
--seed <n>固定选窗序列(同素材同种子同数据版本 → 同结果);result.json记录 seed、数据版本、降级档位、选中技法清单。 - 常用:
gtrk tool mad ./素材 --bgm 歌.mp3 --duration 20 --json。
用户描述了想要的效果时:你先查目录、再点名
不带技法参数时,选技法是纯规则抽样(类目轮转 + 频次加权),用户说的「我要那种切到鼓点屏幕震一下的感觉」不会进到命令里。想让效果对上用户的描述,走两步:
gtrk tool mad --search <关键词> --json—— 只查技法目录,不出片、不要素材文件夹、零计费不需 Key。回来的每条带name/cat/pid/n_seen(该技法在图鉴收录工程里出现过多少次)/windows(技法池里有几个可用窗口,0 = 点了也用不上)。gtrk tool mad ./素材 --technique <技法名[,技法名…]>—— 只用点名的技法出片。取值接受技法名、别名或pid。
把用户的话翻译成关键词是你的活,命令那头只做纯字符串包含匹配(无分词无模型)。「屏幕震一下」→ 搜「震屏」/「抖动」;「一闪一闪的」→ 搜「闪白」/「频闪」;「字一个个蹦出来」→ 搜「打字机」。搜不到就换更短的词,别硬塞整句。
三条要如实转述给用户,别替它圆场:
- 名字歧义(比如只写「卡点」命中一片)命令会报错并列候选,不会自己挑一个——把候选念给用户听,让他选。
- 点名的技法里有
windows: 0的,命令会跳过它并说明原因,用剩下的继续出片;全是 0 才报错。 - 白名单里只有一两个技法时,成片会反复用同一个技法的不同实例(运动曲线不同),这是设计,不是 bug。
⚠️ 长剪短有两条线,别选错(名字很像,产物完全不同)
用户说「把这条长视频剪成短片」时,开工先问两件事、一张表一次问完(MUST NOT 碎问、MUST NOT 代猜):
| # | 问 | 决定什么 | |
|---|---|---|---|
| ① | 要可编辑工程还是直接成片? | 走粗剪 gtrk long2short 还是本 skill 的精剪——选错一次的代价是白花积分重来 | |
| ② | 素材是不是多人同框(对谈 / 访谈 / 多人直播)? | 答「是」⇒ 命令带 --split-screen、不再追问;答「否 / 不确定」⇒ 不带。「不确定」按「否」:开错是分屏烧进成片不可回退 + 一段检测等待,不开只是少个点缀、看片后补一句重跑即可 |
分屏是点缀不是主体:只挑多人同框段做,单段最长 8 秒、每条最多 3 处,不会整条变分屏。单人素材开了也不会出现分屏画面,但仍会多付一段说话人检测的等待——不是零副作用,别这么跟用户说。跑完clips.md头部会回显「分屏:开/关」(只是请求态,报告不知道实际做了几处)。
gtrk long2short(粗剪,独立命令、不在本 skill) | gtrk tool video_long2short_pro(精剪,本 skill) | ||
|---|---|---|---|
| 产物 | 可编辑工程:gtrk(客户端)+ 剪映草稿 + PR xml,逐 clip 一套 | 直接出成片 mp4,一条一个文件 | |
| 上传 | 只传抽出音频 / 720p 代理,毛片不出本地 | 整片上传(云端要渲染) | |
| 适合谁 | 要自己再剪、要调时间轴、要换素材 | 要能直接发布的成品,不打算二次编辑 | |
| 计费 | 按分钟 | 按分钟,约为粗剪两倍 | |
| 驱动 skill | /gtrk-long2short | 本 skill |
判断句:「剪完还要不要再动?」要动 → 粗剪;不动 → 精剪。
精剪的润色(运镜 / 调速 / 接缝 / 分屏 / 字幕)都是 best-effort——单项失败会降级,成片照出。跑完 MUST 看一眼产物根的 clips.md,里面有「⚠️ 润色降级」小节点名哪条片的哪些效果没做成;有降级就如实告诉用户,别让他拿着不完整的效果去发布。
调用纪律(每次都照做)
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/gtrk-tools/SKILL.md
Popularity
- 7-day trend score
- 5
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/gitruck/cli/gtrk-tools)