claude/skills/remotion-twitter-post/SKILL.md
Remotionで動画を作成し、X(Twitter)に投稿する完全ワークフロー。プロジェクト作成→レンダリング→Chrome拡張でX投稿までを自動化。動画投稿時やRemotionプロジェクト作成時に使用。
npx skillsauth add kazuph/dotfiles remotion-twitter-postInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| 項目 | 無料アカウント | Premium | |------|---------------|---------| | 長さ | 最大140秒 | 最大60分 | | サイズ | 最大512MB | 最大8GB | | 形式 | MP4 (H.264) | MP4 (H.264) | | 解像度 | 1920x1080推奨 | 1920x1080推奨 |
推奨設定(無料アカウント向け):
cd /tmp && mkdir my-video && cd my-video
npm init -y
npm install remotion @remotion/cli react react-dom
src/index.ts:
import { registerRoot } from "remotion";
import { RemotionRoot } from "./Root";
registerRoot(RemotionRoot);
src/Root.tsx:
import { Composition } from "remotion";
import { MyVideo } from "./MyVideo";
export const RemotionRoot: React.FC = () => (
<Composition
id="MyVideo"
component={MyVideo}
durationInFrames={1800} // 60秒 at 30fps
fps={30}
width={1920}
height={1080}
/>
);
src/MyVideo.tsx:
import { AbsoluteFill, useCurrentFrame, interpolate } from "remotion";
export const MyVideo: React.FC = () => {
const frame = useCurrentFrame();
const opacity = interpolate(frame, [0, 30], [0, 1], { extrapolateRight: "clamp" });
return (
<AbsoluteFill style={{ backgroundColor: "#0a0a1a", justifyContent: "center", alignItems: "center" }}>
<div style={{ color: "#fff", fontSize: 80, opacity }}>Hello World</div>
</AbsoluteFill>
);
};
mkdir -p out
npx remotion render src/index.ts MyVideo out/video.mp4 --codec h264
1. ToolSearch: select:mcp__claude-in-chrome__tabs_context_mcp
2. tabs_context_mcp で現在のタブ取得
3. navigate で https://x.com/home へ移動
4. read_page (filter: interactive) でフォーム要素取得
5. computer (left_click, ref: textbox要素) でフォーカス
6. computer (type) でテキスト入力
7. クリップボードに動画/画像をコピー:
osascript -e 'set the clipboard to (read (POSIX file "/path/to/file.mp4") as «class furl»)'
または画像: osascript -e 'set the clipboard to (read (POSIX file "/path/to/image.png") as «class PNGf»)'
8. computer (key: cmd+v) でペースト
9. screenshot で確認
const frame = useCurrentFrame();
const { fps } = useVideoConfig();
const opacity = interpolate(frame, [0, fps], [0, 1], { extrapolateRight: "clamp" });
import { spring } from "remotion";
const scale = spring({ frame, fps, config: { damping: 15 } });
import { Sequence } from "remotion";
<Sequence from={0} durationInFrames={150}>
<Scene1 />
</Sequence>
<Sequence from={150} durationInFrames={150}>
<Scene2 />
</Sequence>
1. ToolSearch: select:mcp__claude-in-chrome__tabs_context_mcp
2. ToolSearch: select:mcp__claude-in-chrome__navigate
3. ToolSearch: select:mcp__claude-in-chrome__read_page
4. ToolSearch: select:mcp__claude-in-chrome__computer
# タブ情報取得
tabs_context_mcp(createIfEmpty: true)
# Xホームへ移動
navigate(url: "https://x.com/home", tabId: <取得したtabId>)
# インタラクティブ要素取得
read_page(tabId: <tabId>, filter: "interactive", depth: 10)
# textbox "ポスト本文" の ref を探す(例: ref_27)
# クリックしてフォーカス
computer(action: "left_click", tabId: <tabId>, ref: "ref_XX")
# テキスト入力
computer(action: "type", tabId: <tabId>, text: "投稿内容")
# 画像/動画ペースト(事前にクリップボードにコピー)
computer(action: "key", tabId: <tabId>, text: "cmd+v")
# 確認スクショ
computer(action: "screenshot", tabId: <tabId>)
tools
X (Twitter) API read-only CLI. Bookmarks retrieval, tweet search, engagement analytics (likes/RT aggregation), mentions, user lookup. Use when: reading X bookmarks, searching tweets, aggregating likes/retweets, checking mentions, looking up users. Triggers: bookmark, bookmarks, X search, Twitter search, likes count, RT count, engagement, tweet analytics.
testing
単体テスト方針の要約。Kiro流で使うときは本文を必ず参照・展開する。
tools
Send prompts to other AI CLIs (Codex, Claude Code) running in sibling tmux panes and receive results back. Use this skill when the user asks to send a question or task to Codex or another Claude Code instance in a tmux pane. Handles pane discovery, CLI startup if needed, prompt delivery with proper Enter timing, delivery verification, and result return via tmux send-keys.
data-ai
TAKT ピースエンジン。Agent Team を使ったマルチエージェントオーケストレーション。ピースYAMLワークフローに従ってマルチエージェントを実行する。