入门 caveman:减少 AI 废话,压缩 75% Token,结果更准确

April 12, 2026

Dificultad de inicio | ~10 minutos | Dominarás el flujo completo de instalación y configuración de caveman, entenderás los cuatro modos de compresión Lite / Full / Ultra /文言文 y exprimirás cada Token de la salida de la IA.

Descripción del proyecto

caveman es una habilidad de compresión para la salida de un asistente de codificación con IA, desarrollada por Julius Brussee; su repositorio en GitHub es JuliusBrussee/caveman.

Su objetivo es sencillo: hacer que las respuestas de la IA digan solo lo útil. Manteniendo la misma precisión técnica, comprime los tokens de salida aproximadamente en un 75%. Un estudio de 2026 (arxiv:2604.00025) incluso descubrió que, al imponer restricciones de concisión a los modelos grandes, en algunos benchmarks la tasa de acierto mejora en 26 puntos porcentuales: dicho de otro modo, hablar mucho no necesariamente significa responder bien.

caveman no es solo un proyecto de broma. Incluye cuatro niveles de intensidad de compresión (Lite / Full / Ultra / 文言文) y, además, tres subhabilidades: caveman-commit (mensajes de commit ultra minimalistas), caveman-review (revisión de código en una sola línea) y caveman-compress (compresión de archivos de memoria). Compatible con más de 40 asistentes de codificación con IA, como Claude Code, Codex, Cursor, Windsurf, Cline, Copilot, Gemini CLI, etc.

Público objetivo

Usas un asistente de IA para programar todos los días, pero a menudo te encuentras con lo mismo: las respuestas son demasiado largas, no resaltan los puntos clave y, al terminar, todavía tienes que hacer tu propia síntesis. Acelerar y reducir costes es tu requisito inmediato: no quieres que las frases de cortesía inútiles te gasten Tokens y tiempo.

Dependencias y entorno clave

DependenciaDescripción
Asistente de codificación con IAClaude Code / Codex / Cursor / Gemini CLI, etc.; al menos uno
Node.jsSe requiere para el método de instalación con npx skills
Python 3.10+La herramienta caveman-compress requiere esto
GitSe requiere para la instalación mediante plugin

Estructura completa del proyecto

my-project/
├── CLAUDE.md                    # Se escribe tras instalar caveman y siempre está activo (Claude Code)
├── .caveman/                    # Carpeta de marcas de estado (se genera automáticamente)
│   └── .caveman-active          # Modo actual: full / lite / ultra / wenyan
├── .cursor/rules/caveman.mdc    # Regla always-on para Cursor (se genera automáticamente)
├── .windsurf/rules/caveman.md   # Regla always-on para Windsurf (se genera automáticamente)
├── .clinerules/caveman.md      # Regla para Cline (se genera automáticamente)
└── .github/copilot-instructions.md  # Regla para Copilot (se genera automáticamente)

Pasos guiados

Paso 1 — Instalar caveman

caveman soporta 40+ asistentes de codificación con IA. Elige un comando según tu plataforma:

Claude Code (recomendado)

# Opción 1: marketplace de plugins (lo más simple)
claude plugin marketplace add JuliusBrussee/caveman
claude plugin install caveman@caveman

