# agricidaniel/claude-youtube architecture

> Architecture diagram of the GitHub repository agricidaniel/claude-youtube, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/agricidaniel/claude-youtube
- Repository: https://github.com/agricidaniel/claude-youtube

## Overview

claude-youtube is a Claude Code skill that turns creator requests into channel-specific YouTube advice and production packages. The main workflow routes a request through context gathering and channel-type detection, then runs the relevant sub-skill and applies quality gates before returning structured output. Separate branches cover channel health and analytics, research and planning, and video packaging and repurposing. The README documents reference guides, templates, and optional data integrations; sampled Python confirms the API, transcript, authentication, and quota behavior, but not which sub-skills invoke each script.

Main entry points: [`skills/claude-youtube/SKILL.md`](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/SKILL.md) (Skill orchestrator), [`skills/claude-youtube/references`](https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/references) (Guides and benchmarks), [`skills/claude-youtube/execution`](https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/execution) (YouTube data scripts), [`skills/claude-youtube/sub-skills/competitor.md`](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/competitor.md) (Competitor research)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_coordination["Skill coordination"]
  node_orchestrator["Skill orchestrator<br/>[SKILL.md]"]
  node_references["Guides and benchmarks"]
  node_templates["Channel templates"]
end

subgraph group_channel["Channel insights"]
  node_audit["Channel audit<br/>[audit.md]"]
  node_analyze["Analytics analysis<br/>[analyze.md]"]
  node_execution["YouTube data scripts"]
  node_channel_fetch["Channel data fetch"]
  node_analytics_fetch["Private analytics fetch"]
  node_auth["YouTube authentication<br/>[youtube_auth.py]"]
  node_quota[("Quota tracker<br/>[quota_tracker.py]")]
end

subgraph group_planning["Research and planning"]
  node_strategy["Channel strategy<br/>[strategy.md]"]
  node_calendar["Content calendar<br/>[calendar.md]"]
  node_competitor["Competitor research<br/>[competitor.md]"]
  node_ideate["Video ideation<br/>[ideate.md]"]
  node_monetize["Monetization plan<br/>[monetize.md]"]
  node_competitor_fetch["Competitor video search"]
end

subgraph group_production["Video production"]
  node_seo["Video SEO<br/>[seo.md]"]
  node_script["Script writing<br/>[script.md]"]
  node_hook["Hook writing<br/>[hook.md]"]
  node_thumbnail["Thumbnail brief<br/>[thumbnail.md]"]
  node_shorts["Shorts package<br/>[shorts.md]"]
  node_metadata["Upload metadata<br/>[metadata.md]"]
  node_repurpose["Content repurposing<br/>[repurpose.md]"]
  node_transcript["Transcript fetch"]
end

node_creator(("Creator"))
node_youtube{{"YouTube APIs"}}
node_ytdlp{{"yt-dlp"}}
node_dataforseo{{"DataForSEO MCP"}}
node_websearch{{"WebSearch"}}
node_nanobanana{{"NanoBanana MCP"}}

