16 de agosto de 2026 · Por YasKad
JuliusBrussee/caveman

Caveman: respuestas más breves para agentes de programación

JuliusBrussee/caveman · 107.812★ · 6.243 forks

Todo lo que hay que saber sobre JuliusBrussee/caveman: una habilidad y plugin que reduce la verbosidad visible de agentes de IA, preservando literalmente código, comandos y errores.


Qué es Caveman

Caveman es una habilidad distribuida como plugin, extensión o archivo de reglas para más de 30 agentes de programación. Su mecanismo es deliberadamente pequeño: indica al agente que elimine preámbulos, muletillas y redundancia de la prosa, pero que conserve sin modificar código, rutas, comandos y mensajes de error.

No reduce por sí mismo los tokens de entrada ni el razonamiento interno del modelo. Según el README, su efecto se concentra en la respuesta visible: anuncia una reducción media del 65 % de tokens de salida en diez indicaciones de conversación y una reducción del 8,5 % en una evaluación de 86 tareas de programación de JetBrains. Son mediciones de cargas distintas, no una promesa universal de ahorro.

Balanza holográfica que compara una nube caótica de texto verboso con un diminuto cubo de datos comprimido, con un «65 %» en verde flotando sobre la escena.

El origen: una idea humorística que se convirtió en distribución multientorno

GitHub sitúa la creación del repositorio el 4 de abril de 2026. Su autor es Julius Brussee, cuya cuenta de GitHub indica ubicación en Países Bajos y enlaza juliusbrussee.com. El nombre y la voz del proyecto provienen de la idea de expresar lo esencial con frases telegráficas, no de disminuir la capacidad técnica del modelo: el README lo formula como hacer la «boca» más pequeña, no el «cerebro».

Pinturas rupestres bioluminiscentes que representan diagramas técnicos, fragmentos de código y comandos de terminal en tonos neón cian y magenta.

El lanzamiento recibió rápidamente atención: el envío de Hacker News 47647455, publicado el 5 de abril de 2026 por tosh y enlazado directamente al repositorio, alcanzó 904 puntos y 366 comentarios. La discusión no fue solo promocional: debatió si menos salida reduce costes reales y si una instrucción de estilo puede afectar la calidad.

La evolución posterior muestra una corrección relevante del mensaje inicial. La versión v1.9.1 documentó que el 65 % era una media de salida frente a respuestas verbosas; v1.10.0, publicada el 3 de agosto de 2026, hizo que /caveman-stats informe ahorro neto, descontando el coste de introducir la habilidad en el contexto. Es una respuesta explícita a la tensión principal del producto: prosa más corta puede ser útil, pero el propio mecanismo añade tokens de entrada.

Cráneo cibernético con un cerebro masivo de nodos de datos pulsantes y una boca mecánica diminuta y restringida que emite un único haz de luz verde, «boca más pequeña, mismo cerebro».

Filosofía y principios

  • Señal antes que cortesía. El objetivo es retirar frases de introducción, repeticiones y explicaciones previsibles, no abreviar elementos técnicos.
  • Legibilidad como beneficio independiente. El proyecto plantea que una respuesta breve puede ser más rápida de leer aunque no produzca ahorro económico neto.
  • Medir según la carga. La documentación separa las respuestas conversacionales de las ejecuciones agentivas, y recomienda comparar con y sin Caveman en el proveedor real.
  • Instalación local y verificable. Declara no tener telemetría, cuentas ni llamadas de red tras la instalación. Para la ruta de instalación remota, descarga archivos fijados a una etiqueta y comprueba un manifiesto SHA-256.
  • Compatibilidad por adaptadores. Un instalador Node detecta agentes y elige plugin, extensión, reglas o npx skills add; no presupone que todos tengan el mismo sistema de ganchos.

Concentrador multipuerto futurista cuyo núcleo central de neón se conecta mediante rutas de datos adaptables a interfaces holográficas de distintos agentes de programación.

Cómo funciona

El flujo documentado consta de cinco piezas:

  1. El instalador coloca la habilidad en el mecanismo nativo del agente: plugin para Claude Code, extensión para Gemini CLI, archivos de reglas o perfiles de skills para otros entornos.
  2. La habilidad pide escribir de forma concisa, conservar idioma y no tocar artefactos técnicos. Hay niveles lite, full (predeterminado), ultra y wenyan.
  3. En Claude Code, los ganchos de inicio de sesión y de envío de indicaciones mantienen el modo activo; el estado se almacena localmente.
  4. /caveman-stats lee el registro local de sesión y estima la diferencia de tokens frente a una base de referencia. Es una estimación del contrafactual, no una factura del proveedor.
  5. /caveman-compress <archivo> puede reescribir archivos de memoria como CLAUDE.md, con validaciones para preservar código, URL y rutas.