# Opción 2: instalación con script (si no usas el sistema de plugins)
# macOS / Linux / WSL
bash <(curl -s https://raw.githubusercontent.com/JuliusBrussee/caveman/main/hooks/install.sh)

# Windows PowerShell
irm https://raw.githubusercontent.com/JuliusBrussee/caveman/main/hooks/install.ps1 | iex

Codex (VS Code + Codex)

# macOS / Linux
# 1. Clona el repo → abre Codex en el directorio objetivo → /plugins → busca "Caveman" → Install

# Windows (primero habilita enlaces simbólicos)
git config --global core.symlinks true
# Luego igual que antes: clonar → VS Code → Config de Codex → Plugins → instala Caveman

Gemini CLI

gemini extensions install https://github.com/JuliusBrussee/caveman

Cursor / Windsurf / Cline / Copilot

npx skills add JuliusBrussee/caveman -a cursor
npx skills add JuliusBrussee/caveman -a windsurf
npx skills add JuliusBrussee/caveman -a cline
npx skills add JuliusBrussee/caveman -a github-copilot

Otros agentes (opencode / Roo / Goose / Kiro, etc., 40+).

npx skills add JuliusBrussee/caveman    # detección automática
# o especificando
npx skills add JuliusBrussee/caveman -a opencode
npx skills add JuliusBrussee/caveman -a roo

WARNING

npx skills add solo instala el archivo de skill en sí, no el archivo de regla always-on del Agent. Por eso, en Cursor / Windsurf / Cline / Copilot, tras la instalación cada sesión requiere activación manual. El paso 7 explica cómo dejarlo siempre activado.

Paso 2 — Activar el modo caveman

Tras instalarlo, en cualquier conversación basta con introducir uno de estos comandos para activarlo:

/caveman          # modo Full por defecto
$caveman          # Codex usa $ en lugar de /

O bien dispararlo hablando directamente:

talk like caveman
caveman mode
less tokens please

TIP

En Claude Code / Gemini CLI / Codex, /caveman se dispara automáticamente en cada nueva sesión mediante el hook SessionStart. Por tanto, tras instalarlo no necesitas activarlo manualmente cada vez. Cursor / Windsurf, etc., requieren la configuración adicional del paso 7.

Paso 3 — Elegir el nivel de compresión

caveman tiene cuatro niveles de intensidad de compresión; cambia usando estos comandos:

NivelComando de activaciónCaracterísticaEscenario de uso
Lite/caveman liteQuita relleno, mantiene sintaxis completa; profesional pero concisoComunicación formal, donde hay que conservar estructura
Full/caveman fullElimina artículos (a/an/the), permite saltos de frase, sustituye palabras cortasDesarrollo diario (por defecto)
Ultra/caveman ultraCompresión al máximo: abreviaturas y flechas de causa/efecto (→)Depuración rápida, escenarios de alta presión
文言文/caveman wenyanCompresión estilo文言文, gramática de chino clásicoMaestría geek, desarrolladores de habla china

Comparación con el mismo problema de React:

🗣️ Respuesta normal (69 tokens):
"Your React component re-renders because you are creating a new object reference on each
render cycle. When you pass an inline object as a prop, React's shallow comparison sees
it as a different object every time, which triggers a re-render. I'd recommend using
useMemo to memoize the object."

🪶 Lite (39 tokens):
"Your component re-renders because you create a new object reference each render.
Inline object props fail shallow comparison every time. Wrap it in useMemo."

🪨 Full (19 tokens):
"New object ref each render. Inline object prop = new ref = re-render. Wrap in useMemo."

🔥 Ultra (15 tokens):
"Inline obj prop → new ref → re-render. useMemo."

📜 文言文 (11 tokens):
"物出新參照,致重繪。useMemo Wrap之。"

Salir del modo caveman:

stop caveman
normal mode

IMPORTANT

El contenido de los bloques de código no se comprime. caveman solo comprime respuestas de lenguaje natural: el código, las rutas de archivos, las URL y los comandos permanecen siempre tal cual.

Paso 4 — caveman-commit: mensajes de commit ultra minimalistas

caveman-commit es una subhabilidad dedicada a generar mensajes de commit, siguiendo Conventional Commits, con un sujeto que no supera los 50 caracteres:

/caveman-commit

Ejemplo de salida:

# Commit de Claude normal (demasiado largo):
"Added user authentication functionality including JWT token generation and validation,
password hashing with bcrypt, and session management middleware. This improves security
by implementing proper authentication flows."

# Resultado de caveman-commit:
"feat(auth): JWT + bcrypt login, session middleware"

Formato del sujeto: type(scope): subject, siempre con menos de 50 caracteres; why antes que what.

Paso 5 — caveman-review: revisión de código en una sola línea

caveman-review realiza una revisión en una sola línea de PRs o fragmentos de código. Formato fijo, sin rodeos:

/caveman-review

Pega tu diff o código y saldrá:

L42: 🔴 bug: user null. Add guard.
L58: 🟡 perf: N+1 query. Prefetch in ORM.
L71: 🟢 nit: unused import. Remove.

Ya no necesitas leer en los comentarios del PR un montón de “creo que aquí se podría mejorar”; te dice directamente qué problema hay en qué línea y cómo corregirlo.

Formato: L<número de línea>: <🔴🟡🟢> <tipo de problema>: <descripción>. <sugerencia de arreglo>.

Paso 6 — caveman-compress: comprimir archivos de memoria del proyecto

Esta es una de las subhabilidades más útiles de caveman. Cada sesión lee tu CLAUDE.md. Si dentro hay un montón de explicaciones humanas y largas, cada vez se desperdician Tokens en leerlas. caveman-compress comprime esos archivos de memoria a un formato eficiente para que la IA los lea, manteniendo al mismo tiempo una copia original para que puedas editarla.

/caveman:compress CLAUDE.md

Al ejecutarlo:

CLAUDE.md          ← versión comprimida (la lee Claude cada vez)
CLAUDE.original.md ← copia de respaldo original (edítala tú; la compresión es unidireccional)

Resultados reales de compresión:

Archivotokens originalestras comprimirahorro
claude-md-preferences.md70628559.6%
project-notes.md114553553.3%
claude-md-project.md112263643.3%
todo-list.md62738838.1%
mixed-with-code.md88856036.9%
Promedio89848146%

TIP

caveman-compress solo comprime prosa (párrafos de lenguaje natural). Los bloques de código, URL, rutas de archivos, comandos, títulos y fechas, números de versión se conservan tal cual, sin que se compriman por error.

Paso 7 — Configuración Always-On

Tras instalar Claude Code / Gemini CLI, queda always-on de forma automática; no necesitas configuración adicional.

Cursor / Windsurf / Copilot, etc., al instalar con npx skills add, requieren que añadas manualmente un snippet para que quede siempre activado. Escribe la intensidad que prefieras en el archivo de reglas del Agent:

Terse like caveman. Technical substance exact. Only fluff die.
Drop: articles, filler (just/really/basically), pleasantries, hedging.
Fragments OK. Short synonyms. Code unchanged.
Pattern: [thing] [action] [reason]. [next step].
ACTIVE EVERY RESPONSE. No revert after many turns.
Code/commits/PRs: normal. Off: "stop caveman" / "normal mode".

Ubicación de cada Agent:

AgentRuta del archivo
Cursor.cursor/rules/caveman.mdc
Windsurf.windsurf/rules/caveman.md
Copilot.github/copilot-instructions.md o instrucciones personalizadas
opencode.config/opencode/AGENTS.md
Roo.roo/rules/caveman.md

Paso 8 — Desinstalar / Restaurar valores predeterminados

# Desinstalar plugin de Claude Code
claude plugin uninstall caveman

# Desinstalar hooks standalone
bash hooks/uninstall.sh           # macOS / Linux
powershell -File hooks\uninstall.ps1  # Windows

# Desinstalar con npx skills
npx skills remove caveman

# Desinstalar Gemini CLI
gemini extensions uninstall caveman

Tras desinstalar, la carpeta de estado .caveman/ y los archivos de reglas se deben limpiar manualmente (si hace falta).

Solución de problemas frecuentes

1. El plugin está instalado, pero caveman no se activa automáticamente

Claude Code usa el hook SessionStart para activar automáticamente. Verifica que esté escrito correctamente:

# Comprobar si hay SessionStart hook en ~/.claude/settings.json
cat ~/.claude/settings.json | grep -i "SessionStart"

# o reinstalar una vez
claude plugin uninstall caveman
claude plugin install caveman@caveman

2. Cursor / Windsurf always-on no funciona

npx skills add no escribe automáticamente las reglas always-on. Añade manualmente el snippet del paso 7 al archivo de reglas correspondiente; guarda y recarga el Agent.

3. El modo 文言文 produce todo caracteres raros o signos de interrogación

Asegúrate de que tanto la terminal como el editor soporten UTF-8. En Windows, la codificación por defecto en PowerShell puede causar problemas:

chcp 65001
$env:LESSCHARSET=utf-8

En VS Code, confirma en la barra de estado inferior que la codificación de caracteres sea UTF-8.

4. caveman-compress también comprime bloques de código

Es imposible que ocurra: los bloques de código, las URL, las rutas de archivos y los comandos están en la lista de exclusión y no participan en la compresión. Si detectas una anomalía, normalmente es un problema de formato del archivo (por ejemplo, que falte el marcador del bloque de código ), y puedes restaurar manualmente comparando con CLAUDE.original.md.

5. /caveman no responde

Puede que otra skill esté interceptando el comando con barra inclinada. En Claude Code, prueba activarlo diciendo directamente: "talk like caveman". Si sigue sin funcionar, revisa si hay una skill con el mismo nombre que genere conflicto.

6. Con varios Agents, caveman falla en uno de ellos

La configuración de caveman es independiente para cada Agent y no se afecta entre sí. Si no funciona en algún Agent, revisa si existe algún archivo relacionado con caveman dentro del directorio de reglas de ese Agent.

Lecturas ampliadas / Direcciones avanzadas

1. Evaluación de tres brazos de caveman: cómo asegurar datos honestos

La mayoría de evaluaciones de “técnicas de compresión” comparan la respuesta de la skill contra la respuesta normal; es injusto, porque la terseness (concisión) por sí misma mejora la calidad. caveman usa una evaluación de tres brazos: _baseline_ (sin prompt del sistema), _terse_ (solo "Answer concisely") y <skill> (reglas completas de caveman). La medida real de ahorro es la diferencia entre skill vs terse, no entre skill vs baseline. Este marco se puede aplicar a la evaluación de cualquier herramienta de asistencia con IA.

2. Interpretación de datos reales de Benchmark

En una prueba con 10 tareas, los tokens de salida bajaron en promedio de 1214 a 294: un ahorro del 65%. El rango va desde 22% (git rebase vs merge, la explicación en sí ya es larga) hasta 87% (borde de error de React; la respuesta normal se expande demasiado). Cuanto más fácil sea que la respuesta normal “se pase explicando”, más ahorra caveman.

3. Cavekit: una toolchain de desarrollo impulsada por especificaciones del mismo autor

JuliusBrussee/cavekit es un proyecto complementario: escribir especificaciones con el lenguaje de caveman → construir en paralelo con Claude → producir software utilizable. Si estás optimizando la eficiencia de salida con caveman, cavekit también puede hacer algo similar del lado de entrada.

4. Niveles de compresión personalizados

En skills/caveman/SKILL.md se definen todas las reglas de intensidad. Puedes copiarlo, modificar la tabla de abreviaturas, conservar la tabla o ajustar las reglas de símbolos causa/efecto, y así crear tus propios niveles. Por ejemplo, añadir abreviaturas de términos internos del equipo o prohibir reemplazar ciertos términos técnicos.

5. Aplicabilidad multilingüe de la compresión 文言文

La idea del modo 文言文 es: el lenguaje escrito más conciso de la historia humana + una densidad de tokens de caracteres extremadamente baja. En corpus en inglés, wenyan-full aún puede comprimir alrededor de 40-60%, porque la gramática clásica china de “omitir sujeto + invertir verbo y complemento” sigue siendo efectiva dentro de un contexto de un solo idioma. Es adecuado para escenarios donde necesitas una compresión extrema y estás dispuesto a adaptarte a una sintaxis especial.

Updated April 12, 2026