node_creator -->|"submits request"| node_orchestrator
node_orchestrator -->|"routes request"| node_audit
node_orchestrator -->|"routes request"| node_analyze
node_orchestrator -->|"routes request"| node_strategy
node_orchestrator -->|"routes request"| node_calendar
node_orchestrator -->|"routes request"| node_competitor
node_orchestrator -->|"routes request"| node_ideate
node_orchestrator -->|"routes request"| node_seo
node_orchestrator -->|"routes request"| node_script
node_orchestrator -->|"routes request"| node_hook
node_orchestrator -->|"routes request"| node_thumbnail
node_orchestrator -->|"routes request"| node_shorts
node_orchestrator -->|"routes request"| node_metadata
node_orchestrator -->|"routes request"| node_repurpose
node_orchestrator -->|"routes request"| node_monetize
node_orchestrator -->|"loads guidance"| node_references
node_orchestrator -->|"selects template"| node_templates
node_audit -->|"uses benchmarks"| node_references
node_analyze -->|"uses benchmarks"| node_references
node_strategy -->|"uses channel type"| node_templates
node_strategy -->|"uses guidance"| node_references
node_calendar -->|"uses guidance"| node_references
node_competitor -->|"uses guidance"| node_references
node_ideate -->|"uses guidance"| node_references
node_seo -->|"uses guidance"| node_references
node_script -->|"uses guidance"| node_references
node_hook -->|"uses guidance"| node_references
node_thumbnail -->|"uses guidance"| node_references
node_shorts -->|"uses guidance"| node_references
node_metadata -->|"uses guidance"| node_references
node_repurpose -->|"uses guidance"| node_references
node_monetize -->|"uses guidance"| node_references
node_audit -.->|"may use data"| node_execution
node_analyze -.->|"may use data"| node_execution
node_competitor -.->|"may fetch videos"| node_competitor_fetch
node_thumbnail -.->|"generates images"| node_nanobanana
node_competitor -.->|"researches keywords"| node_dataforseo
node_ideate -.->|"researches keywords"| node_dataforseo
node_seo -.->|"researches keywords"| node_dataforseo
node_ideate -.->|"fallback research"| node_websearch
node_seo -.->|"fallback research"| node_websearch
node_execution -->|"includes"| node_channel_fetch
node_execution -->|"includes"| node_analytics_fetch
node_execution -->|"includes"| node_transcript
node_execution -->|"includes"| node_competitor_fetch
node_channel_fetch -->|"builds API service"| node_auth
node_analytics_fetch -->|"builds OAuth service"| node_auth
node_channel_fetch -->|"checks and records"| node_quota

