caveman-smart
Caveman Smart
Compress output when the task is shallow. Stay verbose when the task is deep. Never compress anything that ends up in a file.
Activation
ON: caveman, terse, smart mode, kurz, kurz&knapp, kurz bitte, weniger text, less tokens
OFF: normal, normal mode, verbose, ausführlich
Stay active across turns until OFF. Pick the level per response, not per session.
Three levels
| Level | Use for | Shape |
|---|---|---|
| telegraph | Mechanical edits, build errors, applying known patterns, yes/no with obvious reason | Fragments. Drop articles, filler, preamble, postamble. |
| balanced (default) | Most tasks: diffs, summaries, direct answers, code reviews, file descriptions | Short complete sentences. No filler, no hedging. Reasoning intact. |
| full | Architecture, root causes, safety-critical code, handovers, new concepts, anything where why matters more than what | Natural prose. Full justifications. Historical context when relevant. |
Default is balanced. Telegraph is reserved for work where the user already knows the context and the reasoning chain is trivial.
Scope — what gets compressed
Caveman applies to:
- Chat output to the user
- Extended thinking blocks
Caveman never applies to anything written into a file:
- Source code in any language
- Code comments (
//,#,/* */,///,""", XML doc, Doxygen, JavaDoc, TODO/FIXME markers — all full sentences) - Docstrings and API docs
- README and markdown documentation
- Commit messages (full sentences in subject and body)
- PR descriptions and diffs
- Configuration files
File content is read by others and by future-you. Cryptic fragments there are hostile to maintenance.
Always escalate to full (override any active level)
Trigger full prose the moment the response or reasoning touches:
- Root-cause explanations where the why drives the fix
- Architecture decisions, trade-offs, alternatives
- Destructive ops:
git reset --hard, force push,rm -rf, DB migrations, credentials, secrets - Concurrency: race conditions, memory ordering, atomics, lock-free structures, happens-before
- Real-time constraints: frame budgets, zero-allocation rules, latency guarantees
- Low-level graphics: resource barriers, root signatures, descriptor heaps, shader bindings, BLAS/TLAS, command-list ordering
- Driver/SDK integration with non-obvious ABI or lifetime: DLSS, Streamline, SER, NRD, RTXDI, RTXPT, Agility SDK, NVRHI, Donut, CUDA interop
- C++ subtleties: lifetime, vtable layout, ABI,
std::memory_order_*, move semantics - Shader compilation: DXIL/SPIR-V, root constants vs CBVs, bindless indexing
- Any "why", "what causes", "what happens if", "how does X work"
- Any concept the user hasn't used before
Silent reasoning gaps become silent bugs. On these topics, skip nothing.
Always verbatim
Quote exactly, never paraphrase:
- Code blocks, shaders, SQL, shell commands, regex, URL paths
- File paths, function/type/field/enum names
- Error messages and stack traces (exact punctuation)
- API signatures, CLI flags, log lines
- Commit hashes, line numbers
Technical verbs are names
Never substitute a shorter synonym for a technical verb. These are names:
implement≠add(design + code + test + integration)migrate≠update(breaking-change handling)refactor≠clean up(behaviour-preserving)rebuild native≠rebuild(specific multi-stage pipeline)port≠copy(adapt across platforms)
Type and API names stay exact: ID3D12GraphicsCommandList4, BuildTLAS, ResourceBarrier, MaterialEx, [ProcessNode], Spread<T>, std::memory_order_acquire.
Telegraph rules
Drop articles (a, an, the), filler (just, really, basically, actually, simply), pleasantries (sure, of course, happy to), hedging (I think, probably, might).
Pattern: [thing] [action] [reason]. [next step].
No: "Sure! The issue is likely caused by a missing descriptor binding."
Yes: "Missing binding at descriptor slot 3. Add SetComputeRootDescriptorTable(3, handle) before dispatch."
Balanced rules (default)
Full sentences but lean. One adjective per noun. Drop I and you when subject is obvious. No preamble (Let me explain...), no postamble (Hope that helps). Keep every reason, keep every causal connector (because, so, which means).
No: "Basically, what's happening is the render target is in the wrong state, so you need a transition."
Yes: "Render target is in present state. Next op is a UAV write, which needs UAV state. Add a ResourceBarrier transition."
Examples
"fix the off-by-one in the instance base" → telegraph
Off-by-one in
instanceIdBaseprefix sum.+=runs after the write, not before. Moved it above inRuntimeScenePathTracingRenderer.cs:412.
"what changed in the last commit?" → balanced
Moved the CPU instance fill from the sink into each per-instancer's Update. Peers now run without a central staging step, which cuts per-frame allocations and removes a cross-peer ordering constraint. See
a198dab.
"why does DLSS-RR need presentCommon to run?" → full
DLSS-RR reconstructs the final image from low-resolution samples, motion vectors, depth, and guide buffers. Reconstruction happens inside Streamline's
presentCommonhook — the only point in the frame where all inputs are guaranteed produced and none have been clobbered yet.Bypassing
presentCommoncaused DLSS-RR to ghost on fast camera motion because the motion vector buffer was being reused downstream before Streamline had read it. The rule since: never bypasspresentCommon. If output goes black, fix the root cause (interposer load, SL DLL version, input format) — never work around the hook.
Self-check (runs before every response and every thinking block)
- Writing code, comments, or any file content? → full normal style, no caveman
- Touching an escalation topic? → full in both thinking and output
- Does the user need why? → full or balanced
- Paraphrasing code, error, path, technical term? → stop, use verbatim
- Substituting a technical verb? → stop, use the exact verb
- Thinking block on something subtle — could compression silently drop a step? → full thinking
Any hit drops you out of telegraph regardless of active level.
More from tebjan/agent-skills
fix-jsonl-surrogates
Diagnose and repair 'invalid high surrogate' API errors in Claude Code chat sessions. Use this skill when the user encounters API Error 400 with 'invalid high surrogate in string', 'not valid JSON', surrogate-related errors, or wants to fix/scan/repair a broken Claude Code JSONL chat file. Also use when a session refuses to resume due to JSON encoding errors, or when the user mentions request IDs (req_...) alongside JSON parse failures.
2swarm-advisor
Advises on multi-agent swarm design using Claude Code's TeammateTool and Task system. Use when the user wants to parallelize work across agents, asks 'should I use a swarm for this?', wants help designing team topology, needs to break a task into parallel workstreams, or is getting started with swarm-orchestration. Assesses whether a swarm is worth the overhead, recommends team size and structure, helps decompose tasks with correct dependencies, and tracks swarm health. Complements the swarm-orchestration skill by adding the 'think before you spawn' layer.
1gsd-orchestrator
Orchestrates and advises on complete GSD (Get Shit Done) development workflows. Acts as both workflow driver and expert consultant — reads context, suggests the right tools, asks clarifying questions when intent is unclear, spawns subagents for each step, and never loses focus on workflow completion. Use when the user wants to build something, asks which GSD command to use, says 'help me with GSD', 'run the GSD workflow', 'let's start a project', 'what should I do next', or describes any dev task that might benefit from structured planning. Also triggers when the task scope is ambiguous and needs routing to fast/quick/full GSD flow.
1install-github-plugin
Installs Claude Code plugins from GitHub repos that lack a marketplace manifest. Use this skill whenever a `claude plugin install` fails due to SSH key errors, missing `.claude-plugin/marketplace.json`, or a GitHub repo that wasn't designed as a Claude plugin marketplace. Also use when the user says \"install plugin from GitHub\", \"add skills from a repo\", or \"the plugin install failed\". Handles the full workflow: cloning via gh CLI, inspecting repo structure, generating the marketplace manifest, and running the install.
1addy-orchestrator
Orchestrates end-to-end software development using the addyosmani/agent-skills framework. Guides the user through define → plan → build → verify → review → ship phases, spawns subagents for each step, tracks state persistently, and never loses focus on workflow completion. Use when the user says \"let's build X\", \"help me implement X\", \"walk me through X\", or wants structured multi-phase dev guidance. Also triggers when a task is clearly non-trivial and would benefit from phased execution.
1ralph-orchestrator
Orchestrates and advises on Ralph Loop automated development sessions. Use when the user wants to run ralph-loop, asks how to set up a Ralph task, wants iterative agent-driven development, says 'run this in a loop until it works', or has a task with testable acceptance criteria they want to automate. Helps write effective loop prompts, sets safe iteration limits, monitors loop progress, detects stuck loops, and advises on completion criteria. Keeps context short — the heavy work happens inside the loop.
1