caveman: hacer que Claude Code, Codex y otros agentes digan menos relleno

Una introducción a JuliusBrussee/caveman: posicionamiento, instalación, niveles de compresión, comandos, benchmarks, MCP middleware, integración con OpenClaw y límites prácticos.

JuliusBrussee/caveman es un skill/plugin de compresión de salida para Claude Code, Codex, Gemini, Cursor, Windsurf, Cline, Copilot y otras herramientas de agente. Su objetivo es simple: hacer que el agente diga menos relleno, conserve los puntos técnicos y reduzca los tokens de salida.

El lema del README es “why use many token when few do trick”. En lenguaje técnico normal, significa quitar introducciones educadas, frases explicativas largas y confirmaciones repetidas, dejando conclusión, causa, arreglo y código necesario. No reduce los reasoning/thinking tokens ni hace que el modelo sea menos capaz. Afecta sobre todo la respuesta final visible.

La idea puede parecer contraintuitiva. Mucha gente asocia “detallado” con “confiable”, pero en programación las respuestas largas suelen enterrar la parte útil. La idea de caveman es: mantener el juicio técnico correcto, pero entregar la información con menos palabras.

Qué problema resuelve caveman

Al usar agentes para programar, el problema muchas veces no es que el modelo no sepa responder. Es que responde demasiado:

  • repite tu pregunta;
  • añade una apertura educada;
  • explica contexto que ya conoces;
  • recién al final da el comando, archivo, bug o arreglo que necesitas.

Eso consume tokens de salida y ralentiza la lectura. En sesiones largas, también llena el contexto con texto de baja densidad.

caveman le da al agente un conjunto de reglas:

  • quitar filler;
  • conservar la sustancia técnica;
  • usar frases cortas y fragmentos;
  • preservar código, comandos, rutas y errores exactamente;
  • comprimir en el idioma actual, sin forzar cambio de idioma.

No busca volver tonto al agente. Busca que entregue la misma información con menos palabras.

Una comparación típica

El README muestra un ejemplo de re-render en React. Una respuesta normal explica que el componente se re-renderiza porque se crea una nueva referencia de objeto en cada render, React shallow comparison ve que la prop cambió y conviene usar useMemo. caveman lo comprime así:

1
New object ref each render. Inline object prop = new ref = re-render. Wrap in `useMemo`.

Misma conclusión, menos relleno. Para desarrolladores que ya conocen el contexto, esa densidad es más útil.

También insiste en conservar el idioma. Si preguntas en chino, la respuesta debe seguir en chino. Si usas portugués, español o francés, se comprime el estilo, no se traduce a inglés. Código, comandos y mensajes de error deben quedar exactos.

Instalación

El instalador oficial es de una línea y detecta los agentes disponibles para instalar en las ubicaciones correspondientes.

macOS / Linux / WSL / Git Bash:

1
curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh | bash

Windows PowerShell 5.1+:

1
irm https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.ps1 | iex

El README dice que la instalación suele tardar unos 30 segundos y requiere Node.js 18 o superior. El script omite agentes no instalados localmente y se puede volver a ejecutar.

Para la matriz completa de instalación:

1
INSTALL.md

Activar y salir

Después de instalar, normalmente puedes escribir:

1
/caveman

o decir:

1
talk like caveman

Para salir:

1
normal mode

Admite varios niveles de compresión:

1
2
3
4
/caveman lite
/caveman full
/caveman ultra
/caveman wenyan

En términos simples:

  • lite: elimina sobre todo relleno y repetición;
  • full: estilo comprimido predeterminado;
  • ultra: más telegráfico;
  • wenyan: estilo chino clásico para comprimir aún más el chino.

En la práctica, empieza con lite o full. ultra es más corto, pero puede reducir legibilidad en tareas complejas.

Qué incluye

El README enumera estas capacidades principales:

