コンテンツ制作 · iart-ai/tiktok-video-skills

short-form-video

このスキルは、ユーザーが「Reels/TikTok/YouTube Shorts 動画を作りたい」「ショート動画のテンプレートを構築したい」「Shorts 用のフックを書きたい」「維持率(リテンション)を高める編集をしたい」「パターンインタラプトを追加したい」「動画をループさせたい」「冒頭3秒を改善したい」「縦型動画のカット割り・テンポを調整したい」「9:16 のセーフエリアを設定したい」と求めた場合に使用します。縦型ショート動画の「フック→維持→ループ」文脈をカバーします(ローンチ用のハイプ動画とは異なります)。

L4 高権限 · 段階的認可と監査V1 コミット固定コマンド実行ネットワーク通信ファイル書き込みDual-pass Audit
Author iart-aiGitHub iart-ai/tiktok-video-skills ↗Stars 11License MIT(仓库根 LICENSE 为 "MIT License / Copyright (c) 2026 iart.ai";GitHub API spdx_id = MIT;.claude-plugin/plugin.json 亦声明 "license": "MIT")Commit 2a775336b5
管理レベルは Skill の能力と推奨統制措置を示すものであり、品質や安全性の認証、利用可否の判定ではありません。使用の可否はユーザーおよび管理者が決定します。Agent 環境によって制約が異なるため、自動保護を仮定しないでください。第三者製 Skill の著作権は原著作者に帰属し、利用リスクは利用者が負います。

1仕組みと動作原理

ポジショニング先行:ショート動画は「縮小版のローンチ動画」ではなく、視聴維持マシンである。作業単位はカットの編集点ではなく維持率曲線である。

skills/short-form-video/SKILL.md
You are editing the *curve*, and the hook gates everything after it — fix it first.
ここで行っていること:「何を編集するか」を映像表現から維持率曲線へとシフトさせ、後続のすべてのルール(1つのアイデア、無駄な間を排除、2〜4秒ごとの変化)をその曲線の帰結として位置づけています。

ストーリー構成の規律:1本の動画に込める payoff(オチ・見返り)は1つのみ。最初の約3秒でオープンループを作り、最後にようやくループを閉じる。

skills/short-form-video/SKILL.md
- **One idea per video.** A short carries exactly one payoff.
ここで行っていること:「情報密度」を「単一の約束」に置き換えます。2つ目のアイデアを持ち込むと注意が分散し、中盤の維持率曲線が崩壊するためです。

維持率アークに基づく秒単位の配分(hook 0–1s / setup 1–4s / body 4–17s / payoff 17–20s)。拡張するのは body のみであり、hook は絶対に引き延ばさない。

skills/short-form-video/SKILL.md
Scale the *body*, never the hook.
ここで行っていること:60秒の動画=より長い body + より多くのビートとなりますが、hook は1秒のまま維持します。エージェントが冒頭を前置きとして引き延ばすのを防止します。

hook の2つの絶対ルール:コピーは第1フレームで画面に表示すること、最も目を引くビジュアルを第1フレームに持ってくること(黒からのフェードインは禁止)。

skills/short-form-video/SKILL.md
the hook line is **on-screen as text by frame 1** (85% watch muted), and the most striking *visual* is also the first frame — never a slow ramp-in.
ここで行っていること:「hook」をコピーライティングのタスクから初頭フレームの制約へと落とし込みます。4つの hook 構文(オープンループ/直接的約束/ツイスト/否定)と組み合わせて再現可能な導入公式を作ります。

テンポはパターンインタラプトの密度で制御:約2〜4秒ごとに視覚的な変化を入れ、その間隔は意図的に不均等にする。

skills/short-form-video/SKILL.md
a *visual change every ~2–4 seconds*
ここで行っていること:「退屈させない」を切り替え頻度として定量化します。コード上ではフレーム駆動の cuts 配列で実装し、間隔を意図的にバラつかせます('cuts = [0, 1.2, 3.0, 5.4, 8.0, 11.2, 14.0]; // seconds — uneven on purpose')。

