doodle top mobile

Automate LinkedIn with Hermes Agent

Schedule professional posts, create image carousels, manage company page content, and grow your LinkedIn presence β€” all from the command line or through your AI agent.

Setup GuideGitHub

Please make sure there is always a human in the loop.

doodle left mobiledoodle right mobile

Post to LinkedIn in Seconds

Terminal

# Install the skill
npx skills add gitroomhq/postiz-agent

# Set your API key
export POSTIZ_API_KEY=your_api_key

# Find your LinkedIn integration
postiz integrations:list

# Upload carousel images
SLIDE1=$(postiz upload slide1.png | jq -r '.path')
SLIDE2=$(postiz upload slide2.png | jq -r '.path')
SLIDE3=$(postiz upload slide3.png | jq -r '.path')

# Schedule a LinkedIn carousel post
postiz posts:create \
  -c "Excited to share our Q1 results! Swipe through for the highlights." \
  -m "$SLIDE1" -m "$SLIDE2" -m "$SLIDE3" \
  -s "2025-01-15T09:00:00Z" \
  --settings '{"post_as_images_carousel":true,"carousel_name":"Q1 Results"}' \
  -i "your-linkedin-integration-id"

LinkedIn-Specific Features

πŸ’Ό

Professional Posts

Publish polished text posts with hashtags, mentions, and links. Perfect for thought leadership and industry insights.

πŸ–Ό

Image Carousels

Turn multiple images into a swipeable carousel post. Great for slide decks, infographics, and visual storytelling.

🏒

Company Pages

Post as your company page using the linkedin-page type. Manage brand content alongside personal profiles.

πŸ“Š

Analytics Tracking

Track post performance with Postiz analytics. Monitor impressions, engagement, and reach across your LinkedIn content.

πŸ“·

Media Attachments

Attach images, documents, and videos to your posts. Upload through Postiz for seamless media management.

πŸ“…

Scheduled Posting

Schedule posts with precise timestamps. Plan your LinkedIn content calendar weeks in advance and let Postiz handle publishing.

How It Works

1

Find Your LinkedIn Integration

List your connected accounts and grab your LinkedIn integration ID. You can also fetch available settings to see what options are supported.

Discovery

# List all integrations
postiz integrations:list

# Filter for LinkedIn
postiz integrations:list | jq \
  '.[] | select(.identifier=="linkedin")'

# Get LinkedIn settings schema
postiz integrations:settings <linkedin-id>
2

Upload Your Media

Upload images for your carousel or single-image posts. Each upload returns a public URL that you can pass to the post creation command.

Upload

# Upload images and extract URLs
SLIDE1=$(postiz upload slide1.png | jq -r '.path')
SLIDE2=$(postiz upload slide2.png | jq -r '.path')

echo $SLIDE1
# https://uploads.postiz.com/slide1.png

echo $SLIDE2
# https://uploads.postiz.com/slide2.png
3

Create Your Post

Schedule a LinkedIn post with your content, images, and platform-specific settings like carousel mode and carousel naming.

Post Creation

postiz posts:create \
  -c "5 lessons from scaling to 10k users" \
  -m "$SLIDE1" -m "$SLIDE2" \
  -s "2025-03-01T09:00:00Z" \
  --settings '{
    "post_as_images_carousel": true,
    "carousel_name": "Scaling Lessons"
  }' \
  -i "linkedin-id"

LinkedIn Settings Reference

Every LinkedIn post accepts these platform-specific settings via the --settings flag.

FieldTypeDescription
__typestringMust be "linkedin" (personal) or "linkedin-page" (company page)
post_as_images_carouselbooleanPost multiple images as a carousel. Default: false
carousel_namestringDisplay name for the carousel (shown in LinkedIn UI)

Common Configurations

Copy-paste these settings for common LinkedIn posting scenarios.

Simple Text Post (Personal Profile)

settings.json

{
  "__type": "linkedin"
}

Image Carousel with Title

settings.json

{
  "__type": "linkedin",
  "post_as_images_carousel": true,
  "carousel_name": "Weekly Insights"
}

Company Page Post

settings.json

{
  "__type": "linkedin-page"
}

Company Page Carousel

settings.json

{
  "__type": "linkedin-page",
  "post_as_images_carousel": true,
  "carousel_name": "Product Roadmap Q2"
}

What is Hermes Agent?

Hermes Agent is an open-source AI agent framework by Nous Research β€” β€œthe agent that grows with you.” It's a flexible platform for building and running AI agents that can execute real-world tasks.

🌱

Grows With You

Hermes Agent learns and adapts to your workflows over time. The more you use it, the better it understands your social media strategy and content style.

πŸ”§

Open-Source Framework

Built by Nous Research, Hermes Agent is fully open-source. Customize and extend it to fit your exact social media automation needs.

⚑

Tool Execution

Hermes Agent can execute CLI tools directly. Install Postiz Agent and Hermes will discover and use all available commands autonomously.

How Postiz Works with Hermes Agent

