
Hermes Agent を活用した TikTok Slides コンテンツ制作の自動化ガイド(ステップバイステップ)
AI features
- Views
- 257K
- Likes
- 762
- Reposts
- 56
- Comments
- 30
- Bookmarks
- 2.4K
TL;DR
本ガイドでは、Hermes Agent を使用して TikTok Slides の制作を自動化する方法を解説します。フックの調査から画像のリサーチまでを網羅し、さらにドラフトモードを活用してボット検知を回避する手法を紹介します。
Reading the 日本語 translation
現在、TikTok はスライドショーの再生回数とエンゲージメントを大幅に向上させています。以下のチャンネルをご覧ください。




なぜこのスタックなのか
スライドショーは現在 TikTok で最もレバレッジの効くフォーマットです:
- アルゴリズムは依然として積極的にプッシュしている(安価なコンテンツ、TT 側の無限供給問題)
- 撮影不要、編集不要、顔出し不要
- フック駆動 → 1 日 50 個のフックを A/B テスト可能
- 下書きアップロードは直接公開 API に当たるほとんどのボット検出を回避
ボトルネックはアイデアではありませんでした。それは組み立てラインでした。フック → ニッチ → 画像ディレクション → 8 枚のスライド構成 → キャプション → スケジュール。これを手動で行うと 1 投稿あたり 20 分。30 アカウントだと、嫌になるフルタイムの仕事です。
Hermes Agent は適切なツールです。なぜなら、npm インストールして配線するフレームワークではなく、どこにでも置ける自律型 CLI エージェント(私の 5 ドルの Hetzner ボックス)であり、組み込みのスキル、cron、MCP、サブエージェント委任を備えているからです。パイプライン全体は、エージェントがロードするスキルと、スケジュールに従ってそれらを起動する cron ジョブだけです。キューインフラも、管理するワーカープールも必要ありません。
Step 1: Hermes Agent のインストール
VPS へのワンライナーインストール:
1# (install command)
プロバイダーを選択:
エージェント的なステージ(フック調査、画像ディレクション、キャプション)には Anthropic を OAuth(Max プラン)で使い、大量のポーリングには安価な OpenRouter フォールバックを使用しています。Nous Portal、OpenAI Codex、DeepSeek、Z.AI、Kimi も配線可能で、hermes モデルがすべてを説明します。
動作確認:
1# (verify command)
応答があれば、最も難しい部分はクリアです。完全なクイックスタートは https://hermes-agent.nousresearch.com/docs/getting-started/quickstart にあります。
次に、ゲートウェイを systemd サービスとしてインストールし、ログインしていなくても cron ジョブが実際に実行されるようにします:
1# (systemd install)
これは、60 秒ごとにスケジューラを tick し、期限が来たジョブを新しいエージェントセッションで実行するデーモンです。
Step 2: メンタルモデル パイプライン = スキル + cron、ワーカーではない
ほとんどの自動化チュートリアルはキューとワーカーを求めます。Hermes はこれを逆転させます。作業単位はスキル(~/.hermes/skills/ 内のマークダウンファイル)であり、トリガーは 1 つ以上のスキルをロードして実行する cron ジョブです。
TikTok パイプラインのマッピングは次のとおりです:

