Mate & Build/Builds/From 45 minutes to 5: the bottleneck no one was seeing in a performance agency
Mate & Build #01

From 45 minutes to 5: the bottleneck no one was seeing in a performance agency

Participant
Franco Cristaldo
Company
Rufus social
Duration
2-3 horas
Date
Marzo 2026
Tools
Claude CodeSkills
45 minutos
Before
5 minutos
After
9x más rápido
From 45 minutes to 5: the bottleneck no one was seeing in a performance agency

I sat down with Franco from Rufus for the first session of Mate & Build to solve what looked like an ad-copy problem. What we found was something else.

The brief said "faster copies"

Franco works at Rufus, a performance marketing agency. When he came to Mate & Build, his ask was clear: writing ad copies took them 45 minutes per batch. Every new campaign meant starting from zero. He wanted to speed it up.

The first thing we tried was the obvious move — prompting different tools and models to research the client, brainstorm, define strategy, and write the copies, all in a single shot. It didn't work. The context dilutes, the instructions compete with each other, and the output ends up low-quality across the board. Instead of many tools, the right one.

But that failed test showed us something more interesting than the failure itself.

The bottleneck wasn't the writing

When we sat down to break the process apart step by step, the thing that the day-to-day rhythm never leaves room to see showed up: the time wasn't going into writing the copies. It was going into everything that happened before. Researching the client, analyzing competitors, understanding the performance metrics, defining the key messages, setting up the creative strategy, establishing best practices...

That preparation phase — the one that, in the rhythm of an agency under high demand, never had room to be tackled head-on — was the one eating the 45 minutes. The copies themselves were the fast part once you had all the input clear.

This completely changed the approach. Instead of automating the writing of copies (which is what most people try), we focused on solving the entire process before the writing.

What we built: 4 skills + one orchestrator in Claude Code

We designed a system of 5 skills for Claude Code. The idea is simple: separate responsibilities. Each skill does one thing well, and they compose in sequence.

The Orchestrator is the piece that coordinates everything. It starts with one question: new client or existing client? From there it triggers the skills in the right order. For a new client: Orchestrator → Researcher → Strategy → Content Strategy Final. For an existing client: Orchestrator → Brainstorming → Strategy → Content Strategy Final.

Researcher — takes the brief, campaign references, performance data, and builds the full brand-context document. Brainstorming — generates fresh Big Ideas and Key Messages for existing clients. Strategy — takes everything above and defines the creative strategy. Content Strategy Final — translates strategy into concrete execution: scripts per format, copies with AIDA and PAS frameworks, review and final delivery.

The skills system inside Claude Code

The most important design decision: human control at every step

The most important decision was preserving the creative team's control at every transition. The skills are activated manually — you review the output of each step and decide when to move to the next. AI here doesn't replace the creative — it amplifies them. It hands them all the processed input so they can start from a better place.

Franco's face when he saw it run

Franco's reaction

We ran it on a real brief. The Researcher processed all the context in seconds. Strategy nailed the angles. Content Strategy Final translated everything to concrete execution.

Franco looked at the screen, looked at the clock, and said: "This used to take us 45 minutes."

Five minutes. And the quality goes up because each skill does one thing well instead of one prompt trying to do everything halfway. It's not that AI writes better — it's that it removes the friction that was there before you could even start creating.

What Franco takes home — and what you can take too

Franco left with a working system: 4 skills + an orchestrator ready to use in Claude Code, plus the framework to create new skills. The most valuable part was understanding the pattern: the bottleneck is almost never where you think it is.

The 5 skills are available as downloadable resources with this post. They're a starting point — an MFP (Minimum Functional Product) designed to solve 80% of the problem from day one. It's not a finished system. It's a solid base to start from.

Concepts applied here

Build resources
---
name: ad-orchestrator
description: Orquestador del sistema de content strategy para ads. Coordina la secuencia completa de skills para producir copies y strategy desde cero o en entrega existente. Activar al inicio de cualquier tanda de trabajo. Trigger: "nuevo cliente", "nueva entrega", "brief", "empezar tanda", "arrancar campaña", "tengo un cliente", "arrancar el sistema".
argument-hint: "<brief o descripción del cliente>"
user-invocable: true
allowed-tools: Read
---

# Orquestador — Content Strategy

## Input Check

Si $ARGUMENTS está vacío, preguntar: "¿Tenés el brief? ¿Es cliente nuevo o existente?"