ループは維持率向上のレバー:最初と最後のフレームの一致+文の環状連結により、再視聴を新規視聴時間としてカウントさせる。

skills/short-form-video/SKILL.md
match the **last frame to the first** (same composition, position, color) so the cut is invisible
ここで行っていること:「ループ」を検証可能な技術要件(先頭・末尾フレームの同型性)へと変換し、最適な再視聴時間帯の経験値を提供します。

縦型セーフエリアをピクセル単位の共通領域として定義:中央 900×1400、上部約120px、下部約320px、右側約120pxはすべて空白とする。

skills/short-form-video/SKILL.md
| Universal safe (all platforms) | center **900×1400** | anything critical outside it |
ここで行っていること:各プラットフォームの UI 重複領域を1つのデザインフレームに換算します。reference には開発時専用の SafeZone オーバーレイ(書き出し前に削除)も用意されています。

能力境界の明記:字幕アニメーションは本スキルでは実装せず、caption-animation に委譲する。

skills/short-form-video/SKILL.md
**Do not re-implement caption animation here** — use the `caption-animation` skill for word-by-word timing, karaoke highlight, and styling
ここで行っていること:同一リポジトリ内の別スキルへの委譲。本スキルは「維持率タイムライン上の字幕位置とセーフエリア」のみを担当します。

3つの項目に特化した検証ループ:hook が一目で理解できるか、テンポに平坦な中盤がないか、ループの継ぎ目が不可視であるか。

skills/short-form-video/SKILL.md
LOOP seam: compare f-hook(frame 0) vs f-end(last frame) — same composition/position/color for an invisible loop cut
ここで行っていること:「継ぎ目」のように抜き取り検査が難しい要素を2枚の画像比較に落とし込みます。量産前には必ず1つのトピックを先行検証させます。

2コア機能

