# Caveman Intensity Levels Explained: When to Use Lite, Full, Ultra, and Wenyan Modes

> Understand Caveman intensity levels Lite, Full, Ultra, and Wenyan. Learn when to use each mode to optimize token usage while preserving technical accuracy and readability for your projects.

- Repository: [Julius Brussee/caveman](https://github.com/JuliusBrussee/caveman)
- Tags: deep-dive
- Published: 2026-07-06

---

**Caveman provides six intensity levels—lite, full, ultra, wenyan-lite, wenyan-full, and wenyan-ultra—that progressively strip linguistic filler to reduce token usage while preserving technical accuracy, with lite maintaining readability and ultra maximizing compression.**

The JuliusBrussee/caveman repository implements a token-saving compression system for Claude-based agents through configurable **caveman intensity levels**. At session start, the activation hook filters the skill's ruleset to emit only the row matching your selected intensity, ensuring the model adheres to specific compression constraints throughout the conversation.

## What Are Caveman Intensity Levels?

Caveman operates as a **filtered ruleset mode** defined in [`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md). When activated, the hook in [`src/hooks/caveman-activate.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-activate.js) (lines 93-101) strips the YAML front-matter from the skill file and filters the intensity table to retain only the header and the row corresponding to your selected level. This filtered subset travels with the session, instructing Claude to apply specific linguistic constraints—such as removing articles, hedging, or sentence fragments—while strictly preserving code, error messages, and API names.

## The Six Caveman Intensity Levels

The skill file defines six distinct levels that balance compression against readability.

### Lite

**Lite** removes filler and hedging but keeps full sentences and articles. The prose remains professional and tight, making it ideal when you need concise but fully readable answers for documentation snippets or quick explanations where natural language flow matters.

### Full (Default)

**Full** is the default mode that drops articles, allows sentence fragments, and substitutes short synonyms. This represents the classic "caveman" style and serves as the general-purpose token-saving option for routine code reviews and bug-fix suggestions.

### Ultra

**Ultra** strips conjunctions, uses bare fragments, forbids invented abbreviations (e.g., `cfg`, `impl`) and arrows (→), and states every fact exactly once. Use this when maximum compression is required, such as processing large-scale diffs, log summarization, or when approaching model token limits.

### Wenyan-Lite

**Wenyan-lite** applies classical Chinese register with light compression while maintaining Chinese grammar structure. This suits users preferring historical Chinese style with fairly readable output, such as teaching classical Chinese programming concepts.

### Wenyan-Full

**Wenyan-full** delivers full-blown 文言文 (classical Chinese) with 80-90% character reduction. Select this for the most terse classical Chinese prose, often used for poetic or highly compact Chinese documentation.

### Wenyan-Ultra

**Wenyan-ultra** applies extreme classical-Chinese compression. Use this for ultra-short Chinese snippets or scenarios where every single character must be preserved.

## How to Activate Different Intensity Levels

Intensity levels are triggered through slash commands defined in [`commands/caveman.md`](https://github.com/JuliusBrussee/caveman/blob/main/commands/caveman.md). The activation hook writes your selection to `$CLAUDE_CONFIG_DIR/.caveman-active` and filters the ruleset accordingly.

```bash

# Default full compression mode

/caveman

```

```bash

# Light compression - keeps full sentences

/caveman lite

```

```bash

# Maximum compression - bare fragments only

/caveman ultra

```

```bash

# Classical Chinese variants

/caveman wenyan-lite
/caveman wenyan-full
/caveman wenyan-ultra

```

```bash

# Disable compression and return to normal mode

stop caveman

```

## Choosing the Right Level for Your Use Case

Select your intensity based on the trade-off between token savings and readability requirements:

- **Lite**: Best for brief, human-friendly answers like error explanations or tutorials requiring full sentences.
- **Full**: The standard choice for general token-saving in routine code reviews and standard interactions.
- **Ultra**: Essential when running out of tokens during large document processing or complex diffs.
- **Wenyan variants**: Use when users explicitly request Chinese output, selecting the specific tier based on desired terseness versus readability.

## Summary

- **Caveman intensity levels** are defined in [`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md) and filtered by the activation hook at [`src/hooks/caveman-activate.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-activate.js) (lines 93-101).
- **Six levels** exist: lite, full (default), ultra, wenyan-lite, wenyan-full, and wenyan-ultra.
- **Lite** preserves readability while removing filler; **ultra** maximizes compression through bare fragments.
- **Wenyan modes** provide classical Chinese compression registers.
- **Activation** occurs via `/caveman [level]` commands processed through [`commands/caveman.md`](https://github.com/JuliusBrussee/caveman/blob/main/commands/caveman.md).

## Frequently Asked Questions

### What is the default caveman intensity level?

**Full** is the default intensity level when you invoke `/caveman` without specifying a parameter. This mode drops articles and allows sentence fragments while maintaining clarity, serving as the standard token-saving option for most interactions.

### How does the activation hook filter the ruleset?

The hook in [`src/hooks/caveman-activate.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-activate.js) reads [`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md), removes the YAML front-matter, and filters the intensity table to emit only the header row and the specific level row matching your selection (lines 93-101). This filtered subset constrains the model's output style for the entire session.

### Can I switch intensity levels mid-conversation?

Yes. You can switch levels by issuing a new `/caveman [level]` command at any time. The activation hook updates the active configuration and re-filters the ruleset. To disable compression entirely, use `stop caveman`, which removes the caveman constraints and returns Claude to normal operating mode.

### What is the difference between ultra and wenyan-ultra?

**Ultra** applies maximum compression to English or standard text output using bare fragments and strict abbreviation rules. **Wenyan-ultra** applies the same compression philosophy to classical Chinese (文言文), producing the tightest possible character-efficient expression while maintaining classical linguistic structures.