Terminal futurista ejecutando el comando /caveman-stats, con barras de progreso y un panel que muestra «Net Token Savings: Estimated».

Además de la habilidad principal, incluye caveman-commit, caveman-review, caveman-help, caveman-compress y los subagentes cavecrew-*. El middleware MCP caveman-shrink comprime descripciones de herramientas de un servidor MCP, pero requiere un servidor ascendente explícito y es opcional.

Cinturón de herramientas holográfico con un gancho de datos, un martillo de compresión, un láser de reducción de memoria y un sello de confirmación de commits.

Estado oficial y semioficial

El README documenta rutas oficiales del proveedor para instalarlo como plugin de Claude Code (claude plugin marketplace add ... y claude plugin install ...) y como extensión de Gemini CLI. Para Codex, Cursor, Windsurf, Cline y muchos otros, la distribución declarada utiliza el registro vercel-labs/skills o archivos de reglas; esto no equivale a certificación del proveedor.

Por tanto, la condición verificable es de disponibilidad e integración, no de aval técnico de Anthropic, Google, OpenAI o Vercel. Su adopción en múltiples mecanismos y sus 96 mil estrellas lo hacen visible como patrón de compresión de estilo, pero no se recuperó una designación formal de estándar de facto.

El ecosistema

Proyectos del autor

El README define un conjunto de cinco proyectos orientados a que el agente use menos contexto:

  • JuliusBrussee/caveman: reduce la prosa que entrega el agente; 96.179 estrellas.
  • JuliusBrussee/caveman-code: agente de programación de terminal; 902 estrellas.
  • JuliusBrussee/cavemem: memoria persistente comprimida entre agentes; 665 estrellas.
  • JuliusBrussee/cavekit: planificación y validación de construcción guiada por especificaciones; 1.134 estrellas.
  • JuliusBrussee/cavegemma: ajuste LoRA de Gemma 4 31B para el estilo Caveman; 109 estrellas.
  • JuliusBrussee/skills: colección que incluye grill-me, interface-kit, junior-to-senior y loop-factory; 144 estrellas.

Las relaciones anteriores están declaradas por el README o por las descripciones de los repositorios del mismo autor recuperadas mediante la API de GitHub. No prueban compatibilidad automática entre todos ellos.

Bifurcaciones, puertos y extensiones comunitarias

La API de bifurcaciones recuperada identifica, entre otras, yibie/caveman-codex (puerto para Claude Code y Codex, 66 estrellas), KodornaRocks/caveman-ptbr (variante en portugués brasileño, 3 estrellas), jonjonrankin/pi-caveman (adaptación a Pi, 82 estrellas), dantesCode/caveman-opencode-plugin (plugin para OpenCode, 88 estrellas) y anthonystepvoy/caveman-opencode (paquete de OpenCode, 53 estrellas).

La búsqueda de npm recuperó también caveman-shrink, cuya descripción lo identifica como proxy MCP vinculado al repositorio, y paquetes comunitarios como opencode-caveman, pi-caveman y caveman-opencode-plugin. El paquete npm llamado simplemente caveman es un motor de plantillas JavaScript de otro autor; sus 1.821 descargas semanales no son una métrica de este proyecto y no se le atribuyen.

La búsqueda de repositorios encontró wilpel/caveman-compression (1.087 estrellas), que se presenta como compresión semántica de contexto. Es una propuesta relacionada por el problema que aborda, pero no se recuperó evidencia de afiliación con Julius Brussee.

Números del repo

Medición: 6 de agosto de 2026, API de GitHub.

MétricaValor
Estrellas96.179
Bifurcaciones5.524
Suscriptores reales236
Commits263
Incidencias abiertas indicadas por la API466
Lenguaje principalJavaScript
LicenciaMIT
Creación4 de abril de 2026
Última actualización de metadatos6 de agosto de 2026
Última publicaciónv1.10.0, 3 de agosto de 2026

Panel de métricas de GitHub en neón con las cifras 96.179 estrellas, 263 commits y la versión v1.10.0.

Los principales contribuidores devueltos por la API fueron JuliusBrussee (182 contribuciones), github-actions[bot] (10), sebastianbreguel (9), AmirF194 (8) y vraj00222 (5). El total de 263 commits procede del enlace de última página de la paginación de commits de la API. open_issues_count puede incluir solicitudes de cambios abiertas; por eso no debe interpretarse como número exclusivo de incidencias. También se informa subscribers_count, pues watchers_count en la respuesta general de GitHub duplica las estrellas.

Guía rápida de uso

Instalación y primer arranque

Se requiere Node 18 o posterior. En macOS, Linux, WSL o Git Bash, el proyecto documenta:

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

En Windows con PowerShell 5.1 o posterior:

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

Para inspeccionar antes de ejecutar, la documentación propone descargar el guion, revisarlo y ejecutar bash install.sh; también se puede previsualizar sin escribir archivos:

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

