research

Recopila material fuente para el programa de radio desde cualquier fuente de contenido: web, HN, GitHub, papers o temas generales.

npx skills add https://github.com/google-gemini/gemini-managed-agents-templates --skill research

Research

Gather source material for the radio show based on the user's prompt. The research strategy is agent-driven — you decide how to gather content based on what the user asks for.

Scripts

All research scripts live in skills/research/scripts/ and output to {workspace}/data/research/. They use only Python stdlib — no dependencies.

ScriptCommandSource
fetch_hn.pypython3 skills/research/scripts/fetch_hn.py --workspace ./workspace --top 6Hacker News
fetch_github.pypython3 skills/research/scripts/fetch_github.py --repo owner/repo --workspace ./workspaceGitHub repos
fetch_url.pypython3 skills/research/scripts/fetch_url.py --url https://... --workspace ./workspaceAny URL

Script Details

fetch_hn.py — Hacker News (two-phase)

Phase 1: Scan — grab top 10 story titles, scores, and comment counts (fast, no deep-diving):

python3 skills/research/scripts/fetch_hn.py --workspace ./workspace --mode scan --top 10

Output: {workspace}/data/research/hn-scan.md — a list of stories with IDs.

You read this file, pick the 2-3 most interesting stories for radio, then run phase 2.

When picking stories, SKIP anything related to politics, race, religion, international conflicts, historical controversies, gender/culture wars, or immigration. Stick to tech, programming, AI/ML, open source, science, startups, and developer culture.

Phase 2: Deep-dive — fetch full comment threads for the stories you picked:

python3 skills/research/scripts/fetch_hn.py --workspace ./workspace --mode deep-dive --stories 43210987,43209876

Output: {workspace}/data/research/hacker-news.md — full stories with top comments.

ArgumentDefaultDescription
--workspaceworkspaceRoot workspace directory
--mode(required)scan or deep-dive
--top10Number of stories to scan (scan mode only)
--stories(required for deep-dive)Comma-separated story IDs

fetch_github.py — GitHub Repository

python3 skills/research/scripts/fetch_github.py --repo googleapis/python-genai --workspace ./workspace

Accepts owner/repo or a full GitHub URL (https://github.com/owner/repo).

ArgumentDefaultDescription
--repo(required)GitHub repo (owner/repo or full URL)
--workspaceworkspaceRoot workspace directory
--releases5Number of releases to fetch
--issues8Number of top issues to fetch

What it does:

  1. Fetches repo metadata (stars, description, language).
  2. Fetches and decodes the README.
  3. Fetches recent releases with changelogs.
  4. Fetches top issues by comment count, including top comments.
  5. Outputs → {workspace}/data/research/github.md

Uses the GitHub REST API directly — no auth needed for public repos.

fetch_url.py — Any URL

python3 skills/research/scripts/fetch_url.py --url https://example.com/blog-post --workspace ./workspace
ArgumentDefaultDescription
--url(required)URL to fetch content from
--workspaceworkspaceRoot workspace directory
--max-chars8000Max chars to extract

What it does:

  1. Fetches the HTML page.
  2. Strips scripts, styles, nav, footer.
  3. Converts HTML to markdown-like text.
  4. Extracts title and meta description.
  5. Outputs → {workspace}/data/research/url_<safe_name>.md

Works for blog posts, documentation pages, arXiv abstracts, news articles, etc.

General Topic (no script — agent-driven)

If the user provides a topic without a specific source:

  • Use Google Search to find recent articles, blog posts, and discussions
  • Gather multiple perspectives and opposing viewpoints
  • Write the research markdown directly to {workspace}/data/research/

Output

  • Directory: {workspace}/data/research/
  • Format: One or more markdown files with structured content
  • All research must be saved here regardless of source — the script-writing step reads from this directory.

What to look for

When reviewing the research output, identify:

  • Consensus: What do most people agree on?
  • Debates: What are the key disagreements?
  • Contrarian takes: Any notable dissenting opinions?
  • Expert insights: Comments or quotes from people with domain expertise.
  • Emotional stories: Anything that would make compelling radio.

Más skills de google-gemini

agent-tui
google-gemini
Main Agents: Do NOT use this skill directly. If you need to test the TUI, invoke the `tui_tester` subagent. Drive terminal UI (TUI) applications…
gemini-api-cli
google-gemini
Guía para usar la herramienta CLI de la API de Gemini. Úsala cuando necesites interactuar con la API de Gemini a través de la línea de comandos, gestionar agentes o generar contenido multimedia (imágenes,…
behavioral-evals
google-gemini
Guía para crear, ejecutar, corregir y promover evaluaciones conductuales. Úsese al verificar la lógica de decisión del agente, depurar fallos, depurar indicaciones…
gemini-live-api-dev
google-gemini
Transmisión bidireccional en tiempo real con Gemini a través de WebSockets para conversaciones de audio, video y texto. Admite entrada/salida de audio (PCM de 16 kHz), fotogramas de video, texto y transcripciones automáticas con detección de actividad de voz para manejo de interrupciones. Incluye funciones de audio nativas: diálogo afectivo, audio proactivo y modo de pensamiento; llamada a funciones para uso sincrónico y asincrónico de herramientas; y fundamentación con Google Search. Ofrece gestión de sesiones con compresión de contexto, reanudación y...
gemini-omni-flash-api
google-gemini
Usa esta habilidad para edición generativa de video, texto a video, generación de video con referencia de imagen y animaciones de transición de primer fotograma a video utilizando el…
gemini-api-dev
google-gemini
Crea aplicaciones con los modelos Gemini de Google, compatible con contenido multimodal, llamadas a funciones y salidas estructuradas en Python, JavaScript, Go y Java. Accede a los modelos actuales Gemini 3 (Pro, Flash, Pro Image) con contexto de 1 millón de tokens; los modelos heredados Gemini 2.x y 1.5 están obsoletos. Admite generación de texto, comprensión de imágenes/audio/video, llamadas a funciones, salida JSON estructurada, ejecución de código, almacenamiento en caché de contexto y embeddings. SDKs oficiales disponibles: google-genai (Python),...
gemini-interactions-api
google-gemini
Interfaz unificada para modelos y agentes Gemini con estado del lado del servidor, transmisión y orquestación de herramientas. Soporta múltiples modelos actuales (gemini-3-flash-preview, gemini-3-pro-preview, gemini-2.5-flash/pro) y el agente Deep Research; sustituye automáticamente IDs de modelos obsoletos por alternativas actuales. Descarga el historial de conversación al servidor mediante previous_interaction_id para interacciones multi-turno con estado sin gestión manual del historial. Orquestación de herramientas integrada que incluye...
deliver
google-gemini
Publica una versión condensada del informe en un webhook entrante de Google Chat o Slack, de modo que el resumen diario se entregue solo — se omite silenciosamente cuando no hay un webhook…