Build an AI Social Media Pipeline
Automate social media content creation and publishing with an AI agent.
Introduction
30 Second Summary
Keeping up with social media across multiple platforms is exhausting. Every post needs unique text, images, and video tailored to each platform's audience.
In this project, you will build an automated content pipeline using an AI agent that generates social media posts with AI images and video clips, then pushes them to your publishing queue across Facebook, Instagram, and TikTok.
What You'll Build
Tell Hermes Agent what kind of content you want, walk away, and come back to find platform-ready posts with AI-generated visuals sitting in your Buffer queue, waiting for your approval before they go live.
By the end of this project, you'll have:
- An AI agent running on your machine that generates social media posts complete with AI images and short video clips from a single conversation.
- A publishing pipeline that pushes content directly to your Buffer queue across Facebook, Instagram, and TikTok with platform-specific captions.
- A cron-scheduled workflow that produces and queues fresh content every day without you lifting a finger.
- Secret Mission: Build a full week-long content campaign with varied content types and coherent theming across all your channels.
Are there any prerequisites?
You need a Linux machine with git and curl installed, plus social media accounts on Facebook, Instagram, and TikTok. The Hermes installer takes care of everything else, including Python, Node.js, and ffmpeg.
Before We Start
Before we dive in, let's lock in what you're about to build and why it matters.
Creating social media content across multiple platforms takes real time, especially when you're a solo creator juggling everything else. By the end of this project, you'll have an AI agent that handles the heavy lifting for you.
Install Hermes Agent and Configure Your AI Provider
Every tool in this project flows through Hermes Agent, the AI agent that generates content, creates images, and publishes posts. Without Hermes running on your machine with a connection to a language model, nothing else in this project works.
In this step, you'll install Hermes Agent on your Linux machine, connect it to an LLM provider, and confirm everything is wired up with a test message.
In this step, get ready to:
- Install Hermes Agent and its dependencies on your Linux machine.
- Configure an LLM provider to power Hermes.
- Verify the setup with a health check and a test message.
Install Hermes Agent
The Hermes installer handles most dependencies automatically, but it needs git, curl, and xz-utils to already be on your machine.
- Confirm that git and curl are available by running these commands:
git --version
curl --version
You should see version numbers printed for both tools.
- The Hermes installer also needs xz-utils. On Debian or Ubuntu, install it by running:
sudo apt install xz-utils
Already have xz-utils?
If xz-utils is already installed, this command confirms it is up to date and moves on. No harm done.
- Install Hermes Agent by running the official installer:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
What does this installer do?
The installer downloads and sets up Hermes Agent at ~/.hermes. It automatically installs Python 3.11, Node.js, ripgrep, and ffmpeg if they are not already on your system.
This can take a few minutes depending on how many dependencies need to be downloaded.
- Reload your shell so your terminal recognizes the new hermes command:
source ~/.bashrc
- Verify the installation by running:
hermes --version
You should see a version number confirming Hermes is installed.
Seeing command not found?
- Make sure you ran source ~/.bashrc after the installer finished. The installer adds Hermes to your PATH, but the change only takes effect after reloading the shell.
- If reloading did not help, close your terminal window completely, open a new one, and try hermes --version again.
- Still stuck? Help me troubleshoot why hermes is not found after installing.
Configure your LLM provider
Hermes Agent needs a language model to generate content. You have two provider options to choose from.
Can I use my Claude Pro subscription?
No. Claude Pro subscribers cannot use their subscription as the Hermes provider. You need either Nous Portal (a separate subscription) or an Anthropic API key (pay-per-token, billed against your API key's organization).
- Choose one of the two provider options below and follow the instructions in that tab.
Nous Portal (recommended)
Nous Portal gives you an LLM plus Tool Gateway tools (web search, image generation, TTS, browser) through a single OAuth login. This is the fastest way to get started.
- Set up Nous Portal by running:
hermes setup --portal
What happens next?
This command opens your browser for an OAuth login at the Nous Portal. After you sign in, it saves your credentials, lets you pick a model, sets Nous as your inference provider, and turns on the Tool Gateway.
- Complete the login in your browser.
- Pick a model from the list when prompted.
- Return to your terminal after the setup finishes.
Anthropic API key
If you prefer pay-per-token pricing, you can use an Anthropic API key instead. Get one from console.anthropic.com if you do not have one already.
- Export your API key by running:
export ANTHROPIC_API_KEY=your-key-here
- Replace your-key-here with your actual API key from the Anthropic console.
- Open the interactive provider and model selector by running:
hermes model
What happens next?
This command opens an interactive picker where you choose your provider and model. Select Anthropic from the provider list, then choose a Claude model. Your selection is saved to ~/.hermes/config.yaml automatically.
- Select Anthropic from the provider list.
- Choose a Claude model from the options shown.
Verify the setup
With Hermes installed and your provider configured, it is time to confirm everything works end to end.
Before running the health check, what do you think hermes doctor will report if everything is set up correctly?
- Run the Hermes health check:
hermes doctor
All checks should pass, confirming your installation, provider credentials, and dependencies are correctly configured.
Seeing warnings or errors in hermes doctor?
- If the doctor flags missing or stale config values, re-run hermes model and confirm your provider and model are set.
- If it reports a credential issue, double-check that your Nous Portal login completed successfully or that your ANTHROPIC_API_KEY is exported in the current shell session.
- Still stuck? Help me fix the hermes doctor errors I am seeing.
Now for the real test. What do you think will happen when you send Hermes a direct message from the command line?
- Send a test message to verify Hermes can talk to your LLM provider:
hermes chat -q "Reply with: ready to create content"
Hermes responds with the text you requested. Your agent is live and connected to your language model.
Hermes not responding?
- If you see an authentication error, your provider credentials may have expired or not saved correctly. Run hermes model to reconfigure your provider.
- If the command hangs, check your internet connection. Hermes needs to reach your LLM provider's API.
- Need help? Help me debug why hermes chat is not returning a response.
Your agent is installed and ready. Next up, you will put Hermes to work and generate your first social media post.
Generate Your First Social Media Post
Your agent is installed, configured, and responding to prompts. Now it's time to see what Hermes Agent can produce when you give it a real content brief.
Every social media post starts with a good idea and the right words. In this step, you'll give Hermes a plain-language prompt and watch it draft a complete social media post in your terminal.
In this step, get ready to:
- Generate a social media post with text, hashtags, and a visual concept description.
- Test whether Hermes can create actual media from your prompt.
Start a chat session and request a post
Hermes has an interactive chat mode where you type natural language prompts and the agent responds in real time. Think of it as a conversation where you describe what you want and Hermes builds it for you.
- Launch an interactive chat session by running this command in your terminal:
hermes chat
You should see a chat prompt appear, ready for your input.
Chat session not starting?
If you see an error about no provider configured, go back to Step 1 and re-run hermes setup --portal or set your ANTHROPIC_API_KEY environment variable.
help me troubleshoot why hermes chat is not starting
- Ask Hermes to generate a social media post by sending this message:
Create a social media post about productivity tips for remote workers. Include suggested hashtags and describe what image or video would go with this post.
What does this prompt do?
This prompt gives Hermes three tasks in one message: write post copy, suggest hashtags, and describe a visual concept. Hermes processes all three and returns a complete content brief in a single response.
Hermes responds with a full social media post. You should see text content, a set of hashtags, and a description of what image or video would pair well with the post.
Read the output carefully. Notice that Hermes describes what the visual should look like but does not actually produce an image file or video clip.
Try requesting an image directly
Your post includes a detailed description of what the image should look like. That description sounds great on paper. But can Hermes actually create it?
Before you try, take a guess. Do you think Hermes will produce an actual image file, or just more text?
- While still in the same chat session, send this message:
Now generate that image for me.
Hermes either explains that it cannot generate images or tries to call a tool that is not configured. Either way, no image appears.
Why can't Hermes generate images?
Hermes is a text-based AI agent. It can write, plan, and reason, but it has no built-in media generation capabilities. To create images or video, Hermes needs an external tool connected through an MCP server.
Right now, no MCP servers are connected. Your content is stuck as text only, with no visuals and no way to reach your audience. That is exactly the gap you will close in the next step.
- Exit the chat session by typing:
/quit
You have seen what Hermes can do on its own: solid writing, relevant hashtags, and a clear visual concept. What it cannot do yet is create the visuals themselves. Next up, you will connect a media generation tool that turns those descriptions into real images and video clips.
Add AI-Powered Image and Video Generation
In the last step, you asked Hermes to generate a social media post and it delivered text, hashtags, and a description of what the image should look like. Then you asked for the actual image and hit a wall.
That gap exists because Hermes has no media generation tools connected. In this step, you will wire up the Pollinations.ai MCP server, giving Hermes the ability to generate AI images and short video clips right inside a conversation.
In this step, get ready to:
- Add the Pollinations MCP server to your Hermes config.
- Generate an AI image and a short video clip inside a Hermes chat.
Add the Pollinations MCP server to Hermes
Hermes gains new abilities through MCP servers, which are external tools it can call during a conversation. Pollinations.ai provides free AI image and video generation with no API key required.
- Open your Hermes config file by running this command:
hermes config edit
What is this config file?
This opens ~/.hermes/config.yaml in your default text editor. Hermes stores all its settings here, including which MCP servers to load when you start a chat.
- Add the following block to your config file. If an mcp_servers section does not exist yet, add the entire block at the end of the file:
# Connect Pollinations for AI image and video generation
mcp_servers:
pollinations:
command: "npx"
args: ["-y", "@pollinations/mcp"]
What does this config do?
This tells Hermes to start the Pollinations MCP server using npx whenever you open a chat session. Hermes can then call Pollinations tools like generateImage and generateVideo mid-conversation.
The -y flag auto-confirms the npx install prompt so the server starts without interruption. No API key is needed because Pollinations offers an anonymous tier with 1 request every 15 seconds.
- Save the config file and close your editor.
✔️ Awesome, I've got everything!
Great. Make sure you have saved config.yaml before moving on.
ⓧ I'd like to double check the full code
Your mcp_servers section should look exactly like this. The rest of your config file (LLM provider settings from Step 1) will vary based on which provider you chose.
mcp_servers:
pollinations:
command: "npx"
args: ["-y", "@pollinations/mcp"]
Not sure where to add the config?
If your config file already has an mcp_servers section from a previous setup, add just the pollinations: entry underneath it, indented to match the existing entries.
Make sure the indentation uses spaces, not tabs. YAML is whitespace-sensitive, so a misplaced character can break the entire config.
Help me configure the Pollinations MCP server in my Hermes config file.
Remove watermarks from generated images
The anonymous tier adds watermarks to generated images. You can register a free account at auth.pollinations.ai to remove watermarks and get higher rate limits.
Generate an image and a video
With the MCP server configured, Hermes now has access to image and video generation tools. You need to start a fresh chat session so Hermes loads the updated config.
- Start a new Hermes chat session by running this command:
hermes chat
Last time you asked Hermes to generate an image, it could only describe what one should look like. What do you think will happen now that the Pollinations MCP server is connected?
- Ask Hermes to generate an image by typing this prompt:
Generate an image of a modern home office setup with warm lighting and plants, suitable for a social media post about remote work productivity.
Hermes calls the Pollinations generateImage or generateImageUrl tool and saves an AI-generated image to your machine. You should see the file path printed in the chat output.
Hermes did not generate an image?
The Pollinations MCP server can take a moment to register after you first enable it. Exit the chat with /quit and start a new session with hermes chat. The fresh session gives Hermes another chance to connect to the MCP server.
Also double check that your config.yaml has the correct indentation and that the args line reads exactly ["-y", "@pollinations/mcp"].
Help me troubleshoot why Hermes cannot generate images with the Pollinations MCP server.
- Now ask Hermes to generate a short video clip by typing this prompt:
Now generate a short video clip of a cozy workspace with gentle movement, something that would work as a TikTok or Reel.
Hermes uses the Pollinations generateVideo or generateVideoUrl tool to create a 4-8 second AI-generated clip. Video generation takes longer than images, so give it a minute.
What kind of videos does Pollinations create?
Pollinations uses AI video models like veo (4-8 second text-to-video clips) and seedance (2-10 second clips supporting both text-to-video and image-to-video). These produce short animated visuals with subtle motion, perfect for social media content like TikToks and Reels.
Check the file paths Hermes printed in the chat to confirm both the image and the video clip were saved to your machine.
- Exit the chat session by typing /quit.
Video generation failed?
Video generation uses more resources than image generation and may time out on slower connections. Try the request again in a new chat session. If it fails a second time, try shortening your prompt to a simpler scene description.
Remember that the anonymous tier limits you to 1 request every 15 seconds. If you sent the video request too quickly after the image, wait a moment and try again.
Help me troubleshoot Pollinations video generation in Hermes.
Hermes can now create text, images, and video clips for your social media posts. All of that content is sitting on your local machine with no way to reach your audience.
Next up, you will connect Buffer to push your AI-generated posts directly to Facebook, Instagram, and TikTok.
Publish Across Facebook, Instagram, and TikTok
You have AI-generated text, images, and video clips sitting on your machine. They look great, but nobody else can see them.
In this step, you will connect Buffer to Hermes so that content goes straight from your conversation to a publishing queue across Facebook, Instagram, and TikTok. Buffer is a free social media scheduling tool that accepts posts via its MCP server, so Hermes can push content directly without you copying and pasting anything.
In this step, get ready to:
- Create a free Buffer account and connect your Facebook, Instagram, and TikTok channels.
- Generate a Buffer API key and add the Buffer MCP server to Hermes.
- Ask Hermes to create a full post with an AI image and push it to your Buffer queue across all 3 platforms.
Create a Buffer account and connect your channels
Buffer is the bridge between Hermes and your audience. You will create a free account and connect 3 social channels so Buffer knows where to publish.
- Open your browser and go to buffer.com.
- Click Get started now and sign up for the Free plan. No credit card is required.
Why Buffer?
Buffer's Free plan gives you up to 3 connected channels, 10 scheduled posts per channel, and MCP access. That is enough to build and test your entire content pipeline at zero cost.
Buffer has a lifetime limit of 8 unique channel connections, even if you disconnect them later. Connect only the 3 channels you plan to use for this project.
Now connect your 3 social channels one at a time. Before each connection, log in to the social account you want to connect in a separate browser tab. Buffer uses the account that is currently active in your browser.
- In a separate browser tab, log in to the Facebook profile that has Full control of your Facebook Page.
- Back in Buffer, click + New in the top navigation bar, then select Connect a New Channel.
- Select Facebook and follow the prompts to grant Buffer permission.
- When Facebook asks what to allow, approve all permissions. Your Facebook Page now appears in your Buffer channel list.
Repeat this process for Instagram and TikTok.
- In a separate tab, log in to your Instagram Business account.
- In Buffer, click + New, then Connect a New Channel, and select Instagram.
- Sign in with your Instagram credentials and approve all permissions.
- In a separate tab, log in to your TikTok Business account.
- In Buffer, click + New, then Connect a New Channel, and select TikTok.
- Sign in with your TikTok credentials and approve all permissions.
You should now see all 3 channels listed in your Buffer dashboard under the channel sidebar on the left.
Don't see all 3 channels?
- Buffer connects the account that is currently logged in to your browser. If the wrong account appeared, log out of the social network completely, open an incognito window, log in to the correct account, then reconnect in Buffer.
- For Facebook, you need a profile with Full control of the Page. Buffer connects Facebook Pages, not personal profiles.
- For Instagram, you need a Business or Creator account. Personal accounts only support notification publishing.
Still stuck? Help me connect my social channels to Buffer.
Generate a Buffer API key and connect Buffer to Hermes
Hermes needs a way to talk to Buffer programmatically. You will generate an API key and then add the Buffer MCP server to your Hermes config, just like you did with Pollinations.
- In Buffer, click your profile avatar in the bottom left of the dashboard.
- Select Settings, then click API.
- Generate a personal API key and copy it somewhere safe. You will need it in a moment.
What is a Buffer API key?
The API key is a credential that lets Hermes authenticate with Buffer on your behalf. It controls which tools have access to your Buffer account. You can revoke it at any time from Settings then API in Buffer.
Next, find the Buffer MCP server configuration so you can add it to Hermes.
- In Buffer, go to Settings, then Integrations.
- Find the MCP server configuration details on this page. Note the server setup information. It will follow the same pattern as the Pollinations entry you added earlier, with your API key passed as an environment variable.
- Open your Hermes config by running:
hermes config edit
- Add the Buffer MCP server under the existing mcp_servers section, below the pollinations entry you added in the previous step.
- Use the configuration details from Buffer's integrations page. The entry should include the command, args, and an env block with your Buffer API key as an environment variable.
- Save and close the config file.
What does this config change do?
Adding Buffer under mcp_servers tells Hermes to launch the Buffer MCP server alongside Pollinations whenever you start a chat. This gives Hermes tools to create posts, list channels, and manage your Buffer queue from inside a conversation.
Your mcp_servers section now has two entries: pollinations for image and video generation, and buffer for social media publishing.
Verify that Hermes picks up the new Buffer tools by starting a fresh chat session.
- Start a new Hermes chat so it loads the updated config:
hermes chat
- Ask Hermes to list your connected Buffer channels:
List all my connected Buffer channels.
Hermes should call the Buffer MCP and return the 3 channels you connected: your Facebook Page, Instagram Business account, and TikTok Business profile.
Hermes doesn't list your channels?
- Make sure you saved the config file after editing. Run hermes config edit again and confirm the buffer entry is present under mcp_servers.
- Check that your API key is correctly pasted with no extra spaces or missing characters.
- Exit the chat with /quit and start a new session. Hermes only loads MCP servers at the start of a chat.
Help me connect the Buffer MCP server to Hermes Agent.
Create and publish your first post
Everything is wired together. Hermes can generate content with Pollinations and publish through Buffer. Time to test the full pipeline in a single conversation.
- In your Hermes chat (start a new one if you exited), send this prompt:
Create a social media post about 3 productivity tips for remote workers. Generate an eye-catching image to go with it. Then schedule this post to my Buffer queue for Facebook, Instagram, and TikTok. Use the image you generated.
What happens when you send this prompt?
Hermes will chain together multiple MCP tools in sequence. First, it generates the post text with tips, hashtags, and a caption. Then it calls the Pollinations generateImageUrl tool to create an AI image and get a public URL. Finally, it calls the Buffer MCP to create the post with the image URL and queue it for all 3 channels.
Buffer requires media to be hosted at a public URL. Pollinations returns public URLs by default, so the two tools are directly compatible.
Watch Hermes work through the generation and publishing steps in your terminal. It may take a minute to complete all the tool calls.
Before you check Buffer, what do you think the post will look like across all 3 platforms? Will each platform get its own version of the caption?
- Open buffer.com in your browser and check your queue.
- Click through each channel in the sidebar: your Facebook Page, Instagram account, and TikTok profile.
You should see the post with the AI-generated image queued across all 3 channels. The content pipeline is working.
But look closer at the captions. The exact same text appears on every platform. A paragraph-style caption that works on Facebook feels out of place on TikTok, where short punchy text with trending hashtags is the norm. That same-caption gap is exactly what the next step fixes.
Post not showing in your Buffer queue?
- Check your Hermes terminal output for error messages. If you see an authentication error, your Buffer API key may be incorrect. Regenerate it from Settings then API in Buffer and update your Hermes config.
- If Hermes says it posted but nothing appears in Buffer, wait 30 seconds and refresh the Buffer dashboard. There can be a short delay before queued posts appear.
- Make sure you have scheduling slots available. Buffer's Free plan allows 10 scheduled posts per channel.
Help me figure out why my Hermes post isn't showing in Buffer.
Your content pipeline is live. Hermes can generate visuals and push posts to your audience across 3 platforms in a single conversation. Next up, you will automate the whole thing with a cron job and add platform-specific captions so each channel gets content that fits its style.
Automate Your Content Pipeline with Cron
In the previous step, you connected Buffer and published your first AI-generated post across Facebook, Instagram, and TikTok. Your content pipeline can now create visual posts and push them straight to your queue from a single conversation.
There is still a gap. You have to manually start each conversation, and every platform gets the exact same generic caption. A conversational paragraph that works on Facebook falls flat on TikTok. In this step, you will install a skill that teaches Hermes to write platform-specific captions and set up a cron job so the whole pipeline runs on autopilot.
In this step, get ready to:
- Install the caption-writer skill for platform-specific captions.
- Create a daily cron job that generates and publishes content automatically.
- Test the pipeline and verify platform-specific captions in your Buffer queue.
Install the caption-writer skill
The caption-writer skill teaches Hermes how to craft captions tailored to each social platform. Facebook gets conversational sentences with a question. Instagram gets a hook line, value points, and hashtags. TikTok gets punchy, emoji-heavy text with trending hashtags.
- Start a new Hermes chat session by running this command:
hermes chat
- Search for the caption-writer skill by entering this in the chat:
/skills search caption-writer
You should see the caption-writer skill appear in the search results. It is part of a community-maintained collection of social media skills.
- Install the skill by entering this command:
/skills install social-media-skills/skills/caption-writer
Hermes confirms the installation. The caption-writer skill is now available for any future chat or cron job.
Skill not found?
Make sure you typed the full path social-media-skills/skills/caption-writer exactly as shown. The repository uses a nested directory structure, so leaving out part of the path returns no results.
Help me find and install the caption-writer skill in Hermes.
Create a cron job for scheduled content
A cron job tells Hermes to run a task on a repeating schedule without you being at your keyboard. You define the schedule using a cron expression and provide a self-contained prompt that Hermes executes each time the job fires.
What is a cron expression?
A cron expression is a string of five values that define a schedule: minute, hour, day of month, month, and day of week. The expression 0 8 * * * means "at minute 0, hour 8, every day, every month, every day of the week." In plain terms, that is daily at 8 AM.
Hermes supports standard cron expressions, relative delays like 30m, intervals like every 2h, and ISO timestamps. Natural language like "daily at 9am" is not supported.
Why does the prompt need to be self-contained?
Cron jobs run in fresh agent sessions with no memory of your current chat. Every detail the agent needs to do its job must be spelled out in the prompt itself. If you reference something from a previous conversation, the cron session will not know about it.
- Still in your Hermes chat, create the daily content pipeline by entering this command:
/cron add "0 8 * * *" "Generate a social media post about a trending productivity or lifestyle topic. Use the Pollinations tools to create both an AI image (landscape, vibrant colors) and a short video clip (4-6 seconds, subtle motion). Write a unique caption for each platform: Facebook (conversational, 2-3 sentences with a question), Instagram (hook line, value points, 5-8 hashtags), and TikTok (punchy, emoji-heavy, trending hashtag style). Then schedule all versions to my Buffer queue." --skill caption-writer --name "Daily Content Pipeline"
What does this command do?
- /cron add registers a new scheduled job with Hermes.
- "0 8 * * *" sets the schedule to every day at 8 AM.
- The long quoted string is the self-contained prompt that Hermes runs in a fresh session each time the job fires.
- --skill caption-writer loads the caption-writer skill you just installed so Hermes can write platform-adapted captions.
- --name "Daily Content Pipeline" gives the job a human-readable name you can reference later.
Hermes confirms that the cron job was created. You should see the job name and its schedule in the output.
Seeing a syntax error?
The most common cause is a missing or mismatched quotation mark. The command has three quoted sections: the cron expression, the prompt text, and the job name. Make sure each opens and closes correctly.
Help me fix my /cron add command in Hermes.
Test the pipeline
The cron job is set to run at 8 AM tomorrow, but you do not need to wait. You can trigger it immediately to verify everything works end to end.
Before you trigger the job, think about what you expect to be different this time. In the previous step, every platform got the exact same caption. What should change now that the caption-writer skill is loaded?
- Trigger the cron job immediately by entering this command:
/cron run Daily Content Pipeline
Watch your terminal. Hermes generates the content, calls Pollinations to create an image and a video clip, writes three different captions, and pushes everything to your Buffer queue. This takes a minute or two depending on video generation time.
What should I see?
Hermes works through the prompt step by step. You should see it call the Pollinations image and video tools, then draft three distinct captions, then push each version to Buffer. The chat output shows tool calls and confirmations as it goes.
- Open buffer.com in your browser.
- Check your queue for all 3 channels: Facebook, Instagram, and TikTok.
You should see the new post sitting in your queue for all 3 channels. This time, each platform has a different caption. Facebook has a conversational 2-3 sentence caption ending with a question. Instagram has a hook line, value points, and 5-8 hashtags. TikTok has a punchy, emoji-heavy caption with trending hashtags. The AI-generated image or video clip is attached to each version.
Post not appearing in Buffer?
Go back to your Hermes chat output and look for error messages from the Buffer tool calls. If the Buffer MCP returned an authentication error, your API key may have expired or been entered incorrectly. Re-check the key in your Hermes config file at ~/.hermes/config.yaml.
Also check that your Buffer Free plan has not hit its scheduling limit. The Free plan allows 10 scheduled posts per channel. If you already have posts queued from the previous step, you may need to publish or delete some to make room.
Help me debug why my Hermes cron job is not pushing posts to Buffer.
What about the captions looking the same?
If all three captions still look identical, the caption-writer skill may not have loaded properly in the cron session. Run /skills search caption-writer to confirm it is installed. Then try running the cron job again.
Your content pipeline is now fully automated. Every morning at 8 AM, Hermes generates fresh content with AI visuals and platform-specific captions, then queues it to Buffer across all 3 channels. All you need to do is review and approve from your Buffer dashboard before it goes live.
Secret mission
Build a Full Week Content Campaign
Your pipeline handles one post at a time. Can you scale it into a full 7-day content campaign with varied content types, a coherent theme, and platform-native formatting across all your channels?
Clean Up Your Resources
Clean Up Your Resources
This project runs a mix of local tools and free cloud services. Decide whether to keep your resources running, pause them to come back later, or delete them entirely.
Watch your LLM provider usage
If you configured Nous Portal (subscription) or an Anthropic API key (pay-per-token), your cron job will consume tokens every time it runs. Leaving the daily cron active means a new content generation run every morning at 8 AM. Pause or remove the cron job if you want to stop incurring charges.
Resources you used:
- Hermes Agent installed at ~/.hermes (local, no ongoing cost).
- Nous Portal subscription or Anthropic API key (ongoing cost when the cron job or chat sessions consume tokens).
- Buffer free account with Facebook, Instagram, and TikTok connected (free, no ongoing cost).
- Daily Content Pipeline cron job running at 0 8 * * * (triggers token usage each run).
- Installed skills: caption-writer and social-media-content-calendar.
Keep everything running
No action needed. Choose this if you are still actively creating and scheduling content through your pipeline.
- Your cron job will continue generating and queuing content to Buffer daily at 8 AM.
- Review and approve posts from your Buffer dashboard before they publish.
- Monitor your Nous Portal or Anthropic API usage to avoid unexpected charges.
Pause - I'll come back to this later
Stop the daily content generation to save on token usage while keeping everything installed for later.
- Pause the cron job by opening a Hermes chat and running:
- Your Buffer account and connected channels remain active. No action needed there.
- When you are ready to resume, run /cron resume Daily Content Pipeline in a Hermes chat.
/cron pause Daily Content Pipeline
Delete - I don't want to use this again
Remove all project resources and start fresh.
- Remove the cron job by opening a Hermes chat and running:
/cron remove Daily Content Pipeline
- Uninstall Hermes Agent by running this in your terminal:
hermes uninstall
What does hermes uninstall do?
This removes the Hermes binary and agent files. The uninstaller gives you the option to keep or remove your configuration files at ~/.hermes/. Choose to remove them if you want a clean slate.
- Disconnect your social channels from Buffer. Go to buffer.com and click your profile avatar.
- Click Channels from the menu on the left.
- Click the three-dot menu icon next to each channel (Facebook, Instagram, TikTok).
- Click Disconnect Channel.
- Type disconnect in the confirmation pop-up and click Disconnect Channel to confirm.
- Repeat for all 3 channels.
What about your Anthropic API key?
If you used an Anthropic API key, you can revoke it from your Anthropic console at console.anthropic.com. Navigate to your API keys and delete the key you created for this project. If you used Nous Portal, manage your subscription through the Nous Portal dashboard.
Nice Work!
Nice Work!
Nice work! You just built a fully automated AI content pipeline that generates social media posts with images, video clips, and platform-specific captions, then queues them across three channels without you lifting a finger.
You've learned how to:
- Connect MCP servers like Pollinations.ai and Buffer to Hermes Agent, giving your AI agent the ability to generate images, create video clips, and publish across Facebook, Instagram, and TikTok.
- Publish AI-generated content with platform-specific captions tailored for each social channel using the caption-writer skill, all from a single Hermes conversation.
- Automate the entire pipeline with a cron job that generates fresh content with AI visuals and queues it to Buffer on a daily schedule.
- Secret Mission: Built a full week content campaign using the social-media-content-calendar skill with varied content types and coherent theming across all three platforms.
Ready to quiz yourself?