Brief recibido: $ARGUMENTS

## Paso 1: Clasificar el cliente

Preguntar explícitamente — nunca asumir:

> "¿Este es un **cliente nuevo** (primera entrega, sin historial en el sistema) o un **cliente existente** (ya tenemos contexto de marca y reportes de performance)?"

Esperar respuesta antes de continuar.

## Paso 2: Solicitar inputs según tipo

**Cliente NUEVO:**
- Brief completo del cliente
- Notas de handover del equipo comercial (si existen)

**Cliente EXISTENTE:**
- Brief de la nueva entrega
- Reporte de performance del período anterior (si está disponible)

No avanzar hasta tener los inputs del tipo correspondiente.

## Paso 3: Activar el skill correcto

| Tipo de cliente | Skill a activar | Propósito |
|---|---|---|
| Nuevo | `ad-researcher` | Construye contexto de marca desde cero |
| Existente | `ad-brainstorming` | Genera Big Ideas y Key Messages frescos |

Confirmar con el equipo antes de avanzar.

## Paso 4: Continuar la secuencia

Después de Researcher o Brainstorming, ambos flujos convergen:

```
Researcher / Brainstorming
        ↓
   ad-strategy           ← estrategia creativa + validación de cliente
        ↓
  ad-content-final       ← scripts + copies + entrega
```

Cada transición requiere una confirmación explícita del equipo.

## Output Format

Al inicio de cada transición, emitir:

> "✓ [Skill anterior] completado. ¿Avanzamos a [siguiente skill]?"

No avanzar sin respuesta afirmativa.

## Si algo sale mal

- Si el brief está incompleto → listar qué falta y pedirlo antes de continuar.
- Si hay dudas sobre el tipo de cliente → preguntar, nunca asumir.
- Si el equipo quiere saltear un paso → advertir qué input faltará para el siguiente skill y pedir confirmación explícita.
---
name: ad-researcher
description: Research de marca para cuentas nuevas. Convierte brief, material de marca y datos de performance en un documento de contexto completo listo para alimentar la estrategia. Usar cuando es el primer trabajo con un cliente o cuando se necesita reconstruir contexto desde cero. Trigger: "cliente nuevo", "research", "investigar marca", "contexto de marca", "primera entrega", "arrancar con investigación".
argument-hint: "<brief + notas de handover>"
user-invocable: true
allowed-tools: Read, WebFetch, WebSearch
---

# Researcher — Content Strategy

## Input Check

Si $ARGUMENTS está vacío, pedir: "Compartí el brief del cliente y las notas de handover del equipo comercial (si las hay)."

Inputs recibidos: $ARGUMENTS

## Paso 1: Analizar el brief

Leer e interpretar el brief buscando:
- Oportunidades de comunicación detectadas
- Audiencia objetivo: quién es, qué le importa, qué lenguaje usa
- Contexto competitivo mencionado en el brief

## Paso 2: Research interno de marca

Revisar el material existente de la marca que el equipo tenga disponible:
- Contenidos y creatividades anteriores
- Historial de comunicación
- Do's y Don'ts observados en material previo

Si no hay material previo, documentarlo explícitamente en el output.

## Paso 3: Research externo

Investigar desde fuentes externas:
- **Benchmarking:** qué comunica la competencia, en qué canales, qué ejecuta bien y qué mal, oportunidades no explotadas
- **Social listening:** reviews, comentarios, foros — el lenguaje real de los usuarios (pain points, objeciones, deseos)
- **Keywords:** términos que usa la audiencia para buscar el producto/servicio

## Paso 4: Analizar performance (si hay datos disponibles)

Si el cliente tiene historial de ads, leerlo con contexto — nunca solo en base a números brutos.

Considerar siempre: presupuesto asignado al período, si hubo una sola pieza corriendo (concentración del algoritmo), y estacionalidad.

Para métricas, fórmulas e interpretación: ver [references/metricas.md](references/metricas.md)

## Output Format

Entregar un documento de contexto de marca con estas secciones:

```
## Análisis del brief
[Oportunidades detectadas, audiencia, contexto competitivo]

## Mensajes actuales de la marca
[Síntesis de comunicación existente — o "Sin material previo disponible"]

## Benchmarking de competencia
[Qué hacen bien, qué hacen mal, oportunidades]

## Insights de audiencia
[Pain points, lenguaje real, objeciones frecuentes]

## Performance de creatividades actuales
[Números con contexto — no solo métricas brutas]

## Keywords relevantes
[Lista priorizada]

## Do's y Don'ts de marca
[Detectados en el research]

## Insumos para estrategia
[Resumen ejecutivo: qué encontramos y qué implica para la estrategia]
```

