[PR #136] [CLOSED] - #157

Closed
opened 2026-02-27 10:22:27 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/mikeyobrien/ralph-orchestrator/pull/136
Author: @Konstantin-Babushkin
Created: 1/30/2026
Status: Closed

Base: mainHead: claude/club-residency-story-NeT0x


📝 Commits (10+)

  • 20fbde2 feat: add content ideation directory structure
  • 08849bc feat: add example avatar profile (Myla)
  • 719cf87 feat: add prompt templates for content ideation
  • d7aa0c3 feat: add content-ideation preset config
  • e1d42cf feat: add planner hat to content-ideation preset
  • cd1c391 feat: add creator hats (trend/story/contrarian) to preset
  • cb0c871 feat: add reviewer hats (audience/brand/critic) to preset
  • 13d97f8 feat: add completion checker to content-ideation preset
  • 0063a4c feat: add ideate CLI wrapper script
  • 9b6ac51 docs: add content ideation section to main README

📊 Changes

34 files changed (+5477 additions, -0 deletions)

View changed files

.env.example (+9 -0)
📝 .gitignore (+11 -0)
.heygen/heygen_service.py (+396 -0)
.ideation/.gitignore (+12 -0)
.ideation/IMAGE-WORKFLOW.md (+295 -0)
.ideation/README.md (+200 -0)
.ideation/archive/.gitkeep (+0 -0)
.ideation/ideate (+383 -0)
.ideation/input/.gitkeep (+0 -0)
.ideation/input/avatar.yaml (+17 -0)
.ideation/output/.gitkeep (+0 -0)
.ideation/preset-images.yml (+453 -0)
.ideation/preset.yml (+340 -0)
.ideation/templates/.gitkeep (+0 -0)
.ideation/templates/README.md (+15 -0)
.ideation/templates/avatar/avatar-schema.md (+24 -0)
.ideation/templates/avatar/myla.yaml (+17 -0)
.ideation/templates/late-night-techno.md (+19 -0)
.ideation/templates/trend-analysis.md (+21 -0)
📝 Cargo.lock (+46 -0)

...and 14 more files

📄 Description

Summary

This PR introduces two major features:

  1. HeyGen Text-to-Video Integration - A complete service for generating videos from images, scripts, and voices using the HeyGen API
  2. Content Ideation System - An AI-driven multi-agent pipeline for generating scored content ideas using Ralph orchestrator

Key Changes

HeyGen Video Generation (.heygen/heygen_service.py)

  • HeygenTextToVideo class manages the complete video generation workflow:
    • Enables ElevenLabs voices in HeyGen
    • Uploads images to HeyGen
    • Generates videos from images + scripts + voice
    • Polls for completion with configurable timeout
    • Downloads and stores generated videos/thumbnails to GCP
  • HeygenApi class wraps HeyGen REST API endpoints for voices, asset uploads, video creation, and status checks
  • Comprehensive error handling and status tracking via Redis
  • Database integration for persisting generated assets

Content Ideation System (.ideation/)

  • Main executable (.ideation/ideate) - Bash CLI for managing ideation workflows
  • Presets - Ralph orchestrator configurations for multi-agent pipeline:
    • Planner, Trend Spotter, Storyteller agents generate ideas
    • Audience & Brand Reviewer, Critic agents score ideas
    • Completion when 3+ ideas reach avg score ≥ 8.0
  • Templates - Avatar profiles and prompt templates for customization
  • Image-based ideation - Support for generating video scripts paired with specific images
  • Archiving - Automatic timestamped archives of runs with passing/failing idea splits
  • Documentation - Comprehensive guides (README.md, IMAGE-WORKFLOW.md)

Configuration & Environment

  • .env.example - HeyGen API configuration template
  • Updated .gitignore - Excludes ideation runtime files while preserving templates and bin/ directory

Notable Implementation Details

  • Async/await throughout - HeyGen service uses async httpx for non-blocking API calls
  • Redis-backed status tracking - Real-time progress updates for long-running video generation
  • Portable bash scripting - ideate CLI works on macOS and Linux with no external dependencies (yq, etc.)
  • Image-aware ideation - Content ideas can be linked to specific images with timing information for video production
  • Graceful degradation - Comprehensive error messages guide users through setup and troubleshooting

Files Added

  • .env.example - Environment configuration template
  • .heygen/heygen_service.py - HeyGen integration service
  • .ideation/ideate - Main CLI executable
  • .ideation/preset.yml - Ralph orchestrator configuration
  • .ideation/preset-images.yml - Image-based ideation configuration
  • .ideation/README.md - System documentation
  • .ideation/IMAGE-WORKFLOW.md - Image-based ideation guide
  • .ideation/input/avatar.yaml - Default avatar profile
  • .ideation/templates/ - Avatar and prompt templates
  • .ideation/.gitignore - Ideation-specific ignore rules

Files Modified

  • .gitignore - Added ideation runtime and bin/ directory rules

https://claude.ai/code/session_0114wqpubz2wmEyYXd9QNgT1


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/mikeyobrien/ralph-orchestrator/pull/136 **Author:** [@Konstantin-Babushkin](https://github.com/Konstantin-Babushkin) **Created:** 1/30/2026 **Status:** ❌ Closed **Base:** `main` ← **Head:** `claude/club-residency-story-NeT0x` --- ### 📝 Commits (10+) - [`20fbde2`](https://github.com/mikeyobrien/ralph-orchestrator/commit/20fbde205f2d6158e314e08c73323778189059ff) feat: add content ideation directory structure - [`08849bc`](https://github.com/mikeyobrien/ralph-orchestrator/commit/08849bcb967126e1ccf8851faa98b12a6e73d80e) feat: add example avatar profile (Myla) - [`719cf87`](https://github.com/mikeyobrien/ralph-orchestrator/commit/719cf87674dc208ec2bb7805a04400cd3f7e0c55) feat: add prompt templates for content ideation - [`d7aa0c3`](https://github.com/mikeyobrien/ralph-orchestrator/commit/d7aa0c371b7bee105f0d50402de2f1ccfc5e5315) feat: add content-ideation preset config - [`e1d42cf`](https://github.com/mikeyobrien/ralph-orchestrator/commit/e1d42cf90bcb5680e83820fb31db13b92b50145f) feat: add planner hat to content-ideation preset - [`cd1c391`](https://github.com/mikeyobrien/ralph-orchestrator/commit/cd1c39166ba911ecfdad6440d95238959aa46b0a) feat: add creator hats (trend/story/contrarian) to preset - [`cb0c871`](https://github.com/mikeyobrien/ralph-orchestrator/commit/cb0c871f81c244eb0d59335a5d2e48103f06431a) feat: add reviewer hats (audience/brand/critic) to preset - [`13d97f8`](https://github.com/mikeyobrien/ralph-orchestrator/commit/13d97f89b2e76826847697f6aaf3d106e6ae488a) feat: add completion checker to content-ideation preset - [`0063a4c`](https://github.com/mikeyobrien/ralph-orchestrator/commit/0063a4c9cc7c29dfe587b8a9990e415bf9852ba0) feat: add ideate CLI wrapper script - [`9b6ac51`](https://github.com/mikeyobrien/ralph-orchestrator/commit/9b6ac51f4e35b5b76cbad25c97fbe1d2a4db679f) docs: add content ideation section to main README ### 📊 Changes **34 files changed** (+5477 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `.env.example` (+9 -0) 📝 `.gitignore` (+11 -0) ➕ `.heygen/heygen_service.py` (+396 -0) ➕ `.ideation/.gitignore` (+12 -0) ➕ `.ideation/IMAGE-WORKFLOW.md` (+295 -0) ➕ `.ideation/README.md` (+200 -0) ➕ `.ideation/archive/.gitkeep` (+0 -0) ➕ `.ideation/ideate` (+383 -0) ➕ `.ideation/input/.gitkeep` (+0 -0) ➕ `.ideation/input/avatar.yaml` (+17 -0) ➕ `.ideation/output/.gitkeep` (+0 -0) ➕ `.ideation/preset-images.yml` (+453 -0) ➕ `.ideation/preset.yml` (+340 -0) ➕ `.ideation/templates/.gitkeep` (+0 -0) ➕ `.ideation/templates/README.md` (+15 -0) ➕ `.ideation/templates/avatar/avatar-schema.md` (+24 -0) ➕ `.ideation/templates/avatar/myla.yaml` (+17 -0) ➕ `.ideation/templates/late-night-techno.md` (+19 -0) ➕ `.ideation/templates/trend-analysis.md` (+21 -0) 📝 `Cargo.lock` (+46 -0) _...and 14 more files_ </details> ### 📄 Description ## Summary This PR introduces two major features: 1. **HeyGen Text-to-Video Integration** - A complete service for generating videos from images, scripts, and voices using the HeyGen API 2. **Content Ideation System** - An AI-driven multi-agent pipeline for generating scored content ideas using Ralph orchestrator ## Key Changes ### HeyGen Video Generation (`.heygen/heygen_service.py`) - `HeygenTextToVideo` class manages the complete video generation workflow: - Enables ElevenLabs voices in HeyGen - Uploads images to HeyGen - Generates videos from images + scripts + voice - Polls for completion with configurable timeout - Downloads and stores generated videos/thumbnails to GCP - `HeygenApi` class wraps HeyGen REST API endpoints for voices, asset uploads, video creation, and status checks - Comprehensive error handling and status tracking via Redis - Database integration for persisting generated assets ### Content Ideation System (`.ideation/`) - **Main executable** (`.ideation/ideate`) - Bash CLI for managing ideation workflows - **Presets** - Ralph orchestrator configurations for multi-agent pipeline: - Planner, Trend Spotter, Storyteller agents generate ideas - Audience & Brand Reviewer, Critic agents score ideas - Completion when 3+ ideas reach avg score ≥ 8.0 - **Templates** - Avatar profiles and prompt templates for customization - **Image-based ideation** - Support for generating video scripts paired with specific images - **Archiving** - Automatic timestamped archives of runs with passing/failing idea splits - **Documentation** - Comprehensive guides (README.md, IMAGE-WORKFLOW.md) ### Configuration & Environment - `.env.example` - HeyGen API configuration template - Updated `.gitignore` - Excludes ideation runtime files while preserving templates and bin/ directory ## Notable Implementation Details - **Async/await throughout** - HeyGen service uses async httpx for non-blocking API calls - **Redis-backed status tracking** - Real-time progress updates for long-running video generation - **Portable bash scripting** - ideate CLI works on macOS and Linux with no external dependencies (yq, etc.) - **Image-aware ideation** - Content ideas can be linked to specific images with timing information for video production - **Graceful degradation** - Comprehensive error messages guide users through setup and troubleshooting ## Files Added - `.env.example` - Environment configuration template - `.heygen/heygen_service.py` - HeyGen integration service - `.ideation/ideate` - Main CLI executable - `.ideation/preset.yml` - Ralph orchestrator configuration - `.ideation/preset-images.yml` - Image-based ideation configuration - `.ideation/README.md` - System documentation - `.ideation/IMAGE-WORKFLOW.md` - Image-based ideation guide - `.ideation/input/avatar.yaml` - Default avatar profile - `.ideation/templates/` - Avatar and prompt templates - `.ideation/.gitignore` - Ideation-specific ignore rules ## Files Modified - `.gitignore` - Added ideation runtime and bin/ directory rules https://claude.ai/code/session_0114wqpubz2wmEyYXd9QNgT1 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 10:22:27 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ralph-orchestrator#157
No description provided.