AI agents for YouTube
Long-form content worth repurposing everywhere else. AGNT connects to YouTube so agents can read what happens there, reason about it, and act — with a receipt for every run.
Social Scheduler is a ready-made agent that works in YouTube — free, and it runs on your machine.
YouTube and AGNT, in brief
| What it does | Lets an AGNT agent read from and act in YouTube. |
|---|---|
| Connects with | One OAuth sign-in |
| AGNT node | youtube-api |
| Runs when | A video is published |
| Typical build time | Two minutes |
| Where data goes | Nowhere by default — AGNT runs on your machine and credentials never leave it. |
What you can automate
Reacts when…
- a video is published
- a comment arrives
Agents can…
- pull transcripts and stats
- draft descriptions and chapters
- summarise comments
Teams use it for
- videos become posts, threads and newsletters
- comment themes surfaced weekly
- performance reported alongside the rest
The YouTube workflow, ready to paste
Most YouTube builds begin the same way. A run starts when a video is published. The agent reads what arrived, judges it against criteria you wrote in plain language, and acts only where that judgment says it should — typically to pull transcripts and stats. That is what makes videos become posts, threads and newsletters something you can hand over rather than merely schedule.
Three nodes carry that: something happens in YouTube, an agent reads it and forms a view, and it acts only where that view says it should. The definition below is the whole thing — paste it into a new workflow and it loads exactly as drawn.
{
"id": "1b9cef6f-3295-402b-a4f7-e8001596f3ae",
"name": "YouTube — read, decide, act",
"nodes": [
{
"id": "4a630142-4070-4336-a04b-c902c090417c",
"text": "Run on a schedule",
"x": 512,
"y": 144,
"isEditing": false,
"type": "trigger-timer",
"icon": "clock",
"category": "trigger",
"isSelected": false,
"parameters": {
"interval": "15",
"unit": "minutes"
},
"description": "Checks YouTube every fifteen minutes.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "bccb97df-bfd6-4cdd-ad76-8a88688de382",
"text": "Read it and decide",
"x": 512,
"y": 336,
"isEditing": false,
"type": "agnt-agent",
"icon": "agnt",
"category": "action",
"isSelected": false,
"parameters": {
"instructions": "Read the YouTube item and decide whether it warrants action. Explain your reasoning."
},
"description": "Judges the YouTube item against criteria you wrote in plain language.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "7b30f568-9bcf-4920-a3f6-9122f5c1178c",
"text": "Act in YouTube",
"x": 512,
"y": 528,
"isEditing": false,
"type": "youtube-api",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"action": "ADD_VIDEO_TO_PLAYLIST"
},
"description": "Runs ADD_VIDEO_TO_PLAYLIST on your behalf.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
}
],
"edges": [
{
"id": "164e7085-2295-443f-a9b9-6f14398c5bce",
"start": {
"id": "4a630142-4070-4336-a04b-c902c090417c",
"type": "output"
},
"end": {
"id": "bccb97df-bfd6-4cdd-ad76-8a88688de382",
"type": "input"
},
"startX": 800,
"startY": 168,
"endX": 512,
"endY": 360
},
{
"id": "aff51dc0-6832-4614-ab95-bb8240f67410",
"start": {
"id": "bccb97df-bfd6-4cdd-ad76-8a88688de382",
"type": "output"
},
"end": {
"id": "7b30f568-9bcf-4920-a3f6-9122f5c1178c",
"type": "input"
},
"startX": 800,
"startY": 360,
"endX": 512,
"endY": 552
}
],
"zoomLevel": 1,
"canvasOffsetX": 0,
"canvasOffsetY": 0,
"isTinyNodeMode": false
}
Install Social Scheduler — it runs on YouTube
Social Scheduler is a working agent that uses YouTube. Installing it drops the whole workflow onto your canvas — connected, editable, and yours to change.
Runs on your own machine · See what it does
One video is a lot of content
A published video already contains a written post, a thread, a newsletter section and a set of chapter markers — all of them extractable from the transcript. Repurposing is the highest-return automation available to anyone publishing long-form.
Comments as a feedback channel
Comment sections are too large to read and too valuable to ignore. Summarised into themes, they become a running signal about what confused people and what they want next.
What the YouTube node actually exposes
Interact with the YouTube API to manage videos, comments, playlists, and more.
What it can do: ADD_VIDEO_TO_PLAYLIST COMMENT_ON_VIDEO CREATE_PLAYLIST DISLIKE_VIDEO GET_MY_SUBSCRIPTIONS GET_PLAYLIST_ITEMS GET_TRANSCRIPTION GET_VIDEO_DETAILS LIKE_VIDEO LIST_CHANNEL_VIDEOS REPLY_TO_COMMENT SEARCH_VIDEOS SUBSCRIBE_TO_CHANNEL UNSUBSCRIBE_FROM_CHANNEL UPDATE_VIDEO_METADATA UPLOAD_VIDEO
Full YouTube API parameter reference
| Parameter | Type | What it does |
|---|---|---|
actionrequired |
string | The action to perform on YouTube ADD_VIDEO_TO_PLAYLIST · COMMENT_ON_VIDEO · CREATE_PLAYLIST · DISLIKE_VIDEO · GET_MY_SUBSCRIPTIONS · GET_PLAYLIST_ITEMS · GET_TRANSCRIPTION · GET_VIDEO_DETAILS |
query |
string | The search query only when action is SEARCH_VIDEOS |
videoId |
string | YouTube video ID or full URL (e.g., 'dQw4w9WgXcQ' or 'https://www.youtube.com/watch?v=dQw4w9WgXcQ') - automatically converts URLs to video IDs only when action is GET_VIDEO_DETAILS or LIKE_VIDEO or DISLIKE_VIDEO or COMMENT_ON_VIDEO |
fallbackMethod |
string | Transcription method: 'all' (try all methods), 'api' (YouTube API only), 'ytdlp' (yt-dlp only), 'whisper' (OpenAI Whisper only). IMPORTANT: Use 'all' for best results - tries YouTube API first, then yt-dlp, then Whisper as fallbacks. all · api · ytdlp · whisper only when action is GET_TRANSCRIPTION |
channelId |
string | The ID of the YouTube channel only when action is LIST_CHANNEL_VIDEOS or SUBSCRIBE_TO_CHANNEL or UNSUBSCRIBE_FROM_CHANNEL |
text |
string | The text of the comment or reply only when action is COMMENT_ON_VIDEO or REPLY_TO_COMMENT |
commentId |
string | The ID of the comment to reply to only when action is REPLY_TO_COMMENT |
title |
string | The title of the playlist or video only when action is CREATE_PLAYLIST or UPDATE_VIDEO_METADATA or UPLOAD_VIDEO |
description |
string | The description of the playlist or video only when action is CREATE_PLAYLIST or UPDATE_VIDEO_METADATA or UPLOAD_VIDEO |
tags |
string | Comma-separated list of tags for the video only when action is UPDATE_VIDEO_METADATA or UPLOAD_VIDEO |
playlistId |
string | The ID of the playlist only when action is ADD_VIDEO_TO_PLAYLIST or GET_PLAYLIST_ITEMS |
videoPath |
string | The local path to the video file to upload only when action is UPLOAD_VIDEO |
1 further parameters are available on the node itself.
Every parameter above is read from the shipped youtube-api node, so it cannot drift from the product.
Connect YouTube in two minutes
- Download AGNT Community Core — free, local-first, no account needed to run.
- Connect with one OAuth sign-in from AGNT’s vault — tokens are stored encrypted on your machine and never leave it.
- Drop the YouTube node into a workflow or hand it to an agent — the first run produces a receipt you can read line by line.
YouTube + AGNT — common questions
Can it pull transcripts?
Yes, along with statistics, which is what the repurposing and reporting workflows are built on.
Can it write descriptions and chapters?
Yes, drafted from the transcript and left for review.
Can comments be summarised?
Yes — grouped into themes rather than listed.