Saltar al contenido principal

Pipelines

Un pipeline es la unidad de trabajo en Whet. Define de dónde sale el contenido (source), qué hace la AI con él (processing) y qué te entrega (output). Es un contrato re-ejecutable: el mismo pipeline corre múltiples veces a lo largo del tiempo y produce artifacts nuevos cada vez.

El modelo mental

┌──────────┐ ┌──────────────┐ ┌───────────┐
│ Source │ → │ Processing │ → │ Output │
└──────────┘ └──────────────┘ └───────────┘
3 layers LLMs + jobs prose | struct

Cada pipeline persiste su configuración (source, processing, output) y produce runs. Cada run produce uno o más artifacts.

Las tres capas de ingestión

Whet no está casado con ninguna plataforma. Cada pipeline puede tomar contenido por una de estas tres capas:

Layer 1 — Official API

Traés tu API key de la plataforma. Whet respeta ToS y rate limits.

Mejor para: equipos compliance-first, APIs de pago que ya tenés, RSS feeds, fuentes internas.

Ejemplo: Un RSS de un blog corporativo, un endpoint paid de una plataforma de research.

Layer 2 — Managed scraping

Traés cuentas burnable y cookies. Whet corre el pool de sesiones, la rotación y la FSM en tu VPS.

Mejor para: operadores con nichos establecidos y cuentas que pueden poner en riesgo.

El cliente opera el scraper en su VPS. El cliente asume el riesgo legal. Whet sólo provee la herramienta de orquestación.

Layer 3 — Manual paste (roadmap)

Pegás una URL, un thread, un email, un OCR. Cero infraestructura.

Mejor para: contenido detrás de paywall, docs internas, lo que sea que no esté en la web abierta o que no quieras automatizar.

Esta es la capa universal — funciona con cualquier source.

:::caution Estado del producto Hoy el CLI / Agent API sólo soportan dos sources: x (managed scraping de un handle de X) y webpage (URL pública). El paste manual de threads, emails y OCR no está implementado: para contenido detrás de paywall, exportalo a una URL pública o pegalo en el campo style_reference cuando dispares un start_draft desde el MCP. Es la mejor aproximación mientras tanto. :::

Processing

El bloque del medio. Acá pasa lo siguiente, según la config del pipeline:

  • Decode — el LLM extrae patterns (hook, tone, format, triggers) del input.
  • Aggregate — si hay varios inputs, los junta y calcula métricas del nicho.
  • Synthesize — combina insights de fuentes heterogéneas en una sola narrativa.
  • Riff — genera un draft nuevo grounded en lo decodificado.
  • Refine — toma un artifact existente y produce una variante hija (shorter, change tone, match voice, more punchy).

Los LLMs son swappables por pipeline: Anthropic, OpenAI, Gemini. Cada pipeline define cuál usar.

Output

Lo que el pipeline entrega:

  • Prose — drafts publicables, con o sin citations.
  • Structured — KV / JSON con los patterns extraídos.
  • Dashboard — agregaciones de nicho (top hooks, tone distribution, leaders).

Scope

Cuándo corre el pipeline:

ScopeFrecuenciaUso típico
per_postcada vez que aparece un input nuevocompetitor decode
daily_digestuna vez al día, agregando lo del díaniche dashboard
weekly_digestuna vez por semanasummary reports

Refinement

Cada artifact puede engendrar variantes hijas. La genealogía se preserva: el artifact hijo guarda parent_id, y vos podés navegar el árbol entero.

Las acciones de refinement disponibles son:

  • shorter — recortar manteniendo intención.
  • change_tone — pasar de analítico a punchy (o viceversa).
  • match_voice — ajustar al perfil de voz del operador.
  • more_punchy — agregar fricción/edge.

Pipeline de ejemplo

# Trackear un handle competidor, draft por post, tono analítico
whet pipelines new \
--source x \
--handle @growth_dr \
--kind prose \
--scope per_post \
--tone analytical \
--auto-fanout

Resultado:

  • Source layer: managed scraping (sesión del operador).
  • Processing: decode → riff con Anthropic Claude.
  • Output: artifacts prose, uno por post nuevo del handle.
  • Scope: per_post.
  • Refinement loops: disponibles desde el workbench y el MCP.

Multi-source synthesis (roadmap)

Un pipeline que toma varios sources y los combina en un único draft con citations es una de las direcciones del roadmap. La idea es:

Sources:
- Layer 2 · @growth_dr (managed scraping)
- Layer 2 · @bootstrap_fi (managed scraping)
- Layer 3 · blog.example.com/pricing-anatomy (manual paste)

Processing: synthesize → riff
Output: 1 prose draft con [1] [2] [3] citations

Hoy el CLI/Agent API crean pipelines con un único source. La UI muestra el concepto y el Decoder de la landing lo demuestra, pero el wire que combina varios sources en un mismo pipeline está en desarrollo. Para feedback o casos de uso específicos, abrí un issue o mencionalo en la discovery call.

Ver también