各スキルは、エージェントがオンデマンドでロードするマークダウンファイルです。cron ジョブは context_from を介してそれらを連鎖させます。Hermes スケジューラは各ジョブを新しい独立したセッションで実行するため、アカウント間で状態が破損することはありません。
Step 3: スキルの作成
スキルは ~/.hermes/skills/<category>/<skill-name>/SKILL.md にあります。エージェントは skill_manage を使って自分で作成することも、手動で作成することもできます。私は両方を組み合わせています。構造をドラフトし、Hermes に実行させた後に改良させます。
Hook Researcher スキル
1~/.hermes/skills/tiktok/hook-researcher/SKILL.md:
Image Source Router スキル
1~/.hermes/skills/tiktok/source-router/SKILL.md:
Pinterest Scraper スキル
1~/.hermes/skills/tiktok/pinterest-scraper/SKILL.md:
~/.hermes/skills/tiktok/pinterest-scraper/scripts/scrape.py は通常の Python スクリプトです。エージェントは execute_code またはターミナルを介してそれを呼び出し、stdout を解析します。上記で宣言された PROXY_POOL_URL は自動的に execute_code サンドボックスに渡されます。これは Hermes の機能で、多くの環境変数の配管を節約してくれました。
Slide Compositor の no-agent モード
このステージは完全に決定論的です。LLM は不要です。Hermes にはまさにこのための no_agent モードがあります:
1~/.hermes/scripts/compose-slides.py:
次に、それを no_agent cron ジョブとしてスケジュールします。wakeAgent は決して起動せず、このステップでは LLM コストはかかりません。
Publisher スキル
1~/.hermes/skills/tiktok/publisher/SKILL.md:
Step 4: シャドウバンキラー – 常に下書きモード
これはほとんどのチュートリアルが省略する部分であり、新しいアカウントが死滅する最大の理由です。
アカウントが 30 日未満の場合は、常に下書きとして投稿してください。例外はありません。
TikTok の新しいアカウントは試用期間中です。アルゴリズムは次のようにプロファイリングします:
- Content Posting API を介した公開 → ボットリスクスコア +1
- 公開 IP がアカウントの通常のデバイス IP と一致しない → +1
- 不自然に規則的な間隔 → +1
- デバイスキャプチャと比較してメタデータが欠落または不一致 → +1
新しいアカウントでこれらのうち 2〜3 つが重なると、静かにシャドウバンされます。通知はありません。動画は永遠に 50〜200 再生で止まります。自分のコンテンツが悪いと思うでしょう。違います。アカウントが死んでいるのです。
上記の Publisher スキルは、30 日未満 / 20 投稿未満のアカウントに対して下書きモードをハードコードしています。Postiz はそれを下書きとしてアップロードし、私の iPhone ファームが(WebDriverAgent 自動化を介して)下書きを取得し、実際のデバイスから実際の IP で公開を実行します。TikTok は、既知のデバイスからの人間による公開として認識します。クリーンです。
ウォームアッププロトコル:
- 1〜7 日目:アカウントはスクロール、いいね、フォロー以外は何もしない
- 8〜14 日目:1 日 1 件の下書きを投稿、下書き作成から 2〜4 時間後にデバイスから公開
- 15〜30 日目:1 日 2〜3 件の下書きに増加、公開時間を ±90 分以内でランダム化
- 30 日目以降:フルパイプラインのペース、引き続き下書きモード
Hermes cron + Postiz Cloud + iPhone ファームデバイス公開 = TikTok の分類器にとって有機的な行動と区別がつかない。
Step 5: cron + context_from ですべてを連鎖させる
これが Hermes の cron システムの魔法です。各パイプラインステージは独立した cron ジョブです。ジョブ N は context_from を介してジョブ N-1 の最新の出力を読み取ります。チェーンは私が何も調整しなくてもエンドツーエンドで実行されます。
Hermes との 1 回のチャットセッションからチェーンを作成します:
1hermes --tui23> アカウント acc_42、ニッチ=fitness の TikTok パイプラインを設定する必要があります。4> パイプラインを毎日 09:00 UTC に実行するようにスケジュールしてください。5> チェーン:フック調査 → ソースルーティング → Pinterest スクレイピング → 構成 → キャプション → 公開。6> 各ステージは対応するスキルを使用し、前のステージからコンテキストを受け取る必要があります。
Hermes は内部で cronjob ツールを使用してチェーンを作成します。同等の直接呼び出しは次のようになります(Hermes が代わりに実行します):
1# (direct calls)
いくつかの重要なポイント:
- context_from が出力を連鎖させます。Hermes は各上流ジョブの最新の保存済み出力を ~/.hermes/cron/output/{job_id}/ から読み取り、次のジョブのプロンプトにコンテキストとして前置します。データベースもキューもグルーコードも不要です。
- workdir はプロジェクトディレクトリ内でジョブを実行します。つまり、AGENTS.md、.cursorrules、およびローカルコンテキストファイルが自動的にロードされます。アカウント設定やプロンプトのオーバーライドをプロジェクトリポジトリに保存する場合に便利です。
- コンポジターで no_agent=True。純粋な決定論的 Sharp/PIL 作業。LLM ターンにお金を払う理由はありません。スクリプトの stdout がジョブの出力となり、通常通り次のステージに連鎖します。
- deliver="telegram" は公開が完了したときに私に ping を送信します。高価値アカウントの最終ステージでは "all" を使用して、接続されているすべてのチャンネルで成功 ping を受け取ります。
Step 6: ステージごとのツールセット制御(コスト削減)
デフォルトでは、cron ジョブは hermes tools を介して cron プラットフォーム用に設定したツールセットを継承します。しかし、高頻度ステージのコスト管理のために、ジョブごとにツールセットをロックします:
1# (toolset locking)
フック調査にはブラウザ、ターミナル、委任ツールセットは不要です。これらは LLM 呼び出しごとにツールスキーマプロンプトを肥大化させます。フックジョブを ["file"] にロックすることで、フック生成トークンが約 40% 削減されました。30 アカウント × 1 投稿/日 × 30 日 = 実際のお金です。
Pinterest スクレイプジョブはスクリプトを呼び出すために ["terminal", "file"] が必要です。no_agent モードのコンポジターはツールセットをロードしません(エージェントは実行されません)。パブリッシャーは postiz-cli のために ["terminal", "file"] が必要です。
Step 7: 変更がない場合はエージェントをスキップ
Hermes には、毎日のフックジョブに最適な事前チェックスクリプトパターンがあります。昨日からニッチのパフォーマンスデータが変わっていなければ、新しいフックを生成する理由はありません。昨日のトップ 3 は依然としてトップ 3 です。
1# (precheck script)
cron ジョブを作成するときに script パラメータを介してアタッチします。エージェントはパフォーマンスデータが実際に変更された場合にのみ起動します。新しいデータを手動でログに記録していない通常の日は、これにより LLM が完全にスキップされます。無料です。
Step 8: Postiz のセットアップ(Cloud またはセルフホスト)+ 公式 Hermes スキル
Docker で Postiz をセルフホストしてみましたが、2 か月間で機能構築よりもコンテナの修正に多くの時間を費やしました。OAuth トークンのリフレッシュ失敗、メディアディスクの満杯、スケジュールワーカーの静かな停止。月額 29 ドルの Postiz Cloud で、週約 5 時間のデバッグ時間を取り戻しました。
60 秒のセットアップ:
1# (setup commands)
Postiz スキルは、この SKILL.md を通じて Hermes に自身を公開します(インストール後は ~/.hermes/skills/postiz-agent/SKILL.md にあります):
1# Postiz Agent スキル23このスキルは、Hermes に Postiz ソーシャルメディアスケジューリング機能を提供します。45## 利用可能なツール67- postiz: Postiz 操作用 CLI ツール89## 使用方法1011インストール後、postiz バイナリが PATH で利用可能になります。1213## 設定1415POSTIZ_API_KEY 環境変数を設定してください。
Hermes はセッション開始時にこれを読み取り、postiz バイナリをツールとして登録します。これで、このスキルをロードする cron ジョブはそれを呼び出せるようになります。
知っておくべき API の基本