El instalador detecta los agentes disponibles y omite los que no estén instalados. Claude Code, Gemini CLI y OpenCode se autoactivan según la matriz de instalación; en los demás casos puede ser necesario invocar /caveman en cada sesión.

Flujos de trabajo habituales

  • Elegir brevedad para una sesión: use /caveman lite, /caveman full o /caveman ultra. Para volver al comportamiento normal, diga normal mode.
  • Preparar un mensaje de confirmación: invoque /caveman-commit; genera el formato de mensaje breve definido por la habilidad.
  • Revisar cambios: use /caveman-review; el formato descrito es una observación por línea con ubicación y severidad.
  • Reducir el contexto de un archivo de memoria: ejecute /caveman-compress CLAUDE.md. El proyecto declara que conserva exactamente bloques de código, URL y rutas; úselo sobre un archivo versionado o con copia de seguridad para poder revisar el resultado.
  • Medir una sesión de Claude Code: ejecute /caveman-stats. El resultado combina uso local real con una línea de ahorro estimado; compárelo con la página de uso del proveedor si el coste importa.

Configuración esencial

  • CAVEMAN_STATUSLINE_SAVINGS=0: oculta el contador de ahorro de la barra de estado de Claude Code.
  • CAVEMAN_DEFAULT_MODE=lite: ejemplo documentado para establecer el modo predeterminado de un gancho.
  • $CLAUDE_CONFIG_DIR/settings.json: contiene las entradas de ganchos; por defecto está bajo ~/.claude/.
  • $CLAUDE_CONFIG_DIR/.caveman-active: archivo de estado que debería contener full tras iniciar Claude Code correctamente.
  • .cursor/rules/caveman.mdc, .windsurf/rules/caveman.md, .clinerules/caveman.md o .github/copilot-instructions.md: destinos de reglas de proyecto que puede crear node cli/install.js --with-init.

Trampas frecuentes y soluciones

Pantalla dividida en un terminal cibernético: un bloque de texto extenso marcado con una X roja frente a un fragmento breve y eficiente con una marca verde, junto a los rótulos «A/B Testing» y «Honest Numbers».

  • Ahorro neto negativo: docs/HONEST-NUMBERS.md advierte que la habilidad añade aproximadamente 1–1,5 mil tokens de entrada por turno. Para preguntas ya breves o planes facturados por solicitud, desactívela y haga una prueba A/B; no basta el porcentaje de salida.
  • Claude Code no cambia de estilo: compruebe node cli/install.js --list, confirme que claude fue detectado, revise los ganchos en settings.json, compruebe .caveman-active y reinicie la sesión. El gancho SessionStart no se aplica a una sesión ya abierta.
  • Fallo en PowerShell: use install.ps1, no el guion de Bash. La documentación indica que, si la política bloquea irm | iex, puede ejecutarse Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass en esa sesión antes de repetir la instalación.
  • El instalador de OpenCode fallaba por un archivo ausente: la incidencia #391, abierta por Mikuller, describía un ENOENT para caveman-compress.md; la nota de v1.9.0 declara que el comando ya se incluye. Actualice y vuelva a instalar antes de crear archivos manualmente.
  • Conflictos con Antigravity: Master-Antonio informó en #428 que la habilidad no era visible tras instalarla. Para integraciones no autodetectables, use el identificador explícito que figura en la matriz, por ejemplo --only antigravity, y verifique primero con --list.

Integraciones y migración

El instalador ofrece rutas nativas para Claude Code, Gemini CLI, OpenCode, OpenClaw y Hermes Agent, y perfiles de skills para Codex, Cursor, Windsurf, Cline, Copilot y otros. Para instalar solo un destino se usa, por ejemplo:

node cli/install.js --only cursor

Para reglas siempre activas dentro del repositorio actual:

node cli/install.js --with-init

La integración MCP es opcional; --with-mcp-shrink="<comando ascendente>" registra el proxy alrededor de un servidor MCP existente. Para retirar la instalación gestionada por Caveman:

npx -y github:JuliusBrussee/caveman -- --uninstall

Las habilidades instaladas mediante npx skills add no las borra ese desinstalador: la documentación remite a npx skills remove caveman o al gestor de habilidades del editor.

Cómo contribuir

La guía de contribución distingue tres tipos de cambios: prosa de habilidades, soporte para un agente nuevo y arreglos de ganchos o instalador. Pide bifurcación y una solicitud de cambios pequeña, con un único propósito y mensajes Conventional Commits.

La regla más importante es editar la fuente de verdad superior, no copias por agente: skills/caveman/SKILL.md para comportamiento, cli/install.js para la matriz de agentes, src/hooks/ para ganchos y src/mcp-servers/caveman-shrink/ para el servidor MCP. Las copias bajo plugins/ se regeneran en CI y se sobrescriben.

