Upload to YouTube from Hermes Agent
Hermes Agent can upload Shorts and videos on YouTube through ClipSpeed. Add the ClipSpeed server with one config block, sign in, and then ask Hermes Agent to upload Shorts and videos, pick the time, and apply YouTube's settings, without leaving a self-hosted agent framework.
Keep a human in the loop: Hermes Agent shows the plan and asks before anything is public. Posting today: YouTube, TikTok, Instagram, X (Twitter) and LinkedIn.
Also try
How to upload YouTube from Hermes Agent
Hermes authenticates to remote servers with a header. Generate a ClipSpeed API key, add the server, restart. Connect YouTube in ClipSpeed, then describe the post. Setup takes about a minute.
# One-time setup: Hermes MCP config
{
"mcpServers": {
"clipspeed": {
"url": "https://api.clipspeed.ai/mcp",
"headers": { "Authorization": "Bearer csai_live_..." }
}
}
}
# Then ask Hermes Agent:
> Upload clip 3 as a Short now, title it from the hook, keep it public
Hermes Agent: Preview — nothing booked yet. YouTube — privacy_status: public. Book it?Hermes sits in ClipSpeed's compatible tier: same protocol as the verified clients, not yet driven end to end by us. The developer reference covers the handshake in detail.
- Generate a key in ClipSpeed under Account → API & Integrations.
- Add the clipspeed server with the URL and Authorization header to the agent's MCP configuration.
- Restart the agent and ask it to list your channels.
- Connect YouTube in the ClipSpeed app, or ask Hermes Agent for a connect link: it is private, valid for ten minutes, and YouTube signs you in itself.
Developer reference: the Hermes Agent MCP page.
What can Hermes Agent do on YouTube?
On YouTube, Hermes Agent can upload Shorts and full videos with a title, description, hashtags and a privacy setting. Every booking runs through the same rules as the ClipSpeed app.
Video posts
YouTube takes video through ClipSpeed. Video: MP4, MOV or WebM up to 1 GB by public link, or a finished ClipSpeed clip by clip_id.
5,000 characters, checked at booking
YouTube's own arithmetic. Too long is refused with the real count, never trimmed at send time. Titles are required and cap at 100.
Exact time or refused
Name the minute and Hermes Agent books it, or you are told why not and offered the next open slot. A booked YouTube post is never moved behind your back.
Preview before anything posts
preview: true runs the whole booking and writes nothing. Hermes Agent shows the plan, with each slot and the day's remaining cap, and books only on your yes.
Clips cut in the same chat
Submit a video or stream link, get captioned 9:16 clips with a viral score, and post the best as native video on YouTube. No download, no re-upload.
Pacing and numbers
Video on YouTube is at least 4 hours apart, up to 4 a day under your plan. After a post goes out, Hermes Agent can read back views and engagement where YouTube provides them.
How does Hermes Agent post to YouTube through ClipSpeed?
You describe what you want in plain language and Hermes Agent makes the ClipSpeed calls. A typical conversation has three beats.
Find your YouTube channel
Ask Hermes Agent whether YouTube is connected. It calls list_channels and reads platform_settings, so it also knows what YouTube accepts and the limits before you write a word.
Compose within the rules
Describe the post. Hermes Agent drafts within YouTube's limits; mention a clip or a file and it attaches it.
Schedule or publish
Name a time, or say now. The slot is booked exactly or refused with the next open one, and the reply carries the id you can cancel or edit by.
YouTube settings reference
These are the schedule_post fields that apply to YouTube. Mention any of them in plain language and Hermes Agent sets them; the server checks them at booking.
| Field | Type | Required | What it does on YouTube |
|---|---|---|---|
platforms | string[] | Yes | Include "youtube". Up to ten platforms per call; each books its own slot. |
title | string | Yes | The video title. YouTube requires one; up to 100 characters. |
text | string | No | The description, up to 5,000 characters. Links stay clickable. |
hashtags | string[] | No | Appended to the description; the first three show above the title on YouTube. They count toward the 5,000. |
privacy_status | public | unlisted | private | No | Defaults to public. Ask for unlisted when you want to review the upload on YouTube before anyone sees it. |
clip_id or media_url | string | One of the two | A finished ClipSpeed clip from check_clips, or a public https link to an MP4, MOV or WebM up to 1 GB. |
scheduled_at | ISO 8601 | No | Booked exactly or refused with the next open slot. Omit it to upload as soon as a slot is free. |
preview | boolean | No | true books nothing and returns the exact slot each upload would get. |
Common YouTube configurations
Ask Hermes Agent for any of these and it applies the matching settings.
Short, public, as soon as possible
Unlisted for review first
Scheduled premiere-style drop
Dry run of a week of Shorts
Example prompts for YouTube in Hermes Agent
Type these into a self-hosted agent framework. Hermes Agent calls ClipSpeed and confirms before publishing.
Upload YouTube with a scheduled time
Upload clip 3 as a Short now, title it from the hook, keep it public. Keep the text under 5,000 characters. Preview first.
Cut the clips, then post the best
Clip this link, keep the top three by viral score, and schedule them to YouTube at 11am, 3pm and 7pm tomorrow with titles written from each hook. Show me the plan before booking.
Check and adjust the YouTube calendar
What is scheduled on YouTube this week? Cancel tomorrow's post and tell me the next open YouTube slot on Friday.
YouTube limits and gotchas to know
YouTube enforces a few rules that Hermes Agent and ClipSpeed respect automatically, but knowing them helps you phrase requests.
- A title is required and capped at 100 characters. Ask the agent to write the title from the clip's hook line; the booking is refused, not trimmed, if it runs long.
- YouTube takes video only. A text-only or image request to YouTube is refused at booking with the message "YouTube takes video posts, not text".
- privacy_status defaults to public. Say "unlisted" or "private" in the prompt when you want to check the upload on YouTube first.
- Uploads are spaced four hours apart on the same channel and capped at your plan's daily number. A second upload inside that window is refused with the next open slot, never silently moved.
- Shorts are detected by YouTube from a vertical 9:16 frame under three minutes. ClipSpeed clips already come out 9:16; a 16:9 source uploads as a standard video.
| Rule | YouTube |
|---|---|
| Accepts | Video |
| Text limit | 5,000 characters |
| Title | 100 characters, required |
| Links in the caption | Kept |
| Pacing | Video on YouTube is at least 4 hours apart, up to 4 a day under your plan. |
| Formats | Video: MP4, MOV or WebM up to 1 GB by public link, or a finished ClipSpeed clip by clip_id. Aspect: 9:16 vertical for Shorts, 16:9 for standard uploads |
| Status | Posting today |
What Postiz-style schedulers cannot do
Cut the clips first
Hermes Agent does not need finished video to start. Hand it a YouTube link, a podcast, a stream VOD or a local export. ClipSpeed finds the moments, cuts them to 9:16 with word-by-word captions, scores each one 0 to 100 for shareability, and returns them in the same conversation. Hermes Agent picks by score, writes the caption from the transcript, and books the clips on YouTube. Three tool calls, one approval, no download and no re-upload.
- Clips arrive with a title written from the hook, a transcript and a viral score, so the agent can choose and caption without watching the footage.
- Live streams can be clipped while they are still on air; the agent books the highlights for the next morning before the stream ends.
- Every clip is already hosted, so
schedule_posttakes its id directly. Nothing moves through your laptop.
submit_to_clipspeedPaste the link. ClipSpeed starts the job and returns a project id.check_clipsPoll with the project id. Back come the finished 9:16 clips with titles, transcripts, viral scores and preview links.schedule_postPass the clip id, the platforms, a caption and a time. Hermes Agent shows the plan with preview: true, you say yes, it books.generate_image or generate_videoDescribe the shot. ClipSpeed runs it on the model that fits (Seedance, Kling, Veo, Nano Banana Pro, GPT Image and others) and quotes the credits first.wait_for_generationReturns the hosted result link and a preview the agent can show you.schedule_post with media_urlThe result link goes straight into the booking on YouTube. The caption, the time and the file are approved together.The other half nobody else has
Generate the video, then post it
A product shot for Instagram, a 16:9 announcement graphic for X, a six-second opener before a clip: Hermes Agent can make a short video with ClipSpeed's image and video models and book the result in the same reply. There is no separate design tool, no export, no upload page. The generated file is hosted, so media_url is the only thing the booking needs.
- The price in credits is quoted before anything renders, within the per-generation and daily caps you set in Settings.
- Results are previewed in the conversation, so you approve the picture and the post at once.
- video posts as MP4, MOV or WebM up to 1 GB.
What is Hermes Agent?
Hermes Agent is Nous Research's open agent framework. It runs tasks with tools, including MCP servers over HTTP. With ClipSpeed configured with an API key, a Hermes agent can clip videos, generate media and schedule posts.
How ClipSpeed works with Hermes Agent
- Hermes connects over HTTP with a Bearer key
- Reads
platform_settingsbefore composing - Exact-or-refused booking
preview: truefor plans- Same tools as every other client
Hermes Agent vs OpenClaw vs Paperclip: Hermes Agent (your server), OpenClaw (your machine; messaging apps), Paperclip (your server). This page is about Hermes Agent; the Hermes Agent guide compares them.
{
"mcpServers": {
"clipspeed": {
"url": "https://api.clipspeed.ai/mcp",
"headers": { "Authorization": "Bearer ${CLIPSPEED_API_KEY}" }
}
}
}# What the agent reads at connect time (tool descriptions, abridged)
list_channels Connected platforms, what each accepts, limits, your time zone
connect_channel A private 10-minute link to connect one platform
platform_settings Limits, title rules, link handling, pacing per platform
schedule_post clip_id | text | media_url → platforms[], scheduled_at, preview
list_scheduled_posts Scheduled, sending, posted, failed — with post links
update_scheduled_post Edit copy while still scheduled (the time never moves)
cancel_scheduled_post Cancel; undoable 72 h in the app
post_analytics Views, likes, comments, shares where the platform gives them
submit_to_clipspeed Start clipping a video or stream link → projectId
check_clips Finished 9:16 clips with titles, transcripts, viral scores
generate_image / generate_video / wait_for_generation
# YouTube: video · text 5,000 · title 100 requiredUpload to YouTube and other platforms from Hermes Agent
One request can book the same content to YouTube and other channels, each keeping its own settings and its own slot. Every platform below has its own Hermes Agent guide.
Also works with
YouTube and Hermes Agent: frequently asked questions
How do I upload to YouTube from Hermes Agent?
Generate a key in ClipSpeed under Account → API & Integrations. Add the clipspeed server with the URL and Authorization header to the agent's MCP configuration. Connect YouTube in ClipSpeed (or ask Hermes Agent for a connect link; it is private and valid for ten minutes), then describe the post in plain language. Hermes Agent reads the YouTube rules, drafts within them, shows the plan and books on your yes.
What can Hermes Agent post to YouTube through ClipSpeed?
Upload Shorts and full videos with a title, description, hashtags and a privacy setting. YouTube takes video posts; a text-only request is refused with a message naming what it accepts. Text is limited to 5,000 characters. A title is required and is capped at 100 characters.
Which YouTube settings can Hermes Agent control?
The fields in the settings reference above: title, text, hashtags, privacy_status, clip_id or media_url, scheduled_at, preview. Mention any of them in plain language ("unlisted", "tomorrow at 9", "preview first") and Hermes Agent sets the matching field before it books.
Do I need a YouTube API key or developer account?
No. You connect YouTube to ClipSpeed once through YouTube's own sign-in, and Hermes Agent talks to ClipSpeed with a ClipSpeed API key you can revoke at any time. No YouTube developer key, bearer token or password is pasted anywhere.
How many YouTube posts a day can Hermes Agent schedule?
Video on YouTube is at least 4 hours apart, up to 4 a day under your plan. When a time is taken, the booking is refused with the next open slot rather than moved. Ask for preview to see a day's plan and the remaining cap before anything is booked.
Can posts go out to YouTube while I am away?
Yes. Once booked, ClipSpeed publishes at the scheduled minute whether or not Hermes Agent is open. For unattended runs that decide what to post, use a headless agent such as Claude Code or Codex with the same account.
Is posting to YouTube from Hermes Agent different from OpenClaw?
The booking is identical: the same rules, the same calendar, the same refusals. What differs is where you work. Hermes Agent: your own machine or server. OpenClaw: your machine; messaging apps, personal agent with chat surfaces.