Skip to main content

AI Daily News Show

End-to-end orchestrator for daily AI news show production: crawl → rank → script → capture → voice → video → publish.

CLI Quickstart

praisonai recipe run ai-daily-news-show \
  --input '{"date": "2024-12-29", "max_stories": 3}' \
  --json

Use in Your App (SDK)

import sys
sys.path.insert(0, 'agent_recipes/templates/ai-daily-news-show')
from tools import run_pipeline, check_stage_status, resume_pipeline

# Run full pipeline
result = run_pipeline(
    date="2024-12-29",
    sources=["hackernews", "reddit", "arxiv"],
    max_stories=3,
    human_approval=False
)

# Check stage status
status = check_stage_status(
    output_dir="./daily_show_20241229",
    stage="script"
)

# Resume after approval
resumed = resume_pipeline(
    output_dir="./daily_show_20241229",
    approved_items=[0, 1, 2]
)

Input Schema

{
  "type": "object",
  "properties": {
    "date": {"type": "string"},
    "sources": {"type": "array"},
    "max_stories": {"type": "integer", "default": 3},
    "human_approval": {"type": "boolean", "default": false}
  }
}

Output Schema

{
  "status": "complete",
  "output_dir": "./daily_show_20241229",
  "bundle": {...},
  "scripts": [...],
  "voiceovers": [...],
  "pipeline_log": {...}
}

Pipeline Stages

StageRecipe UsedDescription
crawlai-news-crawlerGather news from sources
dedupeai-news-deduperRemove duplicates
rankai-signal-rankerRank by signals
enrichai-context-enricherAdd context
select-Select top stories
scriptai-script-writerGenerate scripts
captureai-screenshot-captureCapture visuals
voiceoverai-voiceover-generatorGenerate audio
videoai-broll-builderBuild B-roll
mergeai-video-mergerCombine audio/video
bundleai-publisher-packCreate packages

Human Approval

Set human_approval: true to pause at the story selection stage for manual review.

Environment Variables

VariableRequiredDescription
OPENAI_API_KEYYesFor all AI features
TAVILY_API_KEYOptionalFor web search

Dependencies

pip install praisonai praisonai-tools playwright
playwright install chromium
brew install ffmpeg  # macOS