вводный курс по caveman: меньше AI-болтовни, сжатие на 75% Token — и точнее

April 12, 2026

Уровень входа | примерно 10 минут | вы освоите полную установку и настройку caveman, разберётесь в четырёх режимах сжатия — Lite / Full / Ultra / Wenyan — и выжмете каждый Token из вывода AI.

Обзор проекта

caveman — это навык сжатия вывода для AI-кодинг-помощника, разработанный Julius Brussee; репозиторий: JuliusBrussee/caveman.

Его ключевая цель предельно проста: чтобы ответы AI содержали только полезное. При сохранении той же технической точности вывод сжимается примерно на 75% Token. Исследование 2026 года (arxiv:2604.00025) даже показывает, что при добавлении к LLM лаконичных ограничений точность на некоторых бенчмарках растёт на 26 процентных пунктов — так что много говорить не значит отвечать правильно.

caveman — это не просто шутка. Он встроил четыре уровня силы сжатия (Lite / Full / Ultra / Wenyan) плюс три поднавыка: caveman-commit (предельно минимальные сообщения для commit), caveman-review (однострочный ревью кода) и caveman-compress (сжатие файлов памяти). Поддерживает более 40 AI-кодинг-помощников, включая Claude Code, Codex, Cursor, Windsurf, Cline, Copilot, Gemini CLI и др.

Целевая аудитория

Вы каждый день используете AI-кодинг-помощника, но часто сталкиваетесь с тем, что ответы слишком многословные, акценты размыты и после прочтения всё равно приходится самому выделять суть. Ускорение и снижение стоимости — ваша насущная необходимость: не хочется тратить Token и время на бессмысленные любезности.

Ключевые зависимости и окружение

ЗависимостьОписание
AI-кодинг-помощникClaude Code / Codex / Cursor / Gemini CLI и т.п., нужен минимум один
Node.jsтребуется для установки через npx skills
Python 3.10+caveman-compress использует инструмент сжатия
Gitнужна установка плагином

Полная структура проекта

my-project/
├── CLAUDE.md                    # Записывается после установки caveman, действует всегда (Claude Code)
├── .caveman/                    # Папка-отметка состояния (генерируется автоматически)
│   └── .caveman-active          # Текущий режим: full / lite / ultra / wenyan
├── .cursor/rules/caveman.mdc    # Правило Cursor always-on (генерируется автоматически)
├── .windsurf/rules/caveman.md   # Правило Windsurf always-on (генерируется автоматически)
├── .clinerules/caveman.md      # Правило Cline (генерируется автоматически)
└── .github/copilot-instructions.md  # Правило Copilot (генерируется автоматически)

Пошаговая инструкция

Шаг 1 — Установка caveman

caveman поддерживает 40+ AI-кодинг-помощников. Выберите команду под вашу платформу:

Claude Code (рекомендуется)

# Вариант 1: из маркетплейса плагинов (самый простой)
claude plugin marketplace add JuliusBrussee/caveman
claude plugin install caveman@caveman

# Вариант 2: установка скриптом (если без системы плагинов)
# 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. Клонируйте репозиторий → откройте Codex в нужной папке → /plugins → найдите "Caveman" → Install

# Windows (сначала включите символьные ссылки)
git config --global core.symlinks true
# Далее то же самое: клонировать → VS Code → Codex Settings → Plugins → установить 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

Другие Agent’ы (opencode / Roo / Goose / Kiro и др., всего 40+ )

npx skills add JuliusBrussee/caveman    # автоопределение
# или явно указать
npx skills add JuliusBrussee/caveman -a opencode
npx skills add JuliusBrussee/caveman -a roo

WARNING

npx skills add устанавливает только сам skill-файл, но не файл правил always-on для Agent. Поэтому после установки Cursor / Windsurf / Cline / Copilot каждый новый сеанс нужно активировать вручную. Шаг 7 покажет, как сделать активацию постоянной.

Шаг 2 — Активация режима caveman

После установки в любом диалоге введите любую из следующих команд:

/caveman          # режим Full по умолчанию
$caveman          # для Codex символ $ вместо /

Или просто спровоцируйте запуск фразой:

talk like caveman
caveman mode
less tokens please

TIP

