# Understanding the Core Caveman Skill's Terse Prose Mode: Rules and Implementation

> Discover the rules for Caveman skill's terse prose mode. Learn how to compress LLM responses by removing fluff while retaining all technical substance. Activate with a simple sentinel.

- Repository: [Julius Brussee/caveman](https://github.com/JuliusBrussee/caveman)
- Tags: how-to-guide
- Published: 2026-08-22

---

**The core Caveman skill's terse prose mode compresses LLM responses by stripping articles, filler words, and pleasantries while preserving exact technical details, activated by the sentinel sentence "Respond terse like smart caveman. All technical substance stay. Only fluff die."**

The core Caveman skill's terse prose mode is a prompt engineering system in the JuliusBrussee/caveman repository that aggressively condenses AI-generated text without sacrificing code integrity or technical accuracy. This mode operates through a layered rule set defined in [`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md) and enforced by hooks in [`src/hooks/caveman-parse.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-parse.js), ensuring that API names, error strings, and CLI flags remain untouched while linguistic fluff is eliminated.

## Activating the Terse Prose Mode

Activation occurs through a specific sentinel sentence injected into the system prompt. According to the source code in [`src/rules/caveman-activate.md`](https://github.com/JuliusBrussee/caveman/blob/main/src/rules/caveman-activate.md) and [`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md) (line 11), the trigger phrase is:

> Respond terse like smart caveman. All technical substance stay. Only fluff die.

The `caveman-init` tool in [`src/tools/caveman-init.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/tools/caveman-init.js) (line 18) handles this injection when users invoke the `/caveman` command or utter phrases like "be brief" or "use caveman."

## Core Compression Rules

The mode enforces strict linguistic constraints defined in [`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md) (line 19):

- **Articles dropped**: Remove all instances of `a`, `an`, and `the`.
- **Filler elimination**: Strip words like `just`, `really`, and `actually`.
- **Pleasantry removal**: Discard phrases such as `sure` and `of course`.
- **Fragment retention**: Keep sentence fragments and use short synonyms.
- **Negation preservation**: Never omit critical negations including `not`, `never`, and `only`.
- **Technical protection**: Preserve exact code, error strings, API names, and CLI flags verbatim.
- **Output restrictions**: No tool-call narration, tables, emojis, or long raw logs unless explicitly requested.

## Intensity Levels for Graduated Compression

The skill provides four primary intensity tiers ([`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md), line 40):

**Lite**: Removes only filler words while retaining articles and full sentence structures.

**Full**: Drops articles and allows fragments. This is the default intensity when the skill activates.

**Ultra**: Strips conjunctions and forbids invented abbreviations or arrow notation.

**Wenyan variants**: Three additional levels (`wenyan-lite`, `wenyan-full`, `wenyan-ultra`) apply classical Chinese-style compression at the character level.

## Auto-Clarity Safety Mechanisms

The system automatically disables terse mode when ambiguity or safety risks emerge. As implemented in [`src/hooks/caveman-parse.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-parse.js), the auto-clarity check ([`SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/SKILL.md), line 68) triggers for:

- Security warnings
- Irreversible operations
- Multi-step sequences requiring precise ordering
- Explicit user requests for clarification

In these cases, the hook reverts to normal prose for that specific turn.

## Persistence and Boundary Constraints

Once activated, the skill persists across all responses until the user issues `stop caveman` or `normal mode` ([`SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/SKILL.md), line 13). The default intensity remains **full** throughout the session.

However, boundaries prevent style leakage into persisted artifacts. Commits, documentation, issue bodies, and other permanent records are generated in normal prose unless the user explicitly requests terse formatting ([`SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/SKILL.md), line 88).

## Implementation Architecture

The rule enforcement relies on two primary components:

**Injection Layer**: [`src/tools/caveman-init.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/tools/caveman-init.js) parses `/caveman` arguments and writes the sentinel plus optional intensity modifiers into the system prompt.

**Processing Layer**: [`src/hooks/caveman-parse.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-parse.js) (line 190) inspects each model turn, enforcing core rules by dropping disallowed tokens while ensuring technical terms remain untouched. This hook also performs auto-clarity validation before finalizing output.

## Practical Usage Examples

### CLI Activation with Ultra Intensity

```bash
caveman /caveman ultra

```

*Sample output for a bug report:*

```

Bug in auth middleware. Token expiry check use `<` not `<=`. Fix:

```

This demonstrates **ultra** intensity: no articles, minimal fragments, and exact technical tokens preserved.

### Programmatic Usage in Node.js

```javascript
import { execSync } from "child_process";

const result = execSync("caveman /caveman lite <<'EOF'\nExplain why React re‑renders.\nEOF");
console.log(result.toString());

```

*Possible output:*

```

Your component re‑renders because you create a new object reference each render. Wrap it in `useMemo`.

```

The **lite** level maintains full sentences while removing filler words.

### Auto-Clarity Fallback for Dangerous Operations

```bash
caveman /caveman full <<'EOF'
Delete all rows from the users table.
EOF

```

*Result:*

```

**Warning:** This will permanently delete all rows in the `users` table and cannot be undone.

```

Because the operation is irreversible, [`caveman-parse.js`](https://github.com/JuliusBrussee/caveman/blob/main/caveman-parse.js) automatically falls back to normal prose to ensure safety warnings are unambiguous.

## Summary

- The core Caveman skill's terse prose mode uses a sentinel sentence to trigger aggressive text compression while preserving technical accuracy.
- Four intensity levels (lite, full, ultra, and wenyan variants) control the aggressiveness of article and filler removal.
- Auto-clarity mechanisms in [`src/hooks/caveman-parse.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-parse.js) automatically revert to normal prose for security warnings, irreversible actions, or ambiguous sequences.
- The skill persists across sessions until explicitly stopped, but never applies terse formatting to persisted artifacts like commits or documentation unless requested.
- Implementation relies on [`src/tools/caveman-init.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/tools/caveman-init.js) for prompt injection and [`src/hooks/caveman-parse.js`](https://github.com/JuliusBrussee/caveman/blob/main/src/hooks/caveman-parse.js) for rule enforcement.

## Frequently Asked Questions

### How do I activate the Caveman terse prose mode?

Invoke the `/caveman` command or say "be brief" to trigger the `caveman-init` tool. This injects the sentinel sentence "Respond terse like smart caveman. All technical substance stay. Only fluff die." into the system prompt via [`src/rules/caveman-activate.md`](https://github.com/JuliusBrussee/caveman/blob/main/src/rules/caveman-activate.md) logic.

### What is the difference between lite and ultra intensity?

Lite intensity removes only filler words like `just` and `actually` while keeping articles and complete sentences. Ultra intensity strips articles, conjunctions, and prohibits invented abbreviations or arrow notation, resulting in highly compressed fragments.

### Does terse mode affect code comments or commit messages?

No. According to the boundaries defined in [`skills/caveman/SKILL.md`](https://github.com/JuliusBrussee/caveman/blob/main/skills/caveman/SKILL.md) (line 88), the terse style never leaks into persisted artifacts including commits, documentation, or issue bodies. These outputs remain in normal prose unless you explicitly request terse formatting for a specific artifact.

### Why did my response suddenly switch back to normal prose?

The auto-clarity mechanism detected an ambiguous or unsafe context, such as a security warning, irreversible operation, or multi-step sequence. The `caveman-parse` hook automatically reverted to normal prose for that specific turn to prevent dangerous misinterpretations.