publish-to-social について
publish-to-social は、完成した agent-media 動画を接続済みの TikTok、Instagram、X に投稿するスキルです。REST、コマンドライン、MCPから利用でき、接続には人による認証が必要です。
主な機能
- 01対応するソーシャルチャンネルの接続
- 02接続済みチャンネルの一覧と解除
- 03動画の即時公開
- 04動画投稿の予約
活用シーン
- 01完成した agent-media 動画の公開
- 02選択したチャンネルへの投稿予約
- 03公開前の接続済みチャンネル確認
MCP 対応
チャンネル接続、一覧表示、動画公開のMCPツールを提供します。接続時にOAuth URLを返し、人が認証を行います。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ gitroomhq/ agent-media --skill publish-to-socialインストール後、Claude Code で/publish-to-socialを入力して読み込まれたか確認します。
詳細
SNS への公開
完成した agent-media の動画(動画スキルのいずれかで生成された R2 の video_url)を、ユーザーが接続した SNS チャンネル(TikTok、Instagram、X)に投稿します。REST、CLI(agent-media social ...)、MCP ツール(social_channels/social_connect/social_publish)の 3 つの方法で利用できます。すべての呼び出しで、ユーザーの Authorization: Bearer ma_... トークンを使用して https://api.agent-media.ai に接続します。
1. チャンネルを接続する(初回のみ。人間による操作が必要です)
GET /v1/social/providers -> connectable networks: tiktok, instagram, instagram-standalone, x
POST /v1/social/connect { provider } -> { url } # the user opens this OAuth url and authorizes
GET /v1/social/channels -> { channels: [{ id, name, provider, profile, picture }] }
DELETE /v1/social/channels/:channelId -> disconnect
接続手順では OAuth URL が返されます。人間がこの URL を開いて認証する必要があります。エージェント自身で OAuth を完了することはできません。認証が完了すると、チャンネルが /v1/social/channels に表示されます。投稿時には、その id を渡します。
CLI:agent-media social providers · agent-media social connect x · agent-media social channels。
MCP:social_connect { provider }(ユーザー向けの URL を返します) · social_channels。
2. 動画を投稿する
curl -X POST https://api.agent-media.ai/v1/social/publish \
-H "Authorization: Bearer ma_..." -H "Content-Type: application/json" \
-d '{ "video_url": "https://pub-...r2.dev/generation-outputs/<user>/<job>/...mp4",
"channel_ids": ["<channel-id-from-/channels>"],
"caption": "made with agent-media",
"type": "now" }' # or "type":"schedule" + "date":"2026-06-01T10:00:00.000Z"
CLI:agent-media social publish --video <url> --channels <id,id> --caption "..."(予約投稿する場合は --at <iso> を追加します)。
MCP:social_publish { video_url, channel_ids, caption, type }。
video_url は agent-media の R2 URL(動画スキルの出力)である必要があります。agent-media が投稿先のプロバイダー用に再ホストします。channel_ids は /v1/social/channels から取得します。ネットワークごとの要件(X の返信設定など)はサーバー側で設定されるため、送信する必要はありません。
戻り値 { success: true, media_id, post_ids: ["..."] }。実際に投稿が作成されたのは、post_ids が空でない場合のみです。post_ids が空の場合は成功ではなく失敗として扱ってください。
一般的な手順
generate_videoで動画を生成し、final_output.video_urlを取得します。- ユーザーがチャンネルを接続していない場合は、接続手順(手順 1)を案内します。ユーザーに代わって OAuth を完了することはできません。
- 選択した
channel_idsにそのvideo_urlを投稿し、post_idsが返されたことを確認します。
注:SNS 操作では共有のレート制限枠を使用します。ポーリングは行わず、接続は一度だけ行い、必要に応じて投稿してください。