Las comprobaciones documentadas son:

npm test
python3 -m unittest tests.test_compress_safety
node tests/test_caveman_init.js
node tests/test_symlink_flag.js

Para reproducir los benchmarks de API se requiere ANTHROPIC_API_KEY en .env.local y se usa uv run python benchmarks/run.py. El arnés de evaluación local usa python evals/llm_run.py y python evals/measure.py.

Cómo lo recibió la comunidad

El hilo de Hacker News 47647455 ofrece evidencia abundante y dividida:

  • gozzoo consideró útil recibir mensajes cortos y enfocados de agentes porque los textos largos dificultan seguir el trabajo; planteó que la idea podía aplicarse más allá de los agentes de código.
  • vova_hn2 dijo que encontraba el estilo más fácil de leer que la prosa típica de modelos. bhwoo48 lo relacionó con su preocupación por costes, lo calificó como una idea útil y marcó el repositorio con una estrella. Son experiencias individuales, no una prueba de ahorro.
  • nayroclade objetó que, en programación agentiva, el cuello de botella suele ser la entrada —árboles de directorios, archivos, habilidades y salidas de herramientas—, mientras la salida es relativamente pequeña. Esta crítica coincide con la advertencia posterior del propio proyecto sobre el coste de la habilidad.
  • TeMPOraL sostuvo que reducir tokens puede limitar la computación disponible del modelo y degradar respuestas difíciles. En sentido contrario, dTal argumentó que tokens de baja entropía como artículos no necesariamente almacenan información útil. Es un desacuerdo técnico entre usuarios, no un benchmark concluyente.
  • raincole resumió un límite metodológico: sin evaluación, no deben derivarse conclusiones desde primeros principios. El repositorio respondió posteriormente con un benchmark propio y enlazó la prueba de JetBrains, pero la calidad debe medirse por modelo y carga concreta.

No se recuperaron hilos verificables en Reddit, publicaciones accesibles de X, una página de Product Hunt, podcasts, artículos de Dev.to/Hashnode ni vídeos con metadatos fiables durante las búsquedas de esta ejecución. Es ausencia de evidencia recuperable, no evidencia de ausencia de comunidad.

Caveman frente a otras propuestas

PropuestaCoincidencia verificableDiferencia verificable
JuliusBrussee/caveman-codeComparte autor y el objetivo de consumir menos tokens.Se presenta como un agente completo de terminal; Caveman modifica principalmente la forma de las respuestas de agentes existentes.
wilpel/caveman-compressionAmbos se describen como compresión en el contexto de LLM.Su descripción habla de compresión semántica del contexto; no se recuperó una integración ni afiliación con Caveman.
JuliusBrussee/cavememForma parte del conjunto de proyectos del autor para agentes.Se centra en memoria persistente entre agentes, mientras Caveman trabaja sobre salida, reglas y archivos de memoria bajo petición.
JuliusBrussee/cavegemmaUsa la misma identidad de estilo y es del mismo autor.Es un ajuste LoRA de un modelo Gemma; Caveman es una capa de instrucciones y ganchos, sin exigir cambiar de modelo.

La diferencia práctica es de capa: Caveman es adecuado cuando se quiere conservar el agente y reducir su narración; un agente completo, una memoria externa o un ajuste de pesos resuelven problemas distintos y requieren otra migración.

Casos de uso y a quién puede ayudar este repositorio

  • Desarrolladores que reciben explicaciones, revisiones o diagnósticos largos pueden activar lite, full o ultra para leer antes la conclusión, conservando comandos y fragmentos técnicos literalmente.
  • Equipos que mantienen CLAUDE.md u otros archivos de instrucciones extensos pueden evaluar /caveman-compress sobre copias versionadas para disminuir el tamaño de esos archivos cargados repetidamente, revisando el resultado y la copia de seguridad.
  • Personas que alternan Claude Code, Gemini CLI, Codex, Cursor u OpenCode pueden usar el instalador unificado o reglas locales para conservar una política de concisión sin reescribir manualmente la instrucción para cada entorno.
  • Equipos sensibles a coste y latencia pueden usar /caveman-stats como punto de partida y contrastarlo con una prueba A/B del proveedor. La documentación desaconseja su uso si predominan tareas breves, la facturación es por solicitud o el experimento da ahorro neto negativo.
  • Mantenedores de servidores MCP pueden evaluar caveman-shrink cuando el volumen de descripciones de herramientas es un problema, configurándolo solo alrededor de un servidor ascendente conocido.

Recursos


Nota: este artículo combina el README, las guías de instalación y contribución, las notas de publicación, la API de GitHub, npm, el sitio oficial, la evaluación enlazada de JetBrains y Hacker News, consultados el 6 de agosto de 2026. Las cifras cambian con el tiempo.

Comentarios