Confirmar con el equipo que el documento está completo antes de avanzar a `ad-strategy`.

## Si algo sale mal

- Si el brief está incompleto → listar qué falta y pedirlo antes de continuar.
- Si no hay material de marca para research interno → documentarlo y hacer hincapié en el research externo.
- Si no hay datos de performance → indicarlo y proceder solo con research de marca y competencia.
- Si la competencia no tiene presencia digital relevante → documentarlo como oportunidad de diferenciación.
---
name: ad-brainstorming
description: Generación de Big Ideas y Key Messages para cuentas existentes. Prepara el material de marca y facilita la sesión de ideación antes de definir la estrategia. Usar cuando hay un cliente existente que necesita ideas frescas: inicio de nuevo contrato, piezas repetitivas, entrega importante, o cuando el equipo lo considere necesario. Trigger: "cliente existente", "brainstorming", "ideas nuevas", "refrescar la cuenta", "nueva tanda", "las piezas se están repitiendo".
argument-hint: "<brief nueva entrega + reporte anterior>"
user-invocable: true
allowed-tools: Read
---

# Brainstorming — Content Strategy

## Input Check

Si $ARGUMENTS está vacío, pedir: "Compartí el brief de la nueva entrega y el reporte de performance anterior (si está disponible)."

Inputs recibidos: $ARGUMENTS

## Paso 1: Preparar las 3 columnas

Las 3 columnas son innegociables — sin ellas la generación de ideas es improductiva. Completar antes de arrancar la sesión.

**Columna 1 — Client Goals**
Cualquier persona del equipo que no esté en la cuenta debe poder entender completamente el cliente leyendo esta columna. Incluir:
- Objetivos de negocio y de la entrega
- Qué hace la marca, a quién le vende
- Competencia y contexto del mercado
- Value proposition y USP
- Qué se espera de este brainstorming

**Columna 2 — Benchmark**
Relevamiento de lo que hace la competencia en este momento:
- Qué comunican y en qué canales
- Cómo ejecutan (formatos, tonos, ángulos)
- Qué hacen bien y qué hacen mal
- Oportunidades que no están explotando

**Columna 3 — Inspiración**
Curaduría de referencias relevantes:
- Piezas que le gustaron al cliente
- Las mejores piezas anteriores propias
- Referencias del equipo (dentro o fuera del sector)
- Referencias externas que puedan aplicar por analogía

## Paso 2: Facilitar la generación de ideas (Columna 4)

Presentar las 3 columnas al equipo y arrancar la dinámica:

> "15-20 minutos de generación individual. Todos completan la Columna 4 de forma simultánea e independiente. Objetivo: **cantidad, no calidad** — no filtrar durante la generación."

**Columna 4 — Ideas:**
- Conceptos y territorios nuevos
- Key Messages candidatos
- Big Ideas (un insight + cómo se ejecuta)
- Ángulos o enfoques no probados

El documento de brainstorming es un workspace continuo — se actualiza en cada sesión, no se cierra.

## Paso 3: Priorizar y seleccionar

Recorrer las ideas juntos y priorizar según:
- **Accionabilidad** — ¿se puede ejecutar en esta entrega?
- **Diferenciación** — ¿hay algo que la competencia no esté haciendo?
- **Alineación** — ¿responde a los Client Goals de la Columna 1?

Seleccionar mínimo 3 Big Ideas accionables para pasar a estrategia.

## Output Format

```
## Columna 1 — Client Goals
[Contexto completo del cliente]

## Columna 2 — Benchmark
[Qué hace la competencia: bien, mal, oportunidades]

## Columna 3 — Inspiración
[Referencias curadas con breve descripción de cada una]

## Columna 4 — Ideas generadas
[Lista completa sin filtrar — todo lo que salió]

## Big Ideas priorizadas
[Mínimo 3, con justificación de por qué cada una]

## Nuevos Key Messages candidatos
[Lista priorizada]

## Insumos para estrategia
[Resumen ejecutivo: qué ideas tienen más potencial y por qué]
```

Confirmar con el equipo que hay al menos 3 Big Ideas accionables antes de avanzar a `ad-strategy`.

## Si algo sale mal

