edouard-claude/snip
CLI proxy that reduces LLM token usage by 60-90%. Declarative YAML filters for Claude Code, Cursor, Copilot, Gemini. rtk alternative in Go.
解决的问题
AI 编码助手经常在冗长的 shell 输出(如长测试日志或详细的 git 元数据)上浪费大量 token,而这些内容对模型价值很低。snip 通过在输出到达 AI 的上下文窗口之前进行过滤,减少这些噪声,从而可能将 token 使用量降低 60-90%。
工作原理
snip 作为 AI 工具与系统 shell 之间的 CLI 代理。它使用声明式的 YAML 管道来匹配特定命令并转换其输出。例如,它可以将 go test 命令重写为使用 JSON 输出,然后将结果压缩为单行摘要(例如:"1125 passed, 0 failed")。如果没有匹配的过滤器,输出将原样通过。
适用人群
使用 Claude Code、Cursor、Copilot、Gemini CLI、Windsurf、Cline、Aider 等 AI 编码代理的开发者,希望降低 token 成本,并防止上下文窗口被无关日志填满。
主要亮点
- 广泛集成:通过原生钩子(Claude Code、Cursor、Copilot、Codex)或提示注入(Gemini、Windsurf、Cline)支持多种 AI 工具。
- 丰富的内置库:自带 132 个 YAML 过滤器,覆盖 Git、Go、Rust、Python、JS/TS、Docker 和 Kubernetes 等主流工具。
- 声明式配置:过滤器以 YAML 数据文件形式定义,而非编译代码,便于创建和扩展。
- Token 跟踪:内置仪表板(
snip gain)使用 SQLite 数据库追踪并报告 token 节省情况。 - 可自定义的管道:提供 20 种不同的管道操作(如
keep_lines、json_extract、aggregate),可精确控制输出的压缩方式。
相关
- 项目
- 项目
- 项目
- 项目
- 项目