click node_orchestrator "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/SKILL.md"
click node_references "https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/references"
click node_templates "https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/templates"
click node_audit "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/audit.md"
click node_analyze "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/analyze.md"
click node_strategy "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/strategy.md"
click node_calendar "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/calendar.md"
click node_competitor "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/competitor.md"
click node_ideate "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/ideate.md"
click node_seo "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/seo.md"
click node_script "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/script.md"
click node_hook "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/hook.md"
click node_thumbnail "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/thumbnail.md"
click node_shorts "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/shorts.md"
click node_metadata "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/metadata.md"
click node_repurpose "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/repurpose.md"
click node_monetize "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/monetize.md"
click node_execution "https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/execution"
click node_channel_fetch "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/fetch_channel_data.py"
click node_analytics_fetch "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/fetch_video_analytics.py"
click node_transcript "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/fetch_transcript.py"
click node_competitor_fetch "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/search_competitor_videos.py"
click node_auth "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/utils/youtube_auth.py"
click node_quota "https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/utils/quota_tracker.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_orchestrator,node_references,node_templates toneBlue
class node_audit,node_analyze,node_execution,node_channel_fetch,node_analytics_fetch,node_auth,node_quota toneAmber
class node_strategy,node_calendar,node_competitor,node_ideate,node_monetize,node_competitor_fetch,node_youtube toneMint
class node_seo,node_script,node_hook,node_thumbnail,node_shorts,node_metadata,node_repurpose,node_transcript toneRose
class node_creator,node_ytdlp,node_dataforseo,node_websearch,node_nanobanana toneIndigo
```

## Components

### Skill coordination

- [Skill orchestrator](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/SKILL.md): `skills/claude-youtube/SKILL.md`
- [Guides and benchmarks](https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/references): `skills/claude-youtube/references`
- [Channel templates](https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/templates): `skills/claude-youtube/templates`

### Channel insights

- [Channel audit](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/audit.md): `skills/claude-youtube/sub-skills/audit.md`
- [Analytics analysis](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/analyze.md): `skills/claude-youtube/sub-skills/analyze.md`
- [YouTube data scripts](https://github.com/agricidaniel/claude-youtube/tree/main/skills/claude-youtube/execution): `skills/claude-youtube/execution`
- [Channel data fetch](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/fetch_channel_data.py): `skills/claude-youtube/execution/fetch_channel_data.py`
- [Private analytics fetch](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/fetch_video_analytics.py): `skills/claude-youtube/execution/fetch_video_analytics.py`
- [YouTube authentication](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/utils/youtube_auth.py): `skills/claude-youtube/execution/utils/youtube_auth.py`
- [Quota tracker](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/utils/quota_tracker.py): `skills/claude-youtube/execution/utils/quota_tracker.py`

### Research and planning

- [Channel strategy](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/strategy.md): `skills/claude-youtube/sub-skills/strategy.md`
- [Content calendar](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/calendar.md): `skills/claude-youtube/sub-skills/calendar.md`
- [Competitor research](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/competitor.md): `skills/claude-youtube/sub-skills/competitor.md`
- [Video ideation](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/ideate.md): `skills/claude-youtube/sub-skills/ideate.md`
- [Monetization plan](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/monetize.md): `skills/claude-youtube/sub-skills/monetize.md`
- [Competitor video search](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/search_competitor_videos.py): `skills/claude-youtube/execution/search_competitor_videos.py`

### Video production

- [Video SEO](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/seo.md): `skills/claude-youtube/sub-skills/seo.md`
- [Script writing](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/script.md): `skills/claude-youtube/sub-skills/script.md`
- [Hook writing](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/hook.md): `skills/claude-youtube/sub-skills/hook.md`
- [Thumbnail brief](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/thumbnail.md): `skills/claude-youtube/sub-skills/thumbnail.md`
- [Shorts package](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/shorts.md): `skills/claude-youtube/sub-skills/shorts.md`
- [Upload metadata](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/metadata.md): `skills/claude-youtube/sub-skills/metadata.md`
- [Content repurposing](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/sub-skills/repurpose.md): `skills/claude-youtube/sub-skills/repurpose.md`
- [Transcript fetch](https://github.com/agricidaniel/claude-youtube/blob/main/skills/claude-youtube/execution/fetch_transcript.py): `skills/claude-youtube/execution/fetch_transcript.py`

### Other components

- **Creator**
- **YouTube APIs**
- **yt-dlp**
- **DataForSEO MCP**
- **WebSearch**
- **NanoBanana MCP**

## Connections

- Creator → Skill orchestrator: submits request
- Skill orchestrator → Channel audit: routes request
- Skill orchestrator → Analytics analysis: routes request
- Skill orchestrator → Channel strategy: routes request
- Skill orchestrator → Content calendar: routes request
- Skill orchestrator → Competitor research: routes request
- Skill orchestrator → Video ideation: routes request
- Skill orchestrator → Video SEO: routes request
- Skill orchestrator → Script writing: routes request
- Skill orchestrator → Hook writing: routes request
- Skill orchestrator → Thumbnail brief: routes request
- Skill orchestrator → Shorts package: routes request
- Skill orchestrator → Upload metadata: routes request
- Skill orchestrator → Content repurposing: routes request
- Skill orchestrator → Monetization plan: routes request
- Skill orchestrator → Guides and benchmarks: loads guidance
- Skill orchestrator → Channel templates: selects template
- Channel audit → Guides and benchmarks: uses benchmarks
- Analytics analysis → Guides and benchmarks: uses benchmarks
- Channel strategy → Channel templates: uses channel type
- Channel strategy → Guides and benchmarks: uses guidance
- Content calendar → Guides and benchmarks: uses guidance
- Competitor research → Guides and benchmarks: uses guidance
- Video ideation → Guides and benchmarks: uses guidance
- Video SEO → Guides and benchmarks: uses guidance
- Script writing → Guides and benchmarks: uses guidance
- Hook writing → Guides and benchmarks: uses guidance
- Thumbnail brief → Guides and benchmarks: uses guidance
- Shorts package → Guides and benchmarks: uses guidance
- Upload metadata → Guides and benchmarks: uses guidance
- Content repurposing → Guides and benchmarks: uses guidance
- Monetization plan → Guides and benchmarks: uses guidance
- Channel audit → YouTube data scripts: may use data
- Analytics analysis → YouTube data scripts: may use data
- Competitor research → Competitor video search: may fetch videos
- Thumbnail brief → NanoBanana MCP: generates images
- Competitor research → DataForSEO MCP: researches keywords
- Video ideation → DataForSEO MCP: researches keywords
- Video SEO → DataForSEO MCP: researches keywords
- Video ideation → WebSearch: fallback research
- Video SEO → WebSearch: fallback research
- YouTube data scripts → Channel data fetch: includes
- YouTube data scripts → Private analytics fetch: includes
- YouTube data scripts → Transcript fetch: includes
- YouTube data scripts → Competitor video search: includes
- Channel data fetch → YouTube authentication: builds API service
- Private analytics fetch → YouTube authentication: builds OAuth service
- Channel data fetch → Quota tracker: checks and records
