context-budget
Official审核Claude Code上下文窗口在代理、技能、MCP服务器和规则中的消耗情况。识别膨胀、冗余组件,并提供优先的令牌节省建议。
What this skill does
When applied, it prepends a system prompt before your request is sent — no extra calls and no change to how you are billed beyond the added tokens.
--- name: context-budget description: 审核Claude Code上下文窗口在代理、技能、MCP服务器和规则中的消耗情况。识别膨胀、冗余组件,并提供优先的令牌节省建议。 origin: ECC --- # 上下文预算 分析 Claude Code 会话中每个已加载组件的令牌开销,并提供可操作的优化建议以回收上下文空间。 ## 使用时机 * 会话性能感觉迟缓或输出质量下降 * 你最近添加了许多技能、代理或 MCP 服务器 * 你想知道实际有多少上下文余量 * 计划添加更多组件,需要知道是否有空间 * 运行 `/context-budget` 命令(本技能为其提供支持) ## 工作原理 ### 阶段 1:清单 扫描所有组件目录并估算令牌消耗: **代理** (`agents/*.md`) * 统计每个文件的行数和令牌数(单词数 × 1.3) * 提取 `description` 前言长度 * 标记:文件 >200 行(繁重),描述 >30 词(臃肿的前言) **技能** (`skills/*/SKILL.md`) * 统计 SKILL.md 的令牌数 * 标记:文件 >400 行 * 检查 `.agents/skills/` 中的重复副本 — 跳过相同副本以避免重复计数 **规则** (`rules/**/*.md`) * 统计每个文件的令牌数 * 标记:文件 >100 行 * 检测同一语言模块中规则文件之间的内容重叠 **MCP 服务器** (`.mcp.json` 或活动的 MCP 配置) * 统计配置的服务器数量和工具总数 * 估算模式开销约为每个工具 500 令牌 * 标记:工具数 >20 的服务器,包装简单 CLI 命令的服务器 (`gh`, `git`, `npm`, `supabase`, `vercel`) **CLAUDE.md**(项目级 + 用户级) * 统计 CLAUDE.md 链中每个文件的令牌数 * 标记:合并总数 >300 行 ### 阶段 2:分类 将每个组件归入一个类别: | 类别 | 标准 | 操作 | |--------|----------|--------| | **始终需要** | 在 CLAUDE.md 中被引用,支持活动命令,或匹配当前项目类型 | 保留 | | **有时需要** | 特定领域(例如语言模式),未在 CLAUDE.md 中引用 | 考虑按需激活 | | **很少需要** | 无命令引用,内容重叠,或无明显的项目匹配 | 移除或延迟加载 | ### 阶段 3:检测问题 识别以下问题模式: * **臃肿的代理描述** — 前言中描述 >30 词,会在每次任务工具调用时加载 * **繁重的代理** — 文件 >200 行,每次生成时都会增加任务工具的上下文 * **冗余组件** — 重复代理逻辑的技能,重复 CLAUDE.md 的规则 * **MCP 超额订阅** — >10 个服务器,或包装了可免费使用的 CLI 工具的服务器 * **CLAUDE.md 臃肿** — 冗长的解释、过时的部分、本应成为规则的指令 ### 阶段 4:报告 生成上下文预算报告: ``` 上下文预算报告 ═══════════════════════════════════════ 总预估开销:约 XX,XXX 个词元 上下文模型:Claude Sonnet (200K 窗口) 有效可用上下文:约 XXX,XXX 个词元 (XX%) 组件细分: ┌─────────────────┬────────┬───────────┐ │ 组件 │ 数量 │ 词元数 │ ├─────────────────┼────────┼───────────┤ │ Agents │ N │ ~X,XXX │ │ Skills │ N │ ~X,XXX │ │ Rules │ N │ ~X,XXX │ │ MCP tools │ N │ ~XX,XXX │ │ CLAUDE.md │ N │ ~X,XXX │ └─────────────────┴────────┴───────────┘ WARNING: 发现的问题 (N): [按可节省词元数排序] 前 3 项优化建议: 1. [action] → 节省约 X,XXX 个词元 2. [action] → 节省约 X,XXX 个词元 3. [action] → 节省约 X,XXX 个词
Use this skill
Add a "skill" field with the skill’s ID to your chat completion request. It is applied server-side before your prompt is sent — no extra calls.
{
"model": "gpt-4o-mini",
"skill": "imp-b748cbc1-e428-4878-915d-5d59e9f425d6",
"messages": [{ "role": "user", "content": "…" }]
}Install the skill, enable it in your dashboard and (optionally) limit it to specific models. It then applies automatically to every matching request — with no "skill" field to send each time.
Set it up in your dashboardMore skills
Delegate coding work to Codex, Claude Code, or OpenCode as background workers; not simple edits or read-only code lookup.
Create, edit, audit, tidy, validate, or restructure AgentSkills and SKILL.md files.
Search and analyze your own session logs (older/parent conversations) using jq.
Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS.
Diagnose OpenClaw Android, iOS, or macOS node pairing, QR/setup code, route, auth, and connection failures.
Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.
List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl.
Create, search, and manage Bear notes via grizzly CLI.