В Claude Code / Gemini CLI / Codex команда /caveman автоматически триггерит hook SessionStart в каждом новом сеансе, так что после настройки не нужно активировать вручную каждый раз. Для Cursor / Windsurf и т.п. нужна дополнительная настройка из шага 7.

Шаг 3 — Выбор уровня сжатия

caveman имеет четыре уровня силы сжатия — переключайте командой:

РежимТриггер-командаОсобенностиСценарии
Lite/caveman liteубирает filler, сохраняет полный синтаксис — профессионально, но компактноофициальное общение, когда нужно сохранить структуру
Full/caveman fullубирает артикли (a/an/the), разрешает разрывы, заменяет короткие словаповседневная разработка (по умолчанию)
Ultra/caveman ultraмаксимальное сжатие, сокращения, причинно-следственные стрелки (→)быстрая отладка, стресс-ситуации
Wenyan/caveman wenyanсжатие в стиле вэньяньвэнь, классический синтаксисгики и «красивые трюки», китайские разработчики

Сравнение на одном и том же вопросе про React:

🗣️ Обычный ответ (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."

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

Выход из режима caveman:

stop caveman
normal mode

IMPORTANT

Содержимое code block не сжимается. caveman сжимает только естественноязыковые ответы: код, пути к файлам, URL и команды всегда остаются без изменений.

Шаг 4 — caveman-commit: ультра-минимальные commit-сообщения

caveman-commit — поднавык, специально предназначенный для генерации commit message. Формат следует Conventional Commits, а подлежащее не превышает 50 символов:

/caveman-commit

Пример вывода:

# Commit обычного Claude (слишком многословно):
"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."

# Результат caveman-commit:
"feat(auth): JWT + bcrypt login, session middleware"

Формат подлежащего: type(scope): subject — всегда не более 50 символов, why over what.

Шаг 5 — caveman-review: однострочное ревью кода

caveman-review делает однострочное ревью для PR или кусков кода. Формат фиксированный, без лишних слов:

/caveman-review

Вставьте ваш diff или код — и он выдаст:

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

Больше не нужно перечитывать в комментариях к PR целые простыни вроде «я думаю, тут можно улучшить» — просто получите, какая строка проблемная и как это исправить.

Формат: L<номер строки>: <🔴🟡🟢> <тип проблемы>: <описание>. <рекомендация по исправлению>.

Шаг 6 — caveman-compress: сжатие файлов памяти проекта

Это один из самых практичных поднавыков caveman. Ваш CLAUDE.md каждый сеанс читает AI: если внутри много дружелюбных, но длинных объяснений, на их чтение каждый раз тратятся Token. caveman-compress сжимает такие файлы в формат, который AI читает эффективнее, сохраняя при этом оригинальный бэкап для вашего редактирования.

/caveman:compress CLAUDE.md

После запуска:

CLAUDE.md          ← сжатая версия (Claude читает её каждый раз)
CLAUDE.original.md ← оригинальный бэкап (редактируете его; сжатие — одностороннее)

Фактический эффект сжатия:

ФайлИсходные tokensПосле сжатияЭкономия
claude-md-preferences.md70628559.6%
project-notes.md114553553.3%
claude-md-project.md112263643.3%
todo-list.md62738838.1%
mixed-with-code.md88856036.9%
Среднее89848146%

TIP

caveman-compress сжимает только prose (абзацы естественного языка). Code blocks, URL, пути к файлам, команды, заголовки и даты/версии — всё сохраняется как есть. Никакого «ошибочного» сжатия.

Шаг 7 — Настройка Always-On

После установки Claude Code / Gemini CLI функция always-on включается автоматически — допнастройки не нужны.

Cursor / Windsurf / Copilot и т.п. после установки через npx skills add требуют вручную добавить snippet, чтобы активация была постоянной. Запишите предпочитаемую «силу» в файл правил 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".

Куда именно добавлять для разных Agent’ов:

AgentПуть к файлу
Cursor.cursor/rules/caveman.mdc
Windsurf.windsurf/rules/caveman.md
Copilot.github/copilot-instructions.md или ваши пользовательские инструкции
opencode.config/opencode/AGENTS.md
Roo.roo/rules/caveman.md

Шаг 8 — Удаление / восстановление настроек по умолчанию

# Удаление плагина для Claude Code
claude plugin uninstall caveman

# Удаление standalone hooks
bash hooks/uninstall.sh           # macOS / Linux
powershell -File hooks\uninstall.ps1  # Windows

# Удаление через npx skills
npx skills remove caveman

# Удаление для Gemini CLI
gemini extensions uninstall caveman

После удаления папку состояния .caveman/ и файлы правил нужно очистить вручную (если нужно).

Частые вопросы и поиск проблем

1. Плагин установлен, но caveman не активируется автоматически

Claude Code использует hook SessionStart для автозапуска. Проверьте, корректно ли он записан:

# Проверка hook в ~/.claude/settings.json
cat ~/.claude/settings.json | grep -i "SessionStart"

# Или переустановите заново
claude plugin uninstall caveman
claude plugin install caveman@caveman

2. Cursor / Windsurf always-on не работает

npx skills add не добавляет always-on правила автоматически. Вручную внесите snippet из шага 7 в соответствующий файл правил, сохраните и перезагрузите Agent.

3. Режим Wenyan выдаёт сплошной «крякозябр» или вопросительные знаки

Убедитесь, что и терминал, и редактор поддерживают UTF-8. На Windows кодировка по умолчанию в PowerShell может быть проблемной:

chcp 65001
$env:LESSCHARSET=utf-8

В VS Code внизу на статусной панели проверьте, что кодировка символов — UTF-8.

4. caveman-compress сжал и code blocks

Это невозможно: code blocks, URL, пути к файлам и команды — это пропускаемые элементы, они не участвуют в сжатии. Если вы видите отклонение, обычно причина в формате файла (например, пропущена разметка тройных backticks ```). Можно вручную свериться и восстановить из CLAUDE.original.md.

5. Команда /caveman не реагирует

Возможно, другие skill перехватывают команды со слэшем. В Claude Code попробуйте триггер фразой: "talk like caveman". Если всё равно не работает — проверьте, нет ли конфликта с skill, имеющим то же имя.

6. Когда несколько Agent’ов сосуществуют, caveman перестаёт работать в одном из них

Настройки caveman независимы для каждого Agent и не влияют друг на друга. Если в каком-то Agent не срабатывает, проверьте, есть ли в его директории правил файлы, связанные с caveman.

Дополнительное чтение / куда развивать дальше

1. Трёхрукий тест caveman: как гарантировать честность данных

Большинство оценок «приёма сжатия» сравнивают ответы из skill с обычным ответом — но это несправедливо, потому что terseness (лаконичность) сама по себе повышает качество. caveman использует трёхрукий тест: _baseline_ (без системного промпта), _terse_ (только «Answer concisely») и <skill> (полные правила caveman). Реальная экономия — это разница между skill и terse, а не skill и baseline. Такой подход стоит перенять для оценки любых AI-помощников.

2. Как интерпретировать реальные Benchmark-данные

На практике 10 задач: среднее число выходных Token снизилось с 1214 до 294, экономия 65%. Диапазон от 22% (git rebase vs merge: объяснение само по себе длинное) до 87% (границы ошибки в React: обычный ответ чрезмерно развернут). Чем легче задача «уходит в многословные объяснения», тем больше экономит caveman.

3. Cavekit: инструментальный набор с спецификациями от того же автора

JuliusBrussee/cavekit — сопутствующий проект: пишете спецификацию языком caveman → параллельно собираете в Claude → выпускаете готовое ПО. Если вы оптимизируете выходную эффективность с помощью caveman, cavekit может сделать похожие вещи и на входной стороне.

4. Пользовательские уровни сжатия

skills/caveman/SKILL.md определяет все правила уровней. Можно скопировать, изменить таблицу сокращений, сохранить таблицу или поменять правила для причинно-следственных символов — и создать свои режимы. Например, добавить сокращения внутренних команд в команде или запретить заменять некоторые технические термины.

5. Межъязыковая применимость сжатия в стиле Wenyan

Принцип режима Wenyan такой: самая краткая письменная речь за всю историю человечества + крайне низкая плотность «символьных» Token. В англоязычном корпусе wenyan-full всё равно сжимает примерно на 40–60%, потому что классический китайский синтаксис «опускание подлежащего + инверсия глагол—дополнение» остаётся эффективным в одноязычной среде. Подходит для сценариев, где нужно предельно сжать, и где вы готовы подстроиться под специфический синтаксис.

Updated April 12, 2026