2 層のモードシステムは人々を混乱させます。Postiz には独自の type があります。"draft" は Postiz の UI 内に留まり、どこにも送信されない投稿用です。それは私たちが望むものではありません。私たちが望むのは、content_posting_method: "UPLOAD" を指定した type: "schedule" です。Postiz は投稿をスケジュールし、指定された時間に TikTok にプッシュしますが、TikTok 側の下書きとしてアカウントの受信箱に届き、iPhone ファームが実際のデバイスから公開します。
間違った組み合わせ = 間違った結果。最初に 1 つのアカウントでテストしてください。
コンプライアンス上の理由がある場合、またはそれを正当化するボリュームで投稿している場合のみセルフホストしてください。Cloud には実際のコストがあります(キーあたり 30 req/hr の制限)が、セルフホストはあなたの時間を消費します。
苦労して学んだこと
最初のフックを信頼してはいけません。2 週間、フックアーキタイプ #1 を連射するパイプラインを実行しました。フラットでした。ニッチごとに 3 つのアーキタイプを A/B テストし、TikTok の視聴回数から読み取る毎日の評価ループに切り替えました → 死んだアーキタイプを排除し、勝者に倍賭けしました。CTR は 1 週間以内に跳ね上がりました。
本物のニッチでは Pinterest が AI に勝ります。フィットネストランスフォーメーションスライド用の画像生成プロンプトの最適化に 3 か月費やしました。その後、Pinterest からスクレイピングした同等品と 50/50 でテストしました。Pinterest のスライドは保存数が 2.3 倍でした。実際の写真は効果が違います。修正:ニッチごとにルーティング。
新しいアカウントでは下書きモードは譲れません。これを受け入れるまでに 4 つのアカウントを失いました。新しいアカウントでの直接公開 = 最初の 1 週間以内に静かなシャドウバン。死んだアカウントで 2 か月分のコンテンツを無駄にするまで気づきません。
リソース
- Hermes Agent: https://hermes-agent.nousresearch.com/
- Postiz: https://postiz.com/
頑張ってください 💪