Función Uso
`/caveman [lite full
/caveman-commit Mensajes Conventional Commit con subject de 50 caracteres o menos
/caveman-review Comentarios PR de una línea, por ejemplo L42: bug: user null. Add guard.
/caveman-stats Uso real de tokens de sesión, ahorro acumulado y coste estimado
/caveman-compress <file> Reescribe archivos de memoria como CLAUDE.md o notas del proyecto, preservando código, URLs y rutas
caveman-shrink MCP middleware para comprimir tool descriptions de MCP servers
cavecrew-* Subagents investigator / builder / reviewer con estilo comprimido

/caveman-compress <file> merece atención aparte. El coste a largo plazo de un proyecto con agentes no viene solo de la salida. También viene de archivos de instrucciones, preferencias y notas de proyecto que entran en cada sesión. Comprimirlos reduce contexto repetido de baja densidad.

Cómo leer los benchmarks

El README afirma que, con conteos reales de tokens de Claude API, 10 prompts lograron una reducción media de salida del 65%, con rango de 22% a 87%. Tareas de ejemplo:

  • explicar un React re-render bug;
  • arreglar auth middleware token expiry;
  • configurar PostgreSQL connection pool;
  • explicar git rebase vs merge;
  • revisar PR security issues;
  • depurar PostgreSQL race condition;
  • implementar React error boundary.

El README también aclara que el eval harness tiene tres grupos: baseline, terse y skill. Es decir, no compara solo contra respuestas largas por defecto, sino también contra una instrucción concisa como Answer concisely.

Aun así, los benchmarks requieren cautela. Que la salida sea más corta no significa que toda tarea mejore. Localización simple de bugs, PR review, commit messages y explicación de comandos suelen encajar bien. Aclaración de requisitos, decisiones de arquitectura, tutoriales y postmortems complejos pueden necesitar más explicación.

caveman-compress para contexto de largo plazo

El README también muestra resultados de compresión de memory files como claude-md-preferences.md, project-notes.md, claude-md-project.md, todo-list.md y mixed-with-code.md, con una reducción media aproximada del 46%.

Esto puede importar más que comprimir una sola respuesta. Archivos como CLAUDE.md, reglas de proyecto y notas de preferencias suelen entrar en cada sesión. Si contienen mucha redacción redundante, el coste acumulado se nota.

Al comprimir archivos de reglas, hay que ser cuidadoso:

  • preservar código, URLs, rutas y comandos byte-for-byte;
  • no eliminar restricciones de seguridad, límites de permisos ni requisitos de prueba;
  • no convertir flujos obligatorios en sugerencias vagas;
  • releer manualmente el archivo comprimido para confirmar que el significado no cambió.

En proyectos de equipo, empieza por preferencias personales y notas. No comprimas de inmediato políticas críticas de seguridad.

MCP middleware: caveman-shrink

caveman-shrink es un MCP middleware que comprime tool descriptions de MCP servers. Es práctico porque esas descripciones suelen inyectarse repetidamente en el contexto del modelo. Si hay muchas herramientas con descripciones largas, los tokens de entrada crecen rápido.

Buen encaje:

  • el MCP server expone muchas herramientas;
  • las descripciones son repetitivas o voluminosas;
  • el agente lee con frecuencia la lista completa de herramientas;
  • quieres reducir tokens sin modificar el MCP server original.

Mal encaje:

  • las descripciones ya son cortas;
  • contienen restricciones estrictas de parámetros que no deben comprimirse;
  • todavía no verificaste si la compresión cambia la precisión de uso de herramientas.

Comprimir descripciones MCP requiere más cuidado que comprimir respuestas normales, porque afecta cómo el modelo elige y llama herramientas.

Integración con OpenClaw

El README también cubre OpenClaw. Puedes instalar solo para OpenClaw:

1
curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh | bash -s -- --only openclaw

En Windows:

1
npx -y github:JuliusBrussee/caveman -- --only openclaw

La instalación hace dos cosas principales:

  1. Coloca el skill en:
1
~/.openclaw/workspace/skills/caveman/SKILL.md
  1. Añade un bloque con marcadores a:
1
~/.openclaw/workspace/SOUL.md

para que OpenClaw inyecte la regla de estilo conciso en cada turno.

Para un workspace personalizado:

1
OPENCLAW_WORKSPACE=/your/path

Para desinstalar, ejecuta el mismo instalador con --uninstall; elimina la carpeta del skill y limpia el bloque marcado de SOUL.md.

Escenarios adecuados

caveman encaja mejor en:

  • cambios diarios de código;
  • localización de bugs;
  • commit messages;
  • PR reviews;
  • explicaciones cortas de comandos;
  • sesiones colaborativas con contexto claro;
  • casos donde el agente habla demasiado y solo quieres conclusión y arreglo.

Encaja peor en:

  • tutoriales;
  • explicaciones para principiantes;
  • documentación larga de producto o arquitectura;
  • decisiones complejas que requieren razonamiento completo;
  • asesoría legal, médica, financiera u otros contextos de alto riesgo con muchos matices;
  • problemas aún poco claros que requieren mucha aclaración.

En resumen: caveman sirve para “ya entiendo el contexto, dime qué cambiar.” No sirve tanto para “estoy aprendiendo esto por primera vez, empieza desde el concepto.”

Recomendaciones de uso

Si quieres probarlo:

  1. Instálalo primero en tu entorno personal de agente, no como configuración predeterminada de equipo.
  2. Usa lite o full durante unos días y observa calidad en fixes, reviews y commit messages.
  3. Cambia manualmente a normal mode para tareas complejas.
  4. Prueba /caveman-compress <file> más tarde, empezando por notas de bajo riesgo.
  5. Si comprimes MCP tool descriptions, compara precisión de llamadas en un entorno no productivo.

El mejor estado no es que todas las respuestas sean extremadamente cortas. Es que el agente pueda cambiar entre “corto, preciso, suficiente” y “explicar con contexto.”

Resumen

caveman es una herramienta pequeña e interesante. No intenta aumentar la capacidad del modelo; controla la densidad de expresión. Para quienes usan mucho Claude Code, Codex, Gemini o Cursor cada día, menos tokens de salida, menos relleno y conclusiones más tempranas pueden aligerar el flujo de trabajo.

Pero no es un valor predeterminado universal. Las respuestas comprimidas encajan con tareas de desarrollo ejecutivas; no siempre encajan con enseñanza, discusión de arquitectura o decisiones de alto riesgo. La forma correcta de adoptarlo es tratarlo como un modo de trabajo con interruptor: encendido cuando necesitas velocidad y densidad, apagado cuando necesitas explicación y contexto.

记录并分享
Creado con Hugo
Tema Stack diseñado por Jimmy