ワンクリックで
ars-analytics
Query YouTube analytics through npx ars analytics fetch and produce a concise channel report for Claude Code.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Query YouTube analytics through npx ars analytics fetch and produce a concise channel report for Claude Code.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Run a single-episode coherence checklist after Studio review edits and before prepare/publish; diagnose or patch thesis drift, step seams, stale arguments, visual rhythm, and publish readiness.
Apply Studio intents back into the episode source and validate the result.
Generate 3 YouTube metadata candidates (title/description/tags) grounded in episode context, let the user pick one, then mark the artifact ready.
Usage guide for generating MiniMax TTS audio and subtitles for an episode.
Validate repo bootstrap readiness, ARS config, providers, and environment readiness with npx ars doctor.
Create a new episode scaffold for a series with npx ars episode create.
| name | ars:analytics |
| description | Query YouTube analytics through npx ars analytics fetch and produce a concise channel report for Claude Code. |
| argument-hint | [--days N] [--fresh] |
| model | claude-sonnet-4-6 |
| effort | medium |
Run npx ars analytics fetch to pull a JSON snapshot, then turn it into a narrative report. Do NOT hand-roll fetch calls against the YouTube API — the CLI already handles auth, caching, and data-delay windowing.
npx ars analytics fetch [--days N] [--fresh] [--top N]
--days N to change it.--top is 10 video rows. Raise it only if the user asks.--fresh only when the user explicitly wants to bypass the local 24h cache.The command prints a single JSON object to stdout with this shape:
{
"window": { "days", "startDate", "endDate" },
"channel": { "channelId", "title", "subscriberCount", "videoCount", "viewCount" },
"summary": { "views", "estimatedMinutesWatched", "averageViewDuration", "subscribersGained", "subscribersLost", "likes", "comments", "shares" },
"daily": [{ "day", "views", "estimatedMinutesWatched", "subscribersGained" }, ...],
"topVideos": [{ "videoId", "title?", "publishedAt?", "views", "estimatedMinutesWatched", "averageViewDuration", "averageViewPercentage" }, ...]
}
YOUTUBE_CLIENT_ID / YOUTUBE_CLIENT_SECRET / YOUTUBE_REFRESH_TOKEN to .env and stop.Use these sections, grounded in the snapshot:
window.startDate → window.endDate plus the lookback length in daysestimatedMinutesWatched to human-readable), subscriber delta (subscribersGained - subscribersLost)daily[] (bumps, drops, cadence gaps). Quote specific dates.topVideos[] with title, views, avg view duration, and a one-line take on why it likely workedaverageViewPercentage), overconcentration in a single video.ars/analytics/<YYYY-MM-DD>-<days>d.md using today's date./ars:reflect --days <same-window>.npx ars analytics fetch. Do not curl YouTube endpoints directly, do not node -e your own fetch script, do not search the repo for helper modules — the CLI subcommand is the contract.