Newsletter para devsEntra

Rubber Duck Chat: el pato que te hace pensar en voz alta hasta que cae la ficha

Una skill que te acompaña a desenredar un bug, una decisión o una idea a medio formar: pregunta de una en una para que la respuesta salga de tu cabeza, opina cuando hace falta para que no se atasque, y al final te entrega por escrito lo que decidiste y lo que queda abierto.

Invócala con un comando

  • /rubber-duck-chat "no sé si extraer esto a un servicio o dejarlo en el controlador"

    Arranca la conversación: te refleja en una línea lo que ha entendido, te avisa de que puedes cortar cuando quieras, y te suelta la primera pregunta afilada. Va de una en una, a propósito, para que la respuesta la digas tú.

  • /rubber-duck-chat

    Sin tema, te pregunta qué traes entre manos —el bug, la decisión o la idea a medio cuajar— y tiráis del hilo. Cuando le dices «lo dejamos» o «despídeme», te entrega el resumen: lo que decidiste, lo que descubriste y lo que sigue abierto.

Qué es esta skill

¿Qué es rubber-duck-chat?

rubber-duck-chat hace de pato de goma. Tienes algo enredado en la cabeza —un bug, una decisión, un diseño, una idea a medio formar— y la forma más rápida de desenredarlo es explicárselo en voz alta a alguien que va tirando de los hilos correctos. Ese alguien es el agente. La diferencia con un chat normal: el pensamiento sigue siendo tuyo. No viene a darte la respuesta hecha; viene a que la encuentres tú.

Y, a diferencia de pedirle directamente la solución, aquí el agente no cierra el bucle por ti. Puede lanzar una hipótesis, discrepar con suavidad o ponerle nombre al patrón que ve, pero siempre te devuelve la pelota. Tú decides.

Cómo funciona

Pregunta para que te oigas pensar

El motor de la skill es la pregunta. Funciona porque decir el problema en voz alta obliga a sacar a la luz la suposición escondida, y esa frase tiene que salir de tu boca, no de la suya. Así que su movimiento por defecto es la curiosidad: aprieta en los puntos blandos —“¿qué pasa justo antes de eso?”, “¿por qué tiene que ser así?”, “¿qué estás dando por hecho aquí?”— y de una en una. Una sola pregunta afilada, dejas que la respondas, y tira del hilo que abra tu respuesta. Nada de soltarte cinco a la vez para que elijas la fácil y esquives la difícil.

Pero no es un interrogatorio

Lee la sala y te despide con algo en la mano

Un pato que solo pregunta agota. Por eso la skill distingue dos situaciones y cambia de marcha: si estás recuperando (la respuesta ya está en tu cabeza, solo no la has dicho), las preguntas son oro. Si estás generando (no tienes la respuesta y vienes a por ideas), las preguntas son veneno: ahí deja de preguntar y te pone una propuesta concreta encima de la mesa para que reacciones. Y cuando le dices “decide tú”, lo hace —se moja con una opción y te devuelve la reacción—, en vez de contestar a un “tú eliges” con otra pregunta.

Cada pocas vueltas hace un alto: te recapitula lo que ya está pillado, nombra si vais avanzando o dando vueltas, y elige por dónde seguir. Y cuando cierras —o cuando ya se te ve la cara de “ah, vale”— te entrega el resumen: lo que decidiste, las realizaciones (“ah, claro”), lo que sigue abierto y un siguiente paso. Te vas con un registro de lo que trabajaste, no solo con la sensación de una buena charla.

Instalación

Cómo instalar rubber-duck-chat

Funciona con cualquier agente compatible con el estándar abierto de Agent Skills (Claude Code, Cursor, Codex, OpenCode, Gemini CLI…). Pega esto en tu terminal y listo:

npx skills add webreactiva/skills --skill rubber-duck-chat

¿La quieres disponible en todos tus proyectos? Añade -g para instalarla global en la carpeta de skills de tu agente (~/.agents/skills, o ~/.claude/skills si usas Claude Code):

npx skills add webreactiva/skills --skill rubber-duck-chat -g

Es open source. Puedes ver el código fuente en GitHub antes de instalarla.

Preguntas frecuentes

¿En qué se diferencia de pedirle la solución directamente?

En que no te la da. Pedirle la solución cierra el problema; rubber-duck-chat te mantiene pensando hasta que la cierras tú, que es cuando de verdad entiendes el porqué. Puede opinar y proponer, pero siempre te devuelve la decisión. Si lo que quieres es la respuesta y punto, esta no es tu skill.

¿No es lo mismo que rubber-duck?

No, son patos distintos. rubber-duck le pide una segunda opinión a un modelo de otra familia para que critique tu plan o tu diff: opina otro. rubber-duck-chat te hace hablar a ti hasta que cae la ficha: piensas tú. Una busca puntos ciegos cruzando modelos; la otra saca a la luz tus propias suposiciones.

¿En qué idioma me responde?

En el tuyo. Si le hablas en español, la conversación y el resumen final salen en español. Detecta señales de cierre en los dos idiomas (“lo dejamos”, “we’re done”…).

¿Con qué agentes funciona?

Con cualquiera compatible con el estándar abierto de Agent Skills: Claude Code, Cursor, OpenAI Codex, OpenCode, Gemini CLI y más. La instalas una vez y la usas donde quieras.

¿Tiene coste?

Es open source. La descargas e instalas gratis; el código está en GitHub.

¿Cómo se usa?

No necesitas el comando: tu agente también la activa sola cuando le dices algo como…

  • hazme de pato de goma con este bug
  • déjame pensar esta decisión en voz alta
  • ayúdame a pensar si extraer esto a un servicio
  • hazme preguntas para aclararme con este diseño
  • be my rubber duck
  • help me think out loud

Siguiente paso

Ya sabes instalar skills. Aprende a crearlas.

Si te ha gustado tener un copiloto a demanda, el siguiente paso es escribir las tuyas. En la guía de skills aprendes la anatomía de un SKILL.md, a redactar descripciones que la disparan sola y a validarla.

Ir a la guía de skills →