- Si las 3 columnas no están completas → no arrancar la generación hasta completarlas.
- Si las ideas generadas son menos de 3 accionables → hacer una segunda ronda antes de cerrar.
- Si el equipo quiere saltear la dinámica grupal → advertir que las ideas individuales sin contraste tienden a ser más homogéneas y menos diversas.
- Si no hay reporte de performance del período anterior → indicarlo en el output y proceder con el material disponible.
---
name: ad-strategy
description: Definición de estrategia creativa para ads. Traduce los outputs del Researcher o Brainstorming en una estrategia de comunicación completa y validable con el cliente. Usar después de tener el contexto de marca (cliente nuevo) o el brainstorming (cliente existente). Trigger: "estrategia", "estrategia creativa", "definir caminos", "armar la estrategia", "explorar o iterar", "validar con cliente".
argument-hint: "<output del researcher o brainstorming>"
user-invocable: true
allowed-tools: Read
---

# Strategy — Content Strategy

## Input Check

Si $ARGUMENTS está vacío, pedir: "Compartí el output del Researcher (cliente nuevo) o del Brainstorming (cliente existente) para armar la estrategia."

Inputs recibidos: $ARGUMENTS

## Paso 1: Decidir Explorar vs. Iterar

**Solo para cuentas existentes.** Para cuentas nuevas, ir directo al Paso 2.

Esta decisión es la más importante de la estrategia. Tomarla antes que cualquier otra cosa y documentarla con justificación — nunca dejarla implícita.

**Iterar** cuando hay un ganador claro en el reporte de performance:
- Un ad tuvo CPA significativamente más bajo que el resto
- Un concepto tiene TSR consistentemente alto en varias piezas
- El cliente validó positivamente un ángulo
- Hay variables del ganador aún sin testear (mismo hook, distinto formato; mismo concepto, distinto ángulo)

**Explorar** cuando los resultados son mixtos o el aprendizaje se agotó:
- Todos los ads tuvieron performance similar (sin ganador claro)
- El concepto ganador ya fue iterado en 2+ entregas sin mejora adicional
- El cliente pide algo diferente
- La competencia está usando un ángulo que no probamos

## Paso 2: Construir la estrategia

**Para Ads pagos:**
- Caminos comunicacionales: qué conceptos/territorios se van a trabajar en esta entrega
- Key Messages por camino: los mensajes clave que se desprenden de objetivos, USP, insights de audiencia y contexto competitivo
- Ad Types y Formatos: UGC / Video Animado / Estática / Carrusel — por plataforma (Meta / TikTok / Google / Programmatic)
- Variables Creativas a testear: qué se compara entre piezas (Hook A vs. B, Concepto A vs. B, Formato A vs. B)
- Testing Framework: qué variable se testea en cada entrega y cómo se mide el aprendizaje

**Para Contenido orgánico:**
- Objetivos de comunicación
- Big Idea por creador o canal
- Estrategia de publicación

## Paso 3: Validar con el cliente

Compartir la estrategia con el cliente para aprobación. Sin validación explícita (mail, mensaje o reunión), no avanzar a ejecución.

Si el cliente pide cambios → iterar la estrategia con su feedback y volver a validar.

## Output Format

```
## Decisión: Explorar / Iterar
[Decisión + justificación basada en datos del reporte. N/A para clientes nuevos.]

## Objetivos de comunicación
[Qué queremos lograr con esta entrega]

## Caminos comunicacionales
[Qué conceptos o territorios se trabajan y cómo se ejecutan]

## Key Messages
[Por camino comunicacional — derivados de objetivos, USP e insights de audiencia]

## Variables Creativas
[Qué se testea entre piezas: Hook A vs. B, Concepto A vs. B, Formato A vs. B]

## Ad Types y Formatos
[UGC / Video Animado / Estática / Carrusel — plataformas y specs]

## Testing Framework
[Qué variable se testea en esta entrega y cómo se mide el resultado]

## Do's y Don'ts del cliente
[Registrados durante el proceso — actualizados]

## Big Ideas aprobadas
[Listas para bajar a ejecución en rufus-content-final]
```

Confirmar validación del cliente (mail o mensaje) antes de avanzar a `ad-content-final`.

## Si algo sale mal

