Token导航 LogoToken导航

Agent Skill · 开发

ctx-compress(ctx 压缩)

ctx-compress 用于整理文档、README、Markdown 和说明材料,适合在 OpenClaw 中需要把零散信息整理成结构清晰的文档时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

ctx-compress 是开发类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为需要联网;许可证为 MIT-0,第三方扫描已通过,按安装量在开发类的 21,746 个 Skill 里排第 5,001。

总安装 7,152周安装 301GitHub Stars 公开资料未说明下载 2,504核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.0

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ctx-compress(ctx 压缩)
来源仓库:https://github.com/besty0121/ctx-compress
安装命令:
openclaw skills install ctx-compress
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install ctx-compress

这个 Skill 是做什么的

开发类 Skill 面向写代码、改代码和排查问题,一般会读写仓库文件,部分还会执行构建或测试命令。

用于整理文档、README、Markdown 和说明材料,适合在 OpenClaw 中需要把零散信息整理成结构清晰文档时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

智能压缩上下文——对话、代码、日志,保留关键信息同时减少令牌使用。自动检测内容类型并应用优化策略进行智能压缩处理。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install ctx-compress;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

ctx-compress 怎么安装?

在终端执行 openclaw skills install ctx-compress。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

ctx-compress 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

ctx-compress 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

ctx-compress 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

ctx-compress 用的人多吗?

公开数据是累计安装 7,152 次,近一周安装 301 次,下载 2,504 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

ctx-compress 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理开发类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

开发类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
skill-vetter

技能审查员 · OpenClaw

8,779,018986操作浏览器MIT-0通过
ontology

本体论 · OpenClaw

6,636,960576只读MIT-0通过
entra-app-registration

内部应用程序注册 · Codex、Claude

6,631,872764接触敏感数据未明确通过
entra-app-registration

内部应用程序注册 · Codex、Claude

3,757,680201接触敏感数据未明确通过
nano-banana-pro

纳米香蕉专业版 · OpenClaw

3,526,898364接触敏感数据MIT-0有提醒
ctx-compress

ctx 压缩 · 本页

7,152—需要联网MIT-0通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
context-compressor
description
Intelligently compress context — conversations, code, logs. Preserve key information while reducing token usage. Auto-detects content type and applies optimal compression.
tags
requires
bins
env
[]

上下文压缩器 / Context Compressor

在有限的上下文窗口里装下无限的对话记忆。

Fit more context in less tokens. Not truncation — intelligent compression.

核心理念

普通截断:  "这是很长的对话..." → "这是很..."           (丢了信息)
智能压缩:  "这是很长的对话..." → "讨论了XX,决定用YY"  (保留核心)

不同内容,不同压缩策略:

  • 💬 对话 → 提取决策、问题、结论
  • 💻 代码 → 去噪音保逻辑
  • 📋 日志 → 只留错误和关键事件
  • 📄 文本 → 摘要式压缩

命令参考

COMPRESS = python <skill_dir>/scripts/ctxcompress.py

压缩文本

# 从文件
$COMPRESS compress --input conversation.txt --level medium --type chat

# 从管道
echo "很长的文本..." | $COMPRESS compress --type text

# 内联文本
$COMPRESS compress --text "你的文本内容..." --level aggressive

压缩级别:

  • light — 去掉空行和注释,保留所有内容
  • medium — 去噪音 + 摘要 + 去重(默认)
  • aggressive — 只保留核心信息

内容类型(自动检测或手动指定):

  • chat — 对话/聊天记录
  • code — 代码
  • log — 日志文件
  • text — 普通文本

提取变更

比较两个文件的差异:

$COMPRESS diff --old v1.txt --new v2.txt

输出:新增了什么、删除了什么、修改了什么。

提取关键信息

从文本中提取结构化信息:

$COMPRESS extract --input chat_history.txt --type chat

输出 JSON:

{
  "decisions": ["决定用 Flask 框架"],
  "errors_and_fixes": [{"error": "port 5000 in use", "fix": "改用 8080"}],
  "commands": ["pip install flask"],
  "urls": ["https://flask.palletsprojects.com"],
  "key_terms": ["Flask", "deploy", "gunicorn"]
}

链式压缩

把多个文件压缩成一个摘要:

$COMPRESS chain file1.py file2.log conversation.txt --level medium

适用于:一个任务涉及多个文件,想一次性了解全貌。

分析压缩潜力

$COMPRESS stats --input big_file.txt

显示:总行数、空行占比、注释占比、预估可压缩比例。

Agent 使用场景

场景 1:对话历史压缩

当对话变长时,压缩旧消息以腾出上下文:

# 导出旧对话
cat old_messages.txt | $COMPRESS compress --type chat --level medium > compressed.txt

# 用压缩后的版本替换原文

压缩后保留:

  • ✅ 做了什么决定
  • ✅ 遇到什么问题,怎么解决的
  • ✅ 关键代码片段
  • ❌ 去掉了寒暄、重复讨论、中间过程

场景 2:错误调试压缩

20 轮试错 → 压缩成 1 段:

$COMPRESS compress --input debug_session.log --type log --level aggressive

输出类似:

📊 Log Summary: 15 errors, 3 warnings, 8 key events
ERROR: Connection refused on port 5432
ERROR: Permission denied /var/log/app.log
  (above error repeated 8x)
SUCCESS: Service started on port 8080

场景 3:跨 Session 记忆传递

把上一个 session 的精华传递给新 session:

$COMPRESS chain session1_notes.md session1_code.py session1_chat.txt --level aggressive

输出:一个紧凑的上下文摘要,注入新 session。

场景 4:代码 Review 压缩

长文件压缩后便于快速理解:

$COMPRESS compress --input big_module.py --type code --level medium

去掉了空行、注释、docstring,只留逻辑代码。

自动类型检测

根据文件扩展名和内容自动判断:

扩展名类型
.py, .js, .ts, .gocode
.log, .out, .errlog
包含 "User:" / "Agent:"chat
其他text

数据输出格式

压缩结果包含元信息:

🗜️ Compressed: 5234 → 876 chars (83% reduction)
   Type: chat | Level: medium
────────────────────────────────────────
## 决策 / Decisions
- 决定用 PostgreSQL 而不是 MySQL

## 问题 / Issues  
- Error: port 5432 already in use
- Fix: 改用 5433

## 代码 / Code
- [342 chars of code]

目录结构

context-compressor/
├── SKILL.md                 # 本文件
└── scripts/
    └── ctxcompress.py       # CLI 工具

设计哲学

  • 有损但保核心:像 JPEG 压缩图片一样压缩文本
  • 类型感知:不同内容用不同压缩策略
  • 可组合:支持管道、链式压缩、提取信息
  • 零依赖:纯 Python,不需要额外库

局限性

  • 不是语义压缩(不理解含义,只做模式匹配)
  • 对话压缩依赖格式识别(如果格式不标准可能失败)
  • 代码压缩可能误删重要注释(light 模式更安全)
  • 没有解压功能(压缩是不可逆的有损过程)

平台分布

OpenClaw

88.15%
按下载量换算2,207

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills