em-capture-idea

SKILL.md

Capture Idea

Captura y organiza material para crear contenido después. Claude investiga y guarda, no genera posts.

Paso 1: Mostrar menú

Al invocar la skill, SIEMPRE muestra este menú primero:

📥 ¿Qué quieres capturar?

1. 🔗 URL - Capturar un tweet, video o artículo
2. 💡 Idea - Escribir una idea propia
3. 🔖 Bookmarks - Exportar tus bookmarks de Twitter
4. 🔥 Trending - Ver qué es tendencia y elegir qué guardar
5. 📰 News - Ver noticias de actualidad y elegir

Escribe el número o pega directamente una URL.

Si el usuario:

  • Escribe 1 → Pregunta: "Pega la URL:"
  • Escribe 2 → Pregunta: "Escribe tu idea:"
  • Escribe 3 → Ejecuta flujo de bookmarks
  • Escribe 4 → Ejecuta flujo de trending
  • Escribe 5 → Ejecuta flujo de news
  • Pega una URL directamente → Ejecuta captura individual

Invocación directa (opcional)

También se puede invocar directamente con argumentos:

capture-idea "https://x.com/usuario/status/123"   # Captura URL
capture-idea idea "Mi idea sobre X"               # Captura idea directa
capture-idea bookmarks                            # Exportar bookmarks
capture-idea bookmarks 20                         # Exportar últimos 20
capture-idea trending                             # Ver trending
capture-idea news                                 # Ver news

Configuración

Archivo de configuración

Verifica que existe .capture-config.json en la carpeta de esta skill:

{
  "obsidian_vault_path": "/Users/sergio/Dev/knowledge"
}

Requisitos

Bird CLI instalado y autenticado:

brew install steipete/tap/bird

Estructura en Obsidian

Inbox/
├── ideas/              ← Capturas manuales (URLs, texto)
├── bookmarks/          ← Bookmarks exportados de Twitter
└── trending/           ← Items de trending/news

Flujo A: Captura individual

Entrada

capture-idea "url o texto"

Proceso

  1. Detectar tipo:

    • x.com o twitter.com → tweet
    • youtube.com o youtu.be → video
    • Otra URL → link
    • Sin URL → idea
  2. Investigar:

    • Tweet: obtener contenido, autor, contexto (hilo si existe)
    • Video: título, descripción, canal
    • Link: título, extracto, puntos clave
    • Idea: analizar tema
  3. Mostrar resumen para validar:

    📝 {tipo}: {título corto}
    
    {resumen 2-3 frases}
    
    Tags: #{tag1} #{tag2}
    
    ¿Ok o ajusto?
    
  4. Guardar en Inbox/ideas/YYYY-MM-DD-{type}-{slug}.md

Formato del archivo

---
type: tweet | video | link | idea
status: pending
created: YYYY-MM-DD
tags: [tag1, tag2]
source_url: https://...
---

## Fuente

![](https://x.com/...) | ![](https://youtube.com/...) | <iframe>...</iframe>

## Resumen

{Lo que Claude investigó}

## Notas

{Vacío, para añadir después}

Embeds

  • Tweet: ![](https://x.com/usuario/status/123)
  • YouTube: ![](https://youtube.com/watch?v=xxx)
  • Link: <iframe src="{url}" width="100%" height="400"></iframe>
  • Idea: Sin embed

Flujo B: Bookmarks de Twitter

Entrada

capture-idea bookmarks      # Últimos 10
capture-idea bookmarks 20   # Últimos 20

Proceso

  1. Obtener bookmarks:

    bird bookmarks -n {N} --json
    
  2. Filtrar ya exportados:

    • Leer source_url de archivos existentes en Inbox/bookmarks/
    • Si no hay nuevos, mostrar "✅ No hay bookmarks nuevos" y terminar
  3. Mostrar progreso:

    📚 Procesando {N} bookmarks nuevos...
    
  4. Para cada bookmark:

    • Leer tweet completo con bird read {url} --json
    • Extraer fecha del tweet del campo createdAt (formato: "Wed Jan 21 13:47:22 +0000 2026" → 2026-01-21)
    • Detectar URLs externas en el contenido del tweet (ver paso 4b)
    • Investigar contexto (autor, tema, por qué es relevante)
    • Generar resumen en español + notas con análisis de Claude
    • Guardar en Inbox/bookmarks/{fecha-del-tweet}-{username}-{id}.md
    • Eliminar de Twitter: bird unbookmark {url}

4b. Extraer contenido enlazado (si hay URLs externas):

  • Detectar URLs en el texto del tweet
  • Ignorar: URLs de x.com, twitter.com, URLs de imágenes/videos embedidos
  • Seguir: Artículos de blog, noticias, documentación, GitHub repos, páginas de producto
  • Para cada URL externa válida:
    • Navegar con WebFetch y extraer contenido principal
    • Generar resumen del artículo (3-5 párrafos con puntos clave)
    • Añadir al archivo en sección ## Contenido enlazado
    • Añadir campo linked_url en frontmatter
  1. Generar digest consolidado (ver sección "Digest final")

Formato del archivo (bookmarks)

---
type: bookmark
status: pending
created: YYYY-MM-DD
tags: [tag1, tag2]
source_url: https://x.com/...
linked_url: https://articulo.com/...   # Solo si hay enlace externo
author: username
---

## Fuente

![](https://x.com/usuario/status/123)

## Contenido

{Texto original del tweet/artículo en su idioma}

## Contenido enlazado

{Resumen del artículo/recurso enlazado: 3-5 párrafos con los puntos clave}
{Omitir esta sección si el tweet no tiene enlaces externos}

## Resumen

{Resumen general en español integrando tweet + artículo enlazado si existe}

## Notas

{Análisis de Claude: por qué es relevante, conexiones con tus intereses, posibles usos}

Digest final

Al terminar de procesar todos los bookmarks, generar un digest consolidado. Se muestra en consola Y se guarda en Obsidian.

Salida en consola:

✅ Procesados {N} bookmarks

📊 Resumen rápido:
┌─────────────────┬──────────────┬─────────────────────────┐
│ Tema            │ Autor        │ Punto clave             │
├─────────────────┼──────────────┼─────────────────────────┤
│ AI Agents       │ @levelsio   │ Agentes que facturan... │
│ Email marketing │ @dhh        │ La muerte del spam...   │
└─────────────────┴──────────────┴─────────────────────────┘

📝 Temas principales:
- {Tema} ({N} bookmarks): {descripción breve}
- ...

Guardado en: Inbox/bookmarks/YYYY-MM-DD-digest.md

Archivo digest en Obsidian:

Guardar en Inbox/bookmarks/YYYY-MM-DD-digest.md:

---
type: digest
created: YYYY-MM-DD
bookmarks_count: N
---

## Tabla resumen

| Tema | Autor | Punto clave | Archivo |
|------|-------|-------------|---------|
| AI Agents | @levelsio | Agentes que facturan... | [[2026-03-04-levelsio-123]] |

## Temas principales

### {Tema} ({N} bookmarks)
{Resumen narrativo de los bookmarks relacionados con este tema}

### {Otro tema} ({N} bookmarks)
{Resumen narrativo}

## Conexiones y patrones

{Observaciones sobre conexiones entre los bookmarks procesados, tendencias emergentes}

Flujo C: Trending / News

Entrada

capture-idea trending
capture-idea news

Proceso

  1. Obtener trending o news:

    bird trending -n 15 --json          # Para trending
    bird news -n 15 --ai-only --json    # Para news
    
  2. Mostrar lista:

    🔥 Trending ahora:
    
    1. AI Agents - 45K tweets
    2. Claude 4 - 32K tweets
    3. ...
    
    ¿Cuáles te interesan? (1,3,5 o "cancelar")
    
  3. Para cada seleccionado:

    • Investigar: buscar tweets relevantes, contexto
    • Mostrar resumen para validar
    • Guardar en Inbox/trending/YYYY-MM-DD-{slug}.md

Formato del archivo (trending)

---
type: trending
status: pending
created: YYYY-MM-DD
tags: []
topic: "AI Agents"
---

## Tema

{Descripción del trending}

## Contexto

{Lo que Claude investigó: por qué es trending, puntos de vista, etc.}

## Tweets relevantes

![](https://x.com/tweet1)
![](https://x.com/tweet2)

## Notas


Tags disponibles

  • ia - Inteligencia artificial, Claude, LLMs
  • dev - Desarrollo, código, herramientas
  • saas - SaaS, producto, emprendimiento
  • easymailing - Relacionado con Easymailing
  • productividad - Flujos de trabajo, automatización
  • marketing - Marketing, contenido, growth

Confirmación final

Al terminar cualquier flujo (excepto Bookmarks, que usa el digest):

✅ Guardado en Inbox/{carpeta}/{archivo}.md

Tienes {N} items pendientes en tu Inbox:
- {X} ideas
- {Y} bookmarks
- {Z} trending

Para el flujo de Bookmarks, la confirmación es el propio digest (ver "Digest final" en Flujo B).

Weekly Installs
9
First Seen
Feb 5, 2026
Installed on
claude-code9
codex9
gemini-cli9
opencode8
github-copilot8
amp8