context-compression

Use this skill whenever the conversation context is getting long, when a user asks to "compress", "summarize", or "clean up" the conversation, or when you detect the context window is filling up. Also triggers automatically via PreCompact hook if configured. Compresses conversation history using a tiered strategy — preserving what matters, summarizing what's useful, dropping what's noise — then writes a structured memory file so nothing important is truly lost. Use this even for partial compression of recent exchanges.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "context-compression" with this command: npx skills add lizlzzzz/context-compression-claude-code

Origin: This skill was extracted from Claude Code's internal implementation and rules. Claude Code openly exposes its safety mechanisms (hooks, system prompts, skill definitions) in the ~/.claude/ directory. The tiered compression strategy, layer classification system, and memory file structure were reverse-engineered from Claude Code's PreCompact/PostCompact hooks and session memory handling, then adapted for OpenClaw's multi-channel environment.

Context Compression

Why Tiered Compression Is Needed

A one-size-fits-all approach to dropping context either leaves the agent without memory or burns through context too quickly. The core principle of tiered strategy is: different information has different lifecycles. A user's statement "I prefer concise responses" is worth remembering forever; but a resolved error message from three days ago has no value today.


Before Compression: Identify the Scenario

Before starting compression, determine which conversation scenario you're in, as retention strategies differ:

ScenarioCharacteristicsCompression Tendency
Task-orientedClear goal, step-drivenKeep goal and incomplete steps, compress process details
Chat-orientedOpen topics, no clear taskKeep only user preference signals, discard aggressively
Research-orientedGathering information, continuous accumulationKeep conclusions and sources, compress procedural discussions
Group-chatMultiple people, high noiseDiscard aggressively, keep only directly relevant content

Three-Layer Compression Strategy

Layer 1: Must Preserve (Keep Original)

These contents remain in original or near-original form after compression:

  • User's explicitly stated goals, requirements, deadlines
  • Incomplete tasks (in-progress, interrupted)
  • Confirmed important decisions ("We decided to go with Plan B")
  • User-expressed explicit preferences ("I don't like X", "Always use Y format going forward")
  • Key credentials or config (accounts, paths, special settings)

Layer 2: Compress to Summary (Extract and Keep)

Keep conclusions, discard process:

  • Completed tasks → One-sentence conclusion ("Completed X, result was Y")
  • Long explanations → Core point in 1-2 sentences
  • Tool call outputs → Keep only final results, discard intermediate steps
  • Repeated topics → Merge into one record

Layer 3: Discard Directly

  • Small talk, thanks, acknowledgment messages ("ok", "thanks", "got it")
  • Rejected or obsolete proposals
  • Multiple attempts at the same question (keep only the final effective one)
  • Pure transitional content ("let me think", "hold on")
  • Resolved error messages that won't be needed again

Compression Execution Steps

Step 1: Scan All Conversation Identify all Layer 1 content, make a checklist — this cannot be discarded.

Step 2: Process Layer 2 For each conversation segment, judge: Is there a conclusion worth keeping? If yes, distill into one sentence.

Step 3: Generate Compressed Summary In chronological order, combine Layer 1 content + Layer 2 extractions into a compact context summary, typically no more than 600 characters.

Step 4: Update Memory File Write high-persistence-value information (user preferences, long-term goals, important decisions) to the memory file. See memory-template.md for format.

Step 5: Inform the User Briefly explain what was compressed and what key information was preserved, so the user knows the context has been updated.


OpenClaw Multi-Channel Supplementary Rules

OpenClaw runs across multiple messaging platforms, pay extra attention:

Group chat scenarios: Other members' messages default to Layer 3 (discard) unless the user explicitly responds to or quotes that message.

Cross-day conversations: Judge by topic unit, not time unit. An unfinished task from yesterday belongs to Layer 1; a completed topic from yesterday drops one level today.

Channel switching: If the user asks similar questions on different channels (WhatsApp vs Telegram), it indicates genuine concern — promote priority to Layer 1.


Optional: Auto-Trigger (Hook Configuration)

If you use Claude Code or an agent that supports PreCompact hooks, you can configure auto-trigger. See setup-hook.md for details.

Without hook configuration, you can trigger manually: just tell the agent "compress my context" or "context is getting long, clean it up".

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

GigaChat (Sber AI) Proxy

Integrate GigaChat (Sber AI) with OpenClaw via gpt2giga proxy

Registry SourceRecently Updated
3600smvlx
General

TencentCloud Video Face Fusion

通过提取两张人脸核心特征并实现自然融合,支持多种风格适配,提升创意互动性和内容传播力,广泛应用于创意营销、娱乐互动和社交分享场景。

Registry SourceRecently Updated
General

TencentCloud Image Face Fusion

图片人脸融合(专业版)为同步接口,支持自定义美颜、人脸增强、牙齿增强、拉脸等参数,最高支持8K分辨率,有多个模型类型供选择。

Registry SourceRecently Updated
General

YoudaoNote News

有道云笔记资讯推送:基于收藏笔记分析关注话题,推送最新相关资讯。支持对话触发与每日定时推送(如早上9点)。触发词:资讯推送、设置资讯推送、生成资讯推送。

Registry SourceRecently Updated
1.5K1lephix