AI-Powered Social Media Automation

5-platform social media automation with integrated profile management. Deploy to Twitter, Reddit, YouTube, Bluesky, and Instagram with intelligent content optimization and AI-generated profiles. One command setup, complete automation.

5 Platforms
100% AI-Powered
100% Free & OSS
95% Type Safe
100% Tested & Production Ready

Get Started in 15 Seconds

# 1. Install AetherPost
pip install aetherpost

# 2. Create campaign.yaml (pre-configure settings)
# 3. Create .env.aetherpost (add API keys)

# 4. Auto-initialize with profile generation
aetherpost init

# 5. Preview and deploy
aetherpost plan
aetherpost apply

💡 For Claude Code & AI Tools: Pre-create campaign.yaml and .env.aetherpost files. AetherPost will auto-detect, skip prompts, and auto-generate profiles.

🎯 Platform Flexibility: Choose any combination of platforms - you don't need all 5. Start with 1-2 platforms and expand as needed.

📱 New in v1.6.0: Automatic profile generation and application during init. Multi-URL support for better content optimization.

# 1. Install AetherPost
pip install aetherpost

# 2. Interactive setup with profile generation
aetherpost init

# 3. Preview and deploy
aetherpost plan
aetherpost apply

📝 For Manual Setup: AetherPost will guide you through project setup, API collection, platform configuration, and automatic profile generation.

🎯 Platform Choice: Select only the platforms you want to use. Start small with Bluesky + Reddit, then add YouTube, Instagram, or Twitter later.

📱 Profile Integration: Profiles are automatically generated and applied during setup - no separate commands needed.

⚠️ Twitter/X Note: Twitter now requires a paid API plan ($100/month minimum). We recommend starting with Bluesky (free) for social media automation.

AI-Generated Campaign Example

1

Define Your Campaign

name: "AI Product Launch"
concept: "Revolutionary AI productivity app"
urls:
  main: https://myapp.com
  github: https://github.com/user/myapp
  docs: https://myapp.com/docs
platforms: [bluesky, reddit]  # Start with 2 platforms
content:
  style: professional
  ai_enhanced: true
  hashtags: ["AI", "productivity"]
2

AI Generates Content

$ aetherpost plan
📋 Campaign Preview
✅ Bluesky: "🚀 Introducing revolutionary AI productivity app..."
✅ Reddit: "Deep dive: How AI transforms productivity workflows..."
💡 Run 'aetherpost apply' to execute this campaign
3

Deploy Across Platforms

$ aetherpost apply
🚀 Campaign Execution
✅ Posted to Bluesky: https://bsky.app/...
✅ Posted to Reddit: r/programming
🎉 Successfully posted to 2/2 platforms!

Interactive Demo

Watch the complete workflow in action - from init to deployment

$ pip install aetherpost
$ aetherpost init
$ aetherpost plan
$ aetherpost apply
✅ Posted to 5 platforms successfully!
            

Terraform-Style Commands

🎯
aetherpost init

Initialize project with auto-dependency installation

📋
aetherpost plan

Preview AI-generated content for all platforms

🚀
aetherpost apply

Execute campaign across Bluesky, Reddit, YouTube, Instagram, Twitter*

🗑️
aetherpost destroy

Clean up and remove posted content

Why AetherPost is Production Ready

OpenAI Integration

GPT-3.5-turbo powered content generation with platform-specific optimization and intelligent hashtag selection.

AI Setup Guide →

5 Platforms. Your Choice.

Most comprehensive platform support: Bluesky, Reddit, YouTube, Instagram, Twitter*. Mix and match any combination. Start with 1, scale to all 5. Each platform intelligently optimized.

✅ Bluesky (decentralized, free) ✅ Reddit (subreddit targeting) ✅ YouTube (video concepts)
✅ Instagram (visual content) ✅ Twitter* (280 char - requires $100/mo paid plan)
Platform Guide →

Interactive Setup

Guided prompts for project concept, platforms, language, and style selection.

See Setup →

100% Type Safe

95% type coverage with comprehensive type hints, dataclasses, and robust error handling.

Dev Guide →

Quick & Automation Modes

Interactive setup by default, with --quick flag for CI/CD, cron jobs, and automated workflows.

Automation →

100% Tested

Comprehensive test suite with real API validation, ensuring production reliability.

Test Report →

Universal Profile Management