Hermes Agent discovers Postiz through its tool execution framework. Once Postiz Agent is installed, Hermes reads the available commands and can autonomously manage your social media workflow.

  • βœ“Install Postiz Agent globally with npx skills add
  • βœ“Hermes Agent discovers Postiz through tool execution framework
  • βœ“POSTIZ_API_KEY must be set in environment
  • βœ“All Postiz commands become available as agent tools
  • βœ“Works with any compatible LLM backend

Install Postiz

# Install the Postiz skill
npx skills add gitroomhq/postiz-agent

# Set your API key
export POSTIZ_API_KEY=your_api_key

# Hermes Agent discovers Postiz
# through its tool execution framework
hermes tools list

LinkedIn Posting with Hermes Agent

Hermes Agent reads Postiz commands through its tool system, discovers your integrations, and handles the entire posting workflow β€” from content creation to scheduling.

🧠

From Any Chat App

Hermes Agent reads Postiz commands throu...

Send a message to Hermes Agent from your favorite chat app. It runs as a persistent daemon on your machine, so it picks up your message, discovers your LinkedIn account via Postiz, uploads your images, and schedules the post β€” all while you go about your day.

Hermes Agent

You: Post to LinkedIn about our new
  feature launch, schedule for tomorrow
  at 9am

Hermes: I'll handle that! Let me:
  1. Find your LinkedIn integration
  2. Compose your post content
  3. Schedule for tomorrow 9:00 AM

  Done! Post scheduled successfully.
  Post ID: abc-123
🧠

Scheduled & Proactive

Hermes Agent supports scheduled tas...

Hermes Agent supports cron-based heartbeat tasks. Set up a recurring job that checks for new content and posts it to LinkedIn automatically β€” no manual trigger needed.

hermes-config.yaml

scheduled_tasks:
  - name: daily_social_posts
    schedule: "0 9 * * 1-5"
    prompt: |
      Check ~/content/posts for new
      .txt files. For each one, read
      the content and schedule a post
      to LinkedIn for today at noon.
      Move posted files to
      ~/content/published.

Why Hermes Agent + Postiz for LinkedIn

Hermes Agent makes Postiz a natural fit for your LinkedIn workflow. The agent discovers all available commands and autonomously chains them together.

  • βœ“Open-source and fully customizable for your LinkedIn workflow
  • βœ“Grows and adapts to your content strategy over time
  • βœ“Tool execution framework discovers Postiz commands automatically
  • βœ“Scheduled tasks for hands-free daily posting
  • βœ“Cross-post to LinkedIn + other platforms in a single conversation
  • βœ“Works with any LLM backend β€” not locked to a single provider

SKILL.md (auto-discovered)

---
name: postiz
description: Social media automation
  CLI for scheduling posts across
  30+ platforms including LinkedIn
metadata:
  hermes-agent:
    requirements:
      env:
        - POSTIZ_API_KEY
      binaries:
        - postiz
---

# Available Commands
- postiz integrations:list
- postiz integrations:settings <id>
- postiz posts:create
- postiz upload <file>
- postiz analytics:platform <id>

# LinkedIn Settings
__type, post_as_images_carousel,
carousel_name

Also Works with Claude Code

Postiz Agent works as a CLI tool with any AI agent that can execute shell commands β€” including Anthropic's Claude Code.

C

Claude Code

by Anthropic

Claude reads the SKILL.md file to learn all available Postiz commands, then autonomously discovers your LinkedIn integration, uploads your images, creates a carousel if needed, and schedules the post.

Claude Code

> Create a LinkedIn carousel from my
  slide deck images, schedule for
  tomorrow morning

Claude will automatically run:
  postiz integrations:list
  postiz upload ./slide1.png
  postiz upload ./slide2.png
  postiz upload ./slide3.png
  postiz posts:create \
    -c "Key takeaways from Q1..." \
    -m "slide1-url" -m "slide2-url" \
    -m "slide3-url" \
    -s "2025-03-02T09:00:00Z" \
    --settings '{"post_as_images_carousel":
      true,"carousel_name":
      "Q1 Takeaways"}' \
    -i "linkedin-id"

LinkedIn + Other Platforms

Schedule the same content to LinkedIn and other platforms in a single command. Each platform gets its own settings.

Terminal

# Post to LinkedIn and X simultaneously
postiz posts:create \
  -c "Excited to announce our new feature! Check it out." \
  -s "2025-03-01T09:00:00Z" \
  --settings '{}' \
  -i "linkedin-id,x-id"

# Batch schedule a week of LinkedIn content
for day in 1 2 3 4 5; do
  postiz posts:create \
    -c "Day $day insight! #leadership #growth" \
    -s "2025-03-0${day}T08:00:00Z" \
    --settings '{}' \
    -i "linkedin-id"
done

Account Types

Personal Profile

linkedin

Company Page

linkedin-page

Start posting to LinkedIn

Install Postiz Agent and automate your LinkedIn content strategy with AI-powered scheduling and publishing.

Ready to get started?

Grow your social media presence with Postiz.
Schedule, analyze, and engage with your audience.

Grow your social media presence with Postiz.