Catalog
fairoosansar-coder/script-writing

fairoosansar-coder

script-writing

Generate the AI Talk Radio show script from research using the Interactions API.

v1.0LATEST
NewUpdated Oct 29, 2026

Script Writing

Generate a naturalistic, multi-character radio show script directly via the LLM. The script features host Paul taking calls from people around the world, with advanced audio tags.

Embedded Script

python3 skills/script-writing/scripts/generate_script.py --workspace ./workspace --style debate

Arguments

Argument Default Description
--workspace workspace Root workspace directory
--style default Show format (see styles below)
--context "" Additional tone/style notes inferred from user prompts (e.g., "emphasize the technical details", "make it sound like a late night show"). Applies to ALL styles. Keep brief. Do NOT use to specify stories/topics.

Styles

Style Callers Format Use when user says...
debate 2 per topic, opposing views Structured back-and-forth, Paul moderates "opposing views", "debate", "both sides"
roundtable 3-4, different angles Collaborative discussion, callers build on each other "roundtable", "panel", "discussion"
interview 1-2 with direct experience Q&A format, Paul asks probing questions "interview", "deep dive", "expert"
explainer 2-3, each explains an aspect Teach the audience, Paul asks clarifying questions "explain", "break it down", "what is"
default Same as debate Default when no style specified (anything else)

Examples

# HN discussion with opposing views, applying context
python3 skills/script-writing/scripts/generate_script.py \
  --workspace ./workspace --style debate --context "make it sound like a late night show"

# Panel discussion about a GitHub repo with context notes
python3 skills/script-writing/scripts/generate_script.py \
  --workspace ./workspace --style roundtable --context "emphasize the performance improvements"

# Interview with an expert about a paper
python3 skills/script-writing/scripts/generate_script.py \
  --workspace ./workspace --style interview

# Explain a new technology
python3 skills/script-writing/scripts/generate_script.py \
  --workspace ./workspace --style explainer

What it does

  1. Reads all research from {workspace}/data/research/*.md.
  2. Builds a system prompt with the base format rules + style-specific caller/structure instructions.
  3. Calls Gemini via the Interactions API (client.interactions.create()).
  4. Saves the script to {workspace}/data/script.md.

Dependencies

  • google-genai (>= 2.0.0)

Output

  • Script File: {workspace}/data/script.md
  • Format: Plain text, each line starting with Speaker: dialogue

Cast

Speaker Role Personality
Paul Host Professional but relatable British moderator
Callers Call-ins Amateur, rough, natural — from various cities around the world

Script Format Rules

  • Every line: SpeakerName: [audio tag] Dialogue text
  • Must include audio tags in square brackets (e.g., [sighs], [excitedly]).
  • Callers should sound amateurish (include "uh", "like", natural pauses).
  • Short punchy sentences — spoken word, not prose.
  • ~450-500 words total (~3 minutes when spoken).
Files1
1 files · 11.0 KB

Select a file to preview

Overall Score

82/100

Grade

B

Good

Grades are signals, not a certification. Always review a skill yourself before use.

Safety

80

Quality

86

Clarity

83

Completeness

75

Summary

This skill generates a multi-character radio show script from research materials using the Gemini Interactions API. The script features a host (Paul) and multiple callers in various formats (debate, roundtable, interview, explainer). The skill reads research from a workspace directory, constructs a system prompt with style-specific instructions, calls the LLM, and saves the output to a script file.

Detected Capabilities

file read (research markdown files)file write (output script)LLM API call (Gemini Interactions API)command-line argument parsingenvironment variable access (GEMINI_API_KEY)

Trigger Keywords

Phrases that agents use to match this skill to user intent.

generate radio scriptwrite show transcriptcreate debate formatpanel discussion scriptinterview podcast scriptroundtable discussionexplainer scriptmultilingual dialogue

Risk Signals

INFO

Environment variable read for API key (GEMINI_API_KEY)

scripts/generate_script.py:141
INFO

File reads from workspace/data/research/ directory

scripts/generate_script.py:154-160
INFO

File write to workspace/data/script.md

scripts/generate_script.py:187-189
WARNING

Fallback 'dummy-key' for missing API key

scripts/generate_script.py:141

Referenced Domains

External domains referenced in skill content, detected by static analysis.

www.apache.org

Use Cases

  • Generate debate-format radio scripts with opposing callers
  • Create panel discussion scripts from multiple research sources
  • Produce interview-style scripts with expert callers
  • Write educational explainer scripts with collaborative callers
  • Generate scripts in multiple languages (English, Tamil, Sinhala)
  • Transform research articles into naturalistic dialogue
  • Create audio-production-ready scripts with speaker tags and audio directions

Quality Notes

  • Clear structure with well-documented script format rules and cast definitions
  • Comprehensive style documentation with specific caller counts and structural guidance
  • Good default behavior (style='default' maps to debate)
  • Well-commented Python code with usage examples in docstring
  • Proactive content safety guardrails (profanity, politics, religion, etc.) embedded in base prompt
  • Multilingual support (English, Tamil, Sinhala) with language-specific prompt amendments
  • Dynamic word count and duration calculation based on arguments
  • Appropriate error handling for missing research files
  • Accent and gender tags documented to enable audio production
  • Hacker News credit automatically included when relevant
  • Context argument properly scoped to prevent topic/story injection
Model: claude-haiku-4-5-20251001Analyzed: Oct 29, 2026

Reviews

Add this skill to your library to leave a review.

No reviews yet

Be the first to share your experience.

Use fairoosansar-coder/script-writing in your dev environment

Command Palette

Search for a command to run...