- Si el cliente no valida → no avanzar. Iterar con su feedback y volver a presentar.
- Si la decisión Explorar/Iterar no es clara → revisar el reporte de performance en detalle antes de decidir. Nunca decidir sin datos.
- Si los Key Messages no se desprenden naturalmente del research → volver al Researcher o pedir más contexto de marca.
- Si el cliente pide ir directo a ejecución sin validar estrategia → explicar por qué la validación evita retrabajo y pedir que al menos confirme los Key Messages.
---
name: ad-content-final
description: Ejecución de copies y scripts para ads. Traduce la estrategia validada en piezas concretas listas para producción. Usar cuando la estrategia ya fue validada por el cliente y hay que escribir los copies finales, scripts y brief de producción. Trigger: "escribir copies", "scripts", "brief de producción", "entrega final", "armar las piezas", "bajar a ejecución", "empezar a escribir".
argument-hint: "<estrategia validada>"
user-invocable: true
allowed-tools: Read
---

# Content Final — Content Strategy

## Input Check

Si $ARGUMENTS está vacío, pedir: "Compartí la estrategia validada por el cliente para arrancar con la ejecución."

Inputs recibidos: $ARGUMENTS

## Paso 1: Brief interno de producción

Para cada pieza definir antes de escribir:
- Concepto y Key Message que aplica
- Formato: UGC / Video Animado / Estática / Carrusel
- Plataforma y specs: Meta / TikTok / Google / Programmatic
- Referencias visuales
- CTA aprobado y palabras prohibidas de la marca

## Paso 2: Generar copies

Para cada pieza, seguir este proceso sistemático:

1. **Key Message** — el mensaje central que viene de la estrategia validada
2. **Ángulo** — el enfoque narrativo: problema/solución, beneficio directo, social proof, UGC, urgencia, curiosidad
3. **Restricciones** — tono de marca, palabras prohibidas, CTA aprobado, límite de caracteres por plataforma
4. **Variantes** — generar 3-5 variantes testeables cambiando **una sola variable** entre sí

Para estructura de copies (AIDA/PAS) y criterios del hook: ver [references/frameworks-copy.md](references/frameworks-copy.md)

## Paso 3: Escribir scripts por formato

| Formato | Componentes por shot |
|---|---|
| **UGC** | Acción / Voz / Sobreimpreso / Subtítulos (sí/no) / Postproducción |
| **Video Animado** | Referencia gráfica / Acción / Copy por escena |
| **Estática** | Copy + CTA + Sugerencia de imagen + Quick Test |

Para contenido con creators: presentar la idea como **match creativo**, no como brief cerrado. Su criterio y creatividad son parte del valor.

## Paso 4: Revisión interna

Verificar que cada pieza cumpla:
- [ ] La ejecución visual está alineada a la estrategia
- [ ] Hay sinergia entre copy y visual (no son redundantes)
- [ ] Se mantiene el tono de marca
- [ ] El hook cumple los criterios de calidad (ver referencias)
- [ ] Las variantes cambian una sola variable entre sí

## Paso 5: Entrega al cliente y manejo de feedback

- Si el feedback **sale de la estrategia** → defender con datos: reporte de performance, testing framework, KPIs validados. No ceder sin argumento.
- Si son **ajustes semánticos razonables** → modificar sin discusión.
- Si el feedback es contradictorio o cambia el rumbo → agendar una call de alineación antes de seguir escribiendo.

## Output Format

```
## Brief interno de producción
[Por pieza: concepto + Key Message + formato + plataforma + specs + referencias + CTA]

## Scripts
[Por pieza y formato — en estructura estándar (Acción / Voz / Sobreimpreso / etc.)]

## Copies finales
[Por pieza, con 3-5 variantes testeables. Indicar qué variable cambia en cada una.]

## Guías para creators
[Si aplica — presentadas como match creativo, no como brief cerrado]

## Checklist de revisión interna
[✓/✗ por criterio para cada pieza]
```

Confirmar aprobación del cliente antes de liberar a producción.

## Si algo sale mal

- Si la estrategia validada tiene ambigüedades → resolver antes de escribir, no durante.
- Si el cliente pide cambios que salen de la estrategia → defender primero, ceder solo si hay una razón sólida, y documentarlo.
- Si hay dudas sobre el hook → revisar los criterios en [references/frameworks-copy.md](references/frameworks-copy.md) antes de avanzar.
- Si el feedback del cliente es contradictorio con validaciones anteriores → no modificar hasta tener alineación. Agendar call.

Got a problem to solve?

Propose your case. The most voted problems get solved first in Mate & Build.

Propose your problem →