✨ New in v1.5.0! Sync your project's profile across all platforms automatically. One YAML config updates Twitter, Bluesky, Mastodon, Instagram & Discord profiles with platform-optimized content.

Profile Guide →

Technical Excellence

Refactored Architecture

  • Separated concerns with dedicated managers
  • PlatformConnectorManager for platform handling
  • PromotionCampaignManager for campaign logic
  • SelfPromotionCLI for user interface

Data Structures

  • Typed dataclasses: PromotionContent, PostResult
  • Enum classes: CampaignType for type safety
  • Comprehensive error handling with structured responses
  • Optional types for graceful degradation

API Integrations

  • OpenAI GPT-3.5-turbo with AsyncOpenAI client
  • Twitter API v2 with OAuth 1.0a authentication
  • YouTube Data API v3 with OAuth2 flow
  • Reddit PRAW library integration

Production Ready

  • 100% test coverage on core functionality
  • Non-interactive mode for automation
  • Robust error handling and logging
  • CI/CD compatible with exit codes

🤖 Claude Code & AI Tools Setup Guide

Quick Auto Setup

For automated project initialization

  1. Create campaign.yaml with project configuration
  2. Create .env.aetherpost with API keys
  3. Run aetherpost init (auto-detects files)
  4. Execute aetherpost plan && aetherpost apply

Result: Zero interactive prompts, instant setup

Required Files

Minimum files for auto-setup

  • campaign.yaml - Project settings & platforms
  • .env.aetherpost - API credentials

Optional:

  • README.md - Project documentation
  • .gitignore - Git ignore patterns

Configuration Templates

# campaign.yaml
name: "my-project"
concept: "Project description"
platforms: ["twitter", "reddit"]
content:
  style: professional
  language: en
notifications:
  enabled: true
  auto_apply: false

API Keys (Start Small)

# .env.aetherpost (Starter - $5/month)
OPENAI_API_KEY=sk-proj-xxx
TWITTER_API_KEY=xxx
TWITTER_API_SECRET=xxx
TWITTER_ACCESS_TOKEN=xxx
TWITTER_ACCESS_TOKEN_SECRET=xxx

# Add more platforms when ready:
# REDDIT_CLIENT_ID=xxx
# REDDIT_CLIENT_SECRET=xxx
# REDDIT_USERNAME=xxx
# REDDIT_PASSWORD=xxx

# YOUTUBE_CLIENT_ID=xxx
# YOUTUBE_CLIENT_SECRET=xxx

# BLUESKY_HANDLE=your_handle.bsky.social
# BLUESKY_PASSWORD=your_app_password

# INSTAGRAM_ACCESS_TOKEN=xxx
# INSTAGRAM_BUSINESS_ACCOUNT_ID=xxx

# SLACK_WEBHOOK_URL=https://hooks.slack.com/...

💡 Tip: Start with OpenAI + Bluesky (free), then uncomment and fill in other platforms as needed. Note: Twitter requires a paid API plan ($100/month).

🎯 Implementation Example for Claude Code

// 1. Create campaign.yaml based on project analysis
const campaignConfig = {
  name: projectName,
  concept: projectDescription,
  platforms: determinePlatforms(projectType),
  content: {
    style: 'professional',
    language: 'en'
  },
  notifications: {
    enabled: true,
    auto_apply: false  // Set to true for full automation
  }
};

// 2. Create .env.aetherpost template
const envTemplate = `OPENAI_API_KEY=\${OPENAI_API_KEY}
TWITTER_API_KEY=\${TWITTER_API_KEY}
TWITTER_API_SECRET=\${TWITTER_API_SECRET}
// ... other required keys`;

// 3. User adds API keys to .env.aetherpost

// 4. Auto-initialize
exec('aetherpost init');  // No prompts, instant setup

// 5. Execute campaign
exec('aetherpost plan && aetherpost apply');

🔑 API Requirements & Setup Levels

Choose your own adventure! AetherPost supports any combination of platforms. Start with just Bluesky (free), add Reddit for developer communities, then expand to YouTube, Instagram, or Twitter (paid) when ready. The interactive aetherpost init will guide you through the process.

🚀 Starter Level

Recommended for beginners

Required APIs:

  • OpenAI API - AI content generation ($0.002-0.06/1K tokens)
  • Twitter API v2 - Tweet posting (Free tier + $100/month high volume)

Setup Time:

~10 minutes

Perfect for:

Personal projects, quick announcements, basic automation

🎯 Advanced Level

