caveman-compress

작성자: juliusbrussee

자연어 메모리 파일(CLAUDE.md, todos, preferences)을 caveman 형식으로 압축하여 입력 토큰을 절약합니다. 모든 기술적 내용, 코드, URL 및 구조를 보존합니다. 압축된 버전이 원본 파일을 덮어씁니다. 사람이 읽을 수 있는 백업은 FILE.original.md로 저장됩니다. 트리거: /caveman-compress FILEPATH 또는 "compress memory file

npx skills add https://github.com/juliusbrussee/caveman --skill caveman-compress

Caveman Compress

Purpose

Compress natural language files (CLAUDE.md, todos, preferences) into caveman-speak to reduce input tokens. Compressed version overwrites original. Human-readable backup saved as <filename>.original.md.

Trigger

/caveman-compress <filepath> or when user asks to compress a memory file.

Process

  1. The compression scripts live in scripts/ (adjacent to this SKILL.md). If the path is not immediately available, search for scripts/__main__.py next to this SKILL.md.

  2. From the directory containing this SKILL.md, run:

python3 -m scripts <absolute_filepath>

  1. The CLI will:
  • detect file type (no tokens)
  • call Claude to compress
  • validate output (no tokens)
  • if errors: cherry-pick fix with Claude (targeted fixes only, no recompression)
  • retry up to 2 times
  • if still failing after 2 retries: report error to user, leave original file untouched
  1. Return result to user

Compression Rules

Remove

  • Articles: a, an, the
  • Filler: just, really, basically, actually, simply, essentially, generally
  • Pleasantries: "sure", "certainly", "of course", "happy to", "I'd recommend"
  • Hedging: "it might be worth", "you could consider", "it would be good to"
  • Redundant phrasing: "in order to" → "to", "make sure to" → "ensure", "the reason is because" → "because"
  • Connective fluff: "however", "furthermore", "additionally", "in addition"

Preserve EXACTLY (never modify)

  • Code blocks (fenced ``` and indented)
  • Inline code (backtick content)
  • URLs and links (full URLs, markdown links)
  • File paths (/src/components/..., ./config.yaml)
  • Commands (npm install, git commit, docker build)
  • Technical terms (library names, API names, protocols, algorithms)
  • Proper nouns (project names, people, companies)
  • Dates, version numbers, numeric values
  • Environment variables ($HOME, NODE_ENV)

Preserve Structure

  • All markdown headings (keep exact heading text, compress body below)
  • Bullet point hierarchy (keep nesting level)
  • Numbered lists (keep numbering)
  • Tables (compress cell text, keep structure)
  • Frontmatter/YAML headers in markdown files

Compress

  • Use short synonyms: "big" not "extensive", "fix" not "implement a solution for", "use" not "utilize"
  • Fragments OK: "Run tests before commit" not "You should always run tests before committing"
  • Drop "you should", "make sure to", "remember to" — just state the action
  • Merge redundant bullets that say the same thing differently
  • Keep one example where multiple examples show the same pattern

CRITICAL RULE: Anything inside ... must be copied EXACTLY. Do not:

  • remove comments
  • remove spacing
  • reorder lines
  • shorten commands
  • simplify anything

Inline code (...) must be preserved EXACTLY. Do not modify anything inside backticks.

If file contains code blocks:

  • Treat code blocks as read-only regions
  • Only compress text outside them
  • Do not merge sections around code

Pattern

Original:

You should always make sure to run the test suite before pushing any changes to the main branch. This is important because it helps catch bugs early and prevents broken builds from being deployed to production.

Compressed:

Run tests before push to main. Catch bugs early, prevent broken prod deploys.

Original:

The application uses a microservices architecture with the following components. The API gateway handles all incoming requests and routes them to the appropriate service. The authentication service is responsible for managing user sessions and JWT tokens.

Compressed:

Microservices architecture. API gateway route all requests to services. Auth service manage user sessions + JWT tokens.

Boundaries

  • ONLY compress natural language files (.md, .txt, .typ, .typst, .tex, extensionless)
  • NEVER modify: .py, .js, .ts, .json, .yaml, .yml, .toml, .env, .lock, .css, .html, .xml, .sql, .sh
  • If file has mixed content (prose + code), compress ONLY the prose sections
  • If unsure whether something is code or prose, leave it unchanged
  • Original file is backed up as FILE.original.md before overwriting
  • Never compress FILE.original.md (skip it)

juliusbrussee의 다른 스킬

caveman
juliusbrussee
초압축 통신 모드. 토큰 사용량 약 75% 절감, 원시인처럼 말하되 기술적 정확성 유지. 강도 레벨 지원: lite, full(기본값), ultra, wenyan-lite, wenyan-full, wenyan-ultra. 사용자가 "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief"라고 말하거나 /caveman을 호출할 때 사용. 토큰 효율이 요청될 때 자동 트리거됨.
communicationproductivity
caveman-commit
juliusbrussee
초압축 커밋 메시지 생성기. 커밋 메시지에서 노이즈를 줄이면서 의도와 이유를 보존합니다. Conventional Commits 형식. 제목 50자 이내, "이유"가 명확하지 않을 때만 본문 포함. 사용자가 "커밋 작성", "커밋 메시지", "커밋 생성", "/commit"을 말하거나 /caveman-commit을 호출할 때 사용. 변경 사항을 스테이징할 때 자동 트리거됩니다.
developmentcode-review
caveman-help
juliusbrussee
모든 동굴인 모드, 스킬, 명령어에 대한 빠른 참조 카드입니다. 일회성 표시이며 지속 모드가 아닙니다. 트리거: /caveman-help, "caveman help", "what caveman commands", "how do I use caveman".
developmentdocumentproductivity
caveman-review
juliusbrussee
초압축 코드 리뷰 코멘트. PR 피드백에서 잡음을 줄이고 실행 가능한 신호를 유지합니다. 각 코멘트는 한 줄로 구성: 위치, 문제, 수정. 사용자가 "이 PR 리뷰해줘", "코드 리뷰", "diff 리뷰", "/review"라고 말하거나 /caveman-review를 호출할 때 사용됩니다. 풀 리퀘스트를 리뷰할 때 자동으로 트리거됩니다.
developmentcode-review
caveman-stats
juliusbrussee
현재 세션의 실제 토큰 사용량과 예상 절감액을 표시합니다. Claude Code 세션 로그에서 직접 읽어오며, AI 추정을 사용하지 않습니다. /caveman-stats 명령어로 실행됩니다. 출력은 mode-tracker 훅에 의해 주입되며, 모델 자체는 숫자를 계산하지 않습니다.
developmentdata-analysis
cavecrew
juliusbrussee
Decision guide for delegating to caveman-style subagents. Tells the main thread WHEN to spawn `cavecrew-investigator` (locate code), `cavecrew-builder` (1-2 file edit), or `cavecrew-reviewer` (diff review) instead of doing the work inline or using vanilla `Explore`. Subagent output is caveman-compressed so the tool-result injected back into main context is ~60% smaller — main context lasts longer across long sessions. Trigger: "delegate to subagent", "use cavecrew", "spawn...
developmentcode-reviewapi