/honey-ccr
Compress-Cache-Retrieve for huge, repetitive array tool output (logs, scan results, time series, event streams) before it enters context. Keeps an informative sample — endpoints, anomalies/change-points, head/tail — drops the redundant rest to a local cache, and leaves a
$ npx -y skills add Green-PT/honey-for-devs --skill honey-ccr --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/honey-ccr
Context preview
The summary Claude sees to decide when to auto-load this skill.
Compress-Cache-Retrieve for huge, repetitive array tool output (logs, scan results, time series, event streams) before it enters context. Keeps an informative sample — endpoints, anomalies/change-points, head/tail — drops the redundant rest to a local cache, and leaves a
SKILL.md
honey-ccr.SKILL.mdname: honey-ccr
description: >-
Compress-Cache-Retrieve for huge, repetitive array tool output (logs, scan
results, time series, event streams) before it enters context. Keeps an
informative sample — endpoints, anomalies/change-points, head/tail — drops the
redundant rest to a local cache, and leaves a retrievable hash. Use when a
tool returns a long uniform JSON array you must read but mostly skim, and the
full set is one command away if needed. Lossy-but-recoverable.
license: MIT
Honey CCR
The cheapest token is the one not sent. A 500-row log read for one error line costs 500 rows of context. CCR keeps the rows that carry signal and caches the rest — recoverable by hash, so nothing is lost.
Borrowed from headroom's SmartCrusher. **Lossy by design** — only for data you skim, never for payloads where every row matters (e.g. a code-review handoff where the implementer needs all findings; use `eson encode` losslessly there).
When to use
- A tool returns a **uniform JSON array** of many records (≥ ~5 items, redundant).
- You need to read it but mostly skim — logs, search hits, metrics, events.
- The full data stays reachable, so dropping the boring middle is safe.
Don't use
- Small arrays (passes through untouched anyway) or non-array data.
- Any array where every element is load-bearing — encode it, don't crush it.
How
tool-that-spews-json | eson crush # → sampled view + sentinel; originals cached
eson retrieve <hash> # → the full original array, verbatim
`crush` prints the kept sample plus a sentinel `{"_ccr":"<<ccr:HASH N_rows_offloaded>>"}`. When you need a dropped row, read the hash from the sentinel and run `eson retrieve <hash>`.
- Cache dir: `.honey-ccr/` (override with `HONEY_CCR_DIR`).
- Below the size gate, `crush` returns the array unchanged with no sentinel — safe to pipe anything.
Always-on hook (entry-time GC)
While Honey is active, a registered PostToolUse hook applies this automatically to Bash output — no opt-in per call. Big uniform JSON arrays (≥20 items, ≥2k chars) are crushed; repetitive text (≥25 lines) gets consecutive repeats collapsed to `⟨×N⟩`. The original is always stashed first, and the rewritten result ends with the exact `eson retrieve <hash>` command that restores it. `/honey off` disables the hook; history already in context is immutable — this fires at entry, the only place a hook can act.
Caveat: Claude Code builds affected by anthropics/claude-code#68951 ignore the hook's Bash rewrite, making it inert (a session-start warning tells you when this applies). Manual `some-tool | eson crush` piping is unaffected — prefer it there.
Read more
name: honey-ccr description: >- Compress-Cache-Retrieve for huge, repetitive array tool output (logs, scan results, time series, event streams) before it enters context. Keeps an informative sample — endpoints, anomalies/change-points, head/tail — drops the redundant rest to a local cache, and leaves a retrievable hash. Use when a tool returns a long uniform JSON array you must read but mostly skim, and the full set is one command away if needed. Lossy-but-recoverable. license: MIT
Honey CCR
The cheapest token is the one not sent. A 500-row log read for one error line costs 500 rows of context. CCR keeps the rows that carry signal and caches the rest — recoverable by hash, so nothing is lost.
Borrowed from headroom's SmartCrusher. **Lossy by design** — only for data you skim, never for payloads where every row matters (e.g. a code-review handoff where the implementer needs all findings; use `eson encode` losslessly there).
When to use
- A tool returns a **uniform JSON array** of many records (≥ ~5 items, redundant).
- You need to read it but mostly skim — logs, search hits, metrics, events.
- The full data stays reachable, so dropping the boring middle is safe.
Don't use
- Small arrays (passes through untouched anyway) or non-array data.
- Any array where every element is load-bearing — encode it, don't crush it.
How
tool-that-spews-json | eson crush # → sampled view + sentinel; originals cached eson retrieve <hash> # → the full original array, verbatim
`crush` prints the kept sample plus a sentinel `{"_ccr":"<<ccr:HASH N_rows_offloaded>>"}`. When you need a dropped row, read the hash from the sentinel and run `eson retrieve <hash>`.
- Cache dir: `.honey-ccr/` (override with `HONEY_CCR_DIR`).
- Below the size gate, `crush` returns the array unchanged with no sentinel — safe to pipe anything.
Always-on hook (entry-time GC)
While Honey is active, a registered PostToolUse hook applies this automatically to Bash output — no opt-in per call. Big uniform JSON arrays (≥20 items, ≥2k chars) are crushed; repetitive text (≥25 lines) gets consecutive repeats collapsed to `⟨×N⟩`. The original is always stashed first, and the rewritten result ends with the exact `eson retrieve <hash>` command that restores it. `/honey off` disables the hook; history already in context is immutable — this fires at entry, the only place a hook can act.
Caveat: Claude Code builds affected by anthropics/claude-code#68951 ignore the hook's Bash rewrite, making it inert (a session-start warning tells you when this applies). Manual `some-tool | eson crush` piping is unaffected — prefer it there.
Write less code and say less about it. Honey (I Shrunk the AI) by GreenPT is a cross-tool coding skill that cuts AI coding-agent token usage and LLM API costs — making agents emit less code and less prose without losing correctness.
Repo: Green-PT/honey-for-devs
Other skills on honey.
- /honey-chat
Honey for plain Claude — the terse-prose core with no agent-harness features. Paste into a claude.ai Project's custom instructions, a Style, or an API system prompt. Strips filler, hedging, and pleasantries from every response while keeping facts, names, numbers, steps, and code
Open skill - /honey-compress
Rewrite a memory or context file (CLAUDE.md, AGENTS.md, a todo or notes file) into Honey-terse form so it costs fewer input tokens every session, without losing meaning. Backs up the original first. Use when asked to shrink or compress context files, trim CLAUDE.md, or cut
Open skill - /honey-debt
Harvest every `honey:` comment in the codebase into a debt ledger, so the deliberate shortcuts Lever 1 leaves behind get tracked instead of rotting into "later means never". Flags markers with no revisit trigger — those are the ones that go permanent silently. Use when the user
Open skill - /honey-design
Same pixels, fewer tokens — for user-facing deliverables where visual polish is the spec. Use when building or editing a landing page, marketing site, hero, pricing/feature section, dashboard, or any HTML/CSS UI component. Keeps the full rendered design (layout depth, hierarchy,
Open skill - /honey-eco
Report this session's output tokens and CO₂ by running the repo's committed EcoLogits port, plus the modelled CO₂/$ saved vs a no-Honey baseline — always labelled with the bench stamp it came from. Use when asked how much Honey saved, the session's carbon/token footprint, or to
Open skill - /honey-gain
Show Honey's benchmark scoreboard — the committed quality and token results per task tier (code, user-facing, agent-to-agent) from bench/. Reports only the reproducible committed figures, never invents per-repo numbers. Use when asked how much Honey saves, how it compares to
Open skill