01hook 構文ライブラリ(オープンループ/直接的約束/ツイスト/否定の4タイプ+テンプレート文)および「第1フレームに文字表示、初頭フレームが最良のビジュアル」という絶対制約
02フレーム駆動型のカットスケジューラ(uneven cuts)と最も低コストなパターンインタラプト「punch-in」
03維持率アークとビート配分(hook/setup/body/payoff の秒単位配分)、および 60秒動画向け body 拡張
04維持率曲線のトラブルシューティング表:曲線の症状(0:00 の急落、中盤の落ち込み、終盤の再浮上、局所スパイク)からの改善策逆引き
059:16 セーフエリア実装:中央 900×1400 のデザインフレーム + 開発用 SafeZone オーバーレイ(書き出し前削除)
06シームレスループ:先頭・末尾フレームの同型化 + 文の環状連結(payoff を frame 0 へ接続)
07テンプレート × トピックのバッチ量産:1つの Short コンポーネント × 複数の topics/*.json(hook/beats/loopText)
08納品・検証ループ:hook / 中盤 / 末尾の3枚の静止画 + 先頭・末尾比較による継ぎ目判定 + probe-mp4 による縦型仕様アサーション

3外部依存関係

KindDependency / Endpoint
clinpx remotion still / render / compositions
cliscripts/contact-sheet.sh + scripts/probe-mp4.sh(仓库根共享验证工具箱,SKILL.md 明列)
packageffmpeg / ffprobe(系统依赖)
cli跨 skill 委派:caption-animation(同仓另一个 skill,负责词级字幕动画)

4推奨統制措置と判定根拠

安全運用のための推奨統制措置
Agent 向け
段階的・都度認可、サンドボックス推奨
管理者向け
承認フロー、ロールバック可能、全履歴監査
判定根拠(ファイルパスと抜粋)
  • scripts/: ローカルスクリプトまたはコマンドの実行: (SKILL.md に明記された検証ループ)`npx remotion still Short out/f-{hook,mid,end}.png --fram
  • 网络端点: 外部ネットワークアクセスの宣言: `npx remotion …`:初回実行時に npm 公式ルート経由でパッケージと CLI を取得(registry.npmjs.org、ドメインは npm に依存しソース内にハードコードなし)
  • 本地工作目录: ファイル読み書きおよび成果物の出力: エージェントが本スキルに従って構築する Remotion プロジェクトおよび out/short.mp4、out/demo.gif
監査ノート: 。3段階の自己証明:① 判定対象=skills/short-form-video/(find コマンドにより SKILL.md、README.md、references/retention-pacing.md の3つの .md ファイルのみであることを確認、スクリプトおよびアセットは皆無);② ディレクトリ自体の内部動作=ローカル書き込み(Remotion プロジェクト、out/*.mp4、静止画、sheet.png)+ローカル CLI(`npx remotion`;ffmpeg/ffprobe はリポジトリルート scripts/ 経由)、skills/ 全域で `process.env` / `api[_-]?key` / `token` / `cookie` / `https?://` のヒット数はすべて 0;③ 唯一のネットワーク面は npm 公式ルート経由のパッケージ取得(remotion / @remotion/*)であり、既存の青枠事例(hyperframes、general-video、motion-background)と同一基準。黄枠への引き上げなし:固定公開エンドポイントへの問い合わせなし、スクレイピングなし、公式 CLI による update/check なし。橙枠への引き上げなし:認証情報/環境変数の読み取りなし、メディア素材の外部送信なし(音声/画像の上り送信なし)。赤枠非該当:TLS ダウングレードなし、サンドボックス解除なし、対自動化回避なし、任意コード実行面なし。別途記録事項(判定変更なし):本スキルは同リポジトリ内の caption-animation への明示的な委譲を含みます(スキル間委譲は Batch 4 細則1 に基づき引き上げ波及なし);本文で引用されているプラットフォーム維持率の統計数値には出典がありません(verification.second_pass の unlocatable 項目を参照)。

5二重目の独立検証

  • [discrepancy] 「hook 必须在第 1 帧上屏」与验证示例取 frame=10 是否矛盾(第一遍未察觉) — SKILL.md 的硬规则写 "the hook line is **on-screen as text by frame 1**",收尾清单第 2 条也写 "on-screen text + strongest visual up front";但验证示例给的是 `npx remotion still Short out/f-hook.png --frame=10 --props=…`,并注释「~first 3s reads instantly」。10 帧 @30fps ≈ 0.33s,若 hook 文案在 frame 0 才起动画、到 frame 10 才稳定,则两者可并存(示例取的是「稳定可读帧」而非「首帧」);但文档未说明这一区别,读者可能据此把 hook 动画起始推到第 10 帧,直接违反 frame 1 规则。属对 pin commit 有效的表述出入,非虚假声明。
  • [unlocatable] 留存统计数字是否有出处(87% / 70% / 平台阈值 / 58% vs 41%) — SKILL.md 写 "~87% decide to stay or swipe inside 3 seconds"、"the threshold for distribution sits near **70%+ average view-through** (Shorts ~73%, TikTok ~78%, Reels ~65%)"、"videos with an interrupt roughly every 4s hold ~58% vs ~41% for a static talking head"。仓库内无引用来源、无数据集、无计算脚本;本次为只读侦查且不运行分析,故不验证这些数值,仅记为文档声明(reference 另有 "Target ≥70% average view-through." 同源)。结论中不把它们当作已核事实。
  • [ok] 安全区数值在 SKILL.md 与 reference 实现里是否一致 — SKILL.md 表:center 900×1400、top ~120px、bottom ~320px、right ~120px;reference §2 SafeZone 组件逐值对应(`left: 90, top: 260, width: 900, height: 1400` 的框,加高 120 的顶部红带、高 320 的底部红带、宽 120 的右栏),§5 表首行也是「Universal (use this) | ~120px | ~320px | ~120px | center 900×1400 holds on all」。两侧完全自洽。
  • [ok] 「不留平坦中段」是否有可执行机制,而非只靠审美 — reference §1 给出帧驱动的 `useShot(cuts)` 调度器与刻意参差的 cuts 数组(`cuts = [0, 1.2, 3.0, 5.4, 8.0, 11.2, 14.0]; // seconds — uneven on purpose`),并配 PunchIn(在切点 snap 到 1.1–1.12 倍);§4 排障表把「中段持平后骤降」映射到「add interrupts; tighten cut spacing to 2–4s」。机制存在且与主张对应。
  • [ok] 跨 skill 委派是否指向真实存在的 skill(防悬空指引) — SKILL.md 指名 `caption-animation`;该 skill 确实位于同一仓库(skills/caption-animation/SKILL.md,本批次同批侦查)。委派目标存在,且其描述覆盖 word-by-word timing 与 active-word highlight,与本 skill 的说法一致。
  • [ok] 跨包共享脚本与 Packaged helper 引用是否真实(防悬空引用) — SKILL.md 只点名 scripts/contact-sheet.sh 与 scripts/probe-mp4.sh,两者在仓库根存在且可执行,三仓库逐字节相同(md5 b7dcc28034c9bf8fda5d48683e54d8b5 / 167b7977c50f492014e1a6fef8c9ed12)。seek-shot.sh 未被本 skill 点名。

6結論

  • 「ショート動画」を維持率工学として再定義:作業対象は維持率曲線であり、hook はそのゲートウェイである——すべての技法がこの世界観から論理的に導かれ、一貫性がある
  • 過剰な詰め込みを排除する3つの規律(1動画1つの payoff、無駄な間をゼロに、hook と payoff に全力を注ぐ)により、中盤の視聴離脱を根本から防止
  • テンポとセーフエリアの定量化:約2〜4秒ごとのインタラプト、不均等な間隔、中央 900×1400 のデザイン枠(プラットフォーム別一覧表および開発専用オーバーレイ付き)
  • 明確な能力境界:字幕アニメーションは caption-animation に任せ、自身はタイムライン配置とセーフエリアのみに専念して重複実装やスタイルのブレを防止
  • 最も破綻しやすい3点(初頭フレームの可読性、平坦な中盤の排除、ループ継ぎ目の不可視化)に絞った検収と、判定しやすい比較手法(先頭・末尾フレームの同型性判定)
  • 最適な用途: 適しているケース:Reels/TikTok/Shorts を体系的に量産したいクリエイターや小規模チーム——特に「テンプレート × 複数トピック」で一括生成し、テンポの前にまず hook を磨き上げたいプロジェクト。また、維持率編集の診断マニュアル(曲線の症状から修正法を逆引きする用途)としても最適。「3枚の静止画確認 + 先頭・末尾フレームの比較」という目視検収フローを受け入れられるユーザーに適しています。
    不向きな用途: 適していないケース:① 長尺・中尺動画(本スキルは 7–60秒の縦型動画に特化);② 複雑なナレーション対話構成、インタビュー編集、物語調のストーリーテリングを要するプロジェクト;③ 映像美や映画的カメラワークを追求するブランドフィルム(映像クオリティより維持率を最優先するトレードオフのため);④ 静止画の目視確認を受け入れず、全自動 QA のみを求めるパイプライン;⑤ プラットフォームの実データ解析と直結したループを求めるチーム——本スキルは手法を提供するのみで、プラットフォーム API には一切接続しません。曲線データは各管理画面から手動でエクスポートする必要があります。
    Install Agent-Ready
    ① Verified Mirror 2026-09-28
    Option A · Direct DownloadDownload short-form-video.tar.gz
    sha256: 976ced5900c4ae4f…
    Option B · Copy Guide for Agent
    install.json
    Agent はこの JSON ガイドから自動的にダウンロードして検証します。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 2a775336b5.