Multi-platform

Required APIs:

  • OpenAI API - AI content generation
  • Twitter API v2 - Tweet posting
  • Reddit API - Subreddit posting
  • YouTube Data API v3 - Video management (Free quota)

Optional:

  • Slack/LINE - Preview notifications

Setup Time:

~30 minutes

Perfect for:

Content creators, comprehensive campaigns, brand building

🌟 Complete Level

Full power

Required APIs:

  • All previous APIs +
  • Bluesky API - Decentralized social posting (Free)
  • Instagram Graph API - Business account photo/reel/carousel posting (Free, rate limited)

Optional:

  • All notification services
  • Advanced analytics

Setup Time:

~45 minutes

Perfect for:

Enterprise use, maximum reach, professional campaigns

🛠️ Interactive Setup

Don't worry about setting everything up manually! Run aetherpost init and it will:

  • ✅ Guide you through API key collection step-by-step
  • ✅ Recommend the best setup level for your needs
  • ✅ Provide direct links to API setup pages
  • ✅ Validate your API keys automatically
  • ✅ Save everything securely to .env.aetherpost
  • ✅ Allow you to start simple and expand later

💰 Typical Monthly Costs

Starter: $5-15/month (OpenAI + Bluesky) Recommended: $5-15/month (Reddit is free!) Advanced: $10-25/month (+ YouTube quota) Complete: $10-25/month (Bluesky & Instagram are free!)

🔧 Detailed API Setup Guide

Step-by-step instructions for setting up each platform. Bookmark this section for reference during setup.

OpenAI API (Required)

Easy • 5 minutes

What you need:

  • OPENAI_API_KEY - Your OpenAI API key

Setup steps:

  1. Visit OpenAI API Keys
  2. Sign up or log in to your OpenAI account
  3. Click "Create new secret key"
  4. Copy the key (starts with sk-proj-)
  5. Add to .env.aetherpost: OPENAI_API_KEY=sk-proj-your-key
💰 Cost: $0.002-0.06 per 1K tokens (~$5-15/month typical usage)

Twitter API v2

Medium • 15 minutes

What you need:

  • TWITTER_API_KEY - Consumer API Key
  • TWITTER_API_SECRET - Consumer API Secret
  • TWITTER_ACCESS_TOKEN - Access Token
  • TWITTER_ACCESS_TOKEN_SECRET - Access Token Secret

Setup steps:

  1. Visit Twitter Developer Portal
  2. Apply for Twitter Developer Account
  3. Create a new App in your Developer Portal
  4. Generate API Keys & Tokens
  5. Set App permissions to "Read and Write"
  6. Add all 4 keys to .env.aetherpost
💰 Cost: Free tier + $100/month for high volume (15,000 tweets/month free)

Reddit API

Easy • 10 minutes

What you need:

  • REDDIT_CLIENT_ID - App ID
  • REDDIT_CLIENT_SECRET - App Secret
  • REDDIT_USERNAME - Your Reddit username
  • REDDIT_PASSWORD - Your Reddit password

