ClaudeCodeでAfterEffectsスクリプトを自動生成する方法【JSX完全対応】

ClaudeCodeでAfterEffectsのJSXスクリプトを自動生成

AfterEffectsにはJavaScriptベースのスクリプト言語(ExtendScript / JSX)があり、これを使えば繰り返し作業を自動化できる。ただし、ExtendScriptを自分で書けるAEユーザーは少数派だ。

ClaudeCodeはこの問題を解消してくれる。「AfterEffectsでこういうことをしたい」と伝えるだけで、動くJSXスクリプトを生成してくれる。自分自身、ClaudeCodeを使い始めてからAEの自動化の幅が10倍以上になったと感じている。

ExtendScriptとは:AfterEffects自動化の基礎知識

ExtendScriptはAdobe製品用のJavaScript実装だ。AfterEffectsではJSXファイルをスクリプトとして実行することで、以下のような操作を自動化できる:

  • コンプ内の全テキストレイヤーを一括置換
  • 外部CSVからテキスト・色・画像を読み込んで適用
  • 指定したレイヤーのアニメーションをコピーして複数レイヤーに貼り付け
  • 書き出しキューに複数のコンプを追加して一括レンダリング

ClaudeCodeへの効果的な指示の出し方

ClaudeCodeにAEスクリプトを生成させるとき、漠然と「AEのスクリプトを書いて」では精度が低い。以下のテンプレートで依頼するとよい:

## 目的
AfterEffectsのコンポジション「[コンプ名]」内の
全テキストレイヤーの内容を外部JSONファイルから読み込んで置換する

## 環境
- After Effects 2025 (v25.x)
- ExtendScript / JSX
- JSONファイルのパス: /Users/turkey/Desktop/data.json

## JSONの構造
{ "layers": [ {"name": "Title", "text": "新しいタイトル"}, ... ] }

## 期待する動作
1. JSONを読み込む
2. 各オブジェクトの "name" と一致するレイヤーを検索
3. "text" の値でテキストを置換
4. 完了したレイヤー数をアラートで表示

目的・環境・データ構造・期待する動作の4点を明確にすると、ClaudeCodeが出力するコードの精度が大幅に上がる。

実際に使っているスクリプト例

スクリプト1:全テキストレイヤーを一括置換

// ClaudeCodeが生成したJSXスクリプト(簡略版)
var comp = app.project.activeItem;
var jsonPath = "/Users/turkey/Desktop/data.json";
var jsonFile = new File(jsonPath);
jsonFile.open("r");
var data = JSON.parse(jsonFile.read());
jsonFile.close();

app.beginUndoGroup("テキスト一括置換");
for (var i = 0; i < data.layers.length; i++) {
    var targetName = data.layers[i].name;
    var newText    = data.layers[i].text;
    for (var j = 1; j <= comp.numLayers; j++) {
        var layer = comp.layer(j);
        if (layer.name === targetName && layer instanceof TextLayer) {
            layer.property("Source Text").setValue(newText);
        }
    }
}
app.endUndoGroup();
alert("置換完了: " + data.layers.length + " レイヤー");

スクリプト2:レンダリングキューへの一括追加

// 全コンプをレンダリングキューに追加
var rq = app.project.renderQueue;
for (var i = 1; i <= app.project.numItems; i++) {
    var item = app.project.item(i);
    if (item instanceof CompItem && item.name.indexOf("RENDER_") === 0) {
        var rqItem = rq.items.add(item);
        rqItem.outputModule(1).file =
            new File("/output/" + item.name + ".mp4");
    }
}
alert("キュー追加完了: " + rq.numItems + " 件");

ClaudeCodeとExtendScriptの組み合わせで実現したこと

ブライダルテンプレートの運用で最も時間がかかっていたのが「クライアントごとのテキスト・写真の差し替え」だった。ClaudeCodeにJSXスクリプトを生成させ、Excelから自動読み込みする仕組みを作ったことで、1件あたり45分かかっていた作業が5分に短縮された。

注意点:ExtendScriptはレガシー環境

ExtendScriptは古い技術基盤(ES3ベース)のため、モダンなJavaScript(Promise・async/await・Arrow Function)は使えない。ClaudeCodeが出力するコードにこれらが含まれている場合は修正が必要だ。その点をプロンプトに明記しておくと安心だ:「ExtendScriptはES3ベースなのでモダンな構文は使わないこと」

まとめ

ClaudeCode×ExtendScriptの組み合わせは、AfterEffectsユーザーにとって最もリターンが高い自動化投資の1つだ。スクリプトが書けなくても、ClaudeCodeに指示を出す能力さえあれば、AEの繰り返し作業を劇的に削減できる。

あわせて読みたい

ツール導入で終わらない「本当のDX」を、一緒に作りませんか

AE→Lottie→Remotionの動画自動生成から、業務プロセス全体の自動化まで。
自分で作って動かしている仕組みを、あなたのビジネスにも実装します。

プロダクト・サービス一覧開発実績を見る
タイトルとURLをコピーしました