Setup steps:

  1. Visit Reddit App Preferences
  2. Click "Create App" or "Create Another App"
  3. Choose "script" type
  4. Fill in name, description, redirect URI (can be http://localhost)
  5. Note the Client ID (under app name) and Secret
  6. Add credentials to .env.aetherpost
💰 Cost: Free! (60 requests per minute limit)

YouTube Data API v3

Advanced • 20 minutes

What you need:

  • YOUTUBE_CLIENT_ID - OAuth2 Client ID
  • YOUTUBE_CLIENT_SECRET - OAuth2 Client Secret

Setup steps:

  1. Visit Google Cloud Console
  2. Create a new project or select existing
  3. Enable YouTube Data API v3
  4. Go to Credentials → Create Credentials → OAuth 2.0 Client ID
  5. Configure OAuth consent screen (external)
  6. Download credentials JSON file
  7. Extract client_id and client_secret from JSON
💰 Cost: Free quota (10,000 units/day) + $0.002 per 100 units after

Bluesky AT Protocol

Easy • 5 minutes

What you need:

  • BLUESKY_HANDLE - Your handle (e.g., username.bsky.social)
  • BLUESKY_PASSWORD - App password (not main password)

Setup steps:

  1. Sign up at Bluesky if you haven't
  2. Go to Settings → Privacy and Security
  3. Scroll to "App Passwords"
  4. Click "Add App Password"
  5. Give it a name (e.g., "AetherPost")
  6. Copy the generated password
  7. Use your full handle (username.bsky.social) and app password
💰 Cost: Free! Decentralized social network

Instagram Graph API

Advanced • 30 minutes

What you need:

  • INSTAGRAM_ACCESS_TOKEN - Long-lived access token
  • INSTAGRAM_BUSINESS_ACCOUNT_ID - Business account ID

Setup steps:

  1. Convert your Instagram account to Business/Creator
  2. Connect to a Facebook Page
  3. Visit Facebook for Developers
  4. Create a Meta App
  5. Add Instagram Graph API product
  6. Get Page Access Token
  7. Exchange for long-lived token
  8. Get Instagram Business Account ID
💰 Cost: Free (rate limited, business account required)
⚠️ Note: Requires Instagram Business/Creator account and Facebook Page connection

Notifications (Optional)

Easy • 5 minutes each

Slack Webhook:

  1. Go to your Slack workspace settings
  2. Create a new Slack App
  3. Enable Incoming Webhooks
  4. Create a webhook for your channel
  5. Copy the webhook URL

LINE Notify:

  1. Visit LINE Notify
  2. Log in with your LINE account
  3. Generate a token for your target chat/group
  4. Copy the token
💰 Cost: Both free!

🎯 Setup Tips

Start Small

Begin with OpenAI + Twitter. Get comfortable with the workflow, then add Reddit, then expand to other platforms.

Test Each Platform

After adding API keys, use aetherpost plan to verify each platform is working before going live.

Secure Your Keys

Never commit .env.aetherpost to Git. Add it to .gitignore immediately. Treat API keys like passwords.

Rate Limits

Each platform has rate limits. AetherPost handles this automatically, but be aware for high-volume usage.

Real-World Examples

simple-start.yaml

name: "simple-start"
concept: "Developer-friendly social media automation platform"
platforms: [twitter, reddit]  # Perfect starter combo

content:
  style: casual
  action: "Try it free!"
  hashtags: ["#OpenSource", "#SocialMediaAutomation", "#Developer"]

promotion_themes:
  - "🚀 Open source social media automation for developers"
  - "🤖 AI-powered content generation with OpenAI integration"
  - "📱 Multi-platform posting: Twitter, Reddit, YouTube, Bluesky, Instagram"
  - "⚡ Simple CLI interface - no complex dashboards needed"

reddit_strategy:
  target_subreddits: ["programming", "Python", "opensource", "DevTools"]
  content_approach: "Focus on technical implementation details"

AI-Generated Results

full-platform-power.yaml

name: "Maximum Reach Campaign"
concept: "AI-powered productivity suite for modern teams"
platforms: [twitter, reddit, youtube, bluesky, instagram]  # All 5!

content:
  style: professional
  action: "Experience the future of work!"
  hashtags: ["#AI", "#Productivity", "#TeamWork", "#Innovation"]

platform_optimization:
  twitter: "Quick announcements & updates"
  reddit: "Technical discussions & community building" 
  youtube: "Product demos & tutorials"
  bluesky: "Decentralized community engagement"
  instagram: "Visual brand storytelling"

5-Platform Synchronized Launch

💡 Result: 5X wider reach across all major platforms simultaneously!

startup-launch.yaml

name: "TechStartup Launch"
concept: "Revolutionary AI productivity platform"
platforms: [twitter, youtube, reddit, bluesky, instagram]

content:
  style: professional
  action: "Join the beta!"
  ai_enhanced: true
  hashtags: ["startup", "ai", "productivity"]

schedule:
  type: recurring
  frequency: "daily"
  times: ["09:00", "13:00", "18:00"]

analytics: true

Generated Content

oss-release.yaml

name: "MyLibrary v2.0"
concept: "Open source library for developers"
platforms: [twitter, reddit, youtube, bluesky, instagram]

content:
  style: technical
  action: "Check it out on GitHub!"
  hashtags: ["opensource", "developer", "library"]

github:
  repository: "myuser/mylibrary"
  release_tag: "v2.0.0"

template: "oss-release"

Generated Content

Join the Community

Contribute Code

Help build the future of AI-powered social media automation. All skill levels welcome!

AI Integration

Enhance AI capabilities, improve content generation, or integrate new AI providers.

Platform Connectors

Add support for new social media platforms or improve existing integrations.

Try Live Demo

Test the interactive features and share your experience with the community!