mcpField
J
janitor-value

janitor-value

github.com/khendzelAgent 工作流12251 次安装4 周前更新
代码仓库

关于 janitor-value

janitor-value 是用于 Claude Code 的 Skill,可对照近期使用情况统计已安装 Skill 的上下文 Token 成本。它区分始终加载的描述与按需加载的正文,帮助找出成本较高的闲置 Skill。

主要功能

  1. 01拆分描述与正文的 Token
  2. 02追踪近期 Skill 调用
  3. 03按成本排列闲置 Skill
  4. 04支持自定义周期与预算
  5. 05输出表格或 JSON

适用场景

  1. 01找出成本高且未使用的 Skill
  2. 02按指定周期比较 Skill 使用情况
  3. 03对照上下文预算估算常驻 Token

MCP 相关

配套的 MCP 报告脚本会盘点已配置的 MCP 服务,并根据会话记录报告调用次数、已用工具种类和最近使用时间。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/khendzel/skills-janitor --skill janitor-value

安装后在 Claude Code 中输入/janitor-value确认已加载。

详细介绍

技能价值报告

查看每项已安装技能是否值得它占用的上下文窗口令牌。

概述

将令牌开销和使用情况跟踪合并到一个视图中,列出所有已安装的技能,并将未使用且开销最大的技能排在最前面。报告会将每项技能的开销拆分为永久加载的部分(描述)和仅按需加载的部分(正文),再与近期调用记录交叉比对,让用户看出哪些技能是闲置负担。

取代 v1.2 中 /janitor-tokens(仅统计开销)和 /janitor-usage(仅统计使用情况)的拆分方案。

前提条件

  • 安装了 skills-janitor 插件的 Claude Code(提供 scripts/value.sh)
  • bash 3.2+(macOS 自带的 bash 即可;无需外部依赖)
  • 可读取 ~/.claude/skills、~/.claude/agents 和本地 Claude Code 会话历史记录
  • 无需身份验证或 API 密钥 — 脚本仅读取本地文件

说明

第 1 步:运行价值评估脚本
bash ~/.claude/skills/skills-janitor/scripts/value.sh [--weeks N] [--budget N] [--json]
  • --weeks N — 使用情况回溯窗口(默认值:4)
  • --budget N — 用于计算百分比的上下文窗口大小(默认值:200000)
  • --json — 输出原始 JSON
第 2 步:呈现结果

向用户展示表格和摘要。解释结果时,切勿将正文令牌描述为永久上下文开销 — 只有描述始终会被加载。插件命名空间下的技能会以完整调用名称显示(例如:marketing-skills:image、figma:figma-use)。

第 3 步:浪费较多时建议采取措施

如果“未使用技能开销”超过预算的 20%,建议用户运行 /janitor-report 进行全面健康检查,或(在 v1.4+ 中)运行 /janitor-swipe 进行交互式分类。

输出

列出每项已安装技能的表格,其中包含:

  • Always — 描述令牌,永久加载到系统提示词中(实际的上下文占用)
  • Body — SKILL.md 的其余部分,仅在技能触发时加载(渐进式披露)
  • Used? — 若在回溯窗口内调用过,则为 yes;否则为 NO
  • Last Used — 最近一次调用的日期

随后附上摘要:

  • 加载到上下文中的令牌总数(始终加载的 TOTAL 包含技能和 ~/.claude/agents 中的子 Agent 描述,并以预算百分比表示)
  • 活跃与未使用技能的占比
  • 浪费最多的技能:使用次数为零且开销较大的技能

错误处理

  1. 错误:value.sh: No such file or directory 解决方案:插件安装在其他根目录下。使用 ls ~/.claude/skills 或检查插件缓存来定位,然后从实际路径运行脚本。

  2. 错误:所有技能在 Used? 列中都显示 NO 解决方案:回溯窗口可能太短,或会话历史记录为空。使用更长的窗口重新运行,例如 --weeks 12。

  3. 错误:某项技能显示 0 个令牌 解决方案:其 SKILL.md 文件缺失或无法读取。运行 /janitor-report 找出损坏的技能,然后运行 /janitor-fix --prune 清理它们。

  4. 错误:非默认模型的百分比看起来不对 解决方案:显式传入正确的上下文大小,例如 --budget 500000。

示例

示例 1:标准价值检查

输入:“我的技能值得它们占用的令牌吗?”

输出:运行 bash ~/.claude/skills/skills-janitor/scripts/value.sh,然后展示按浪费程度排序的表格和摘要行,例如:“始终加载的总计:8,420 个令牌(占 200k 预算的 4.2%)。31 项技能中有 6 项在 4 周内未使用;浪费最多的是 heavy-skill(1,900 个令牌,从未使用)。”

示例 2:延长回溯窗口并自定义预算

输入:“检查技能过去一个季度的使用情况,并按 500k 的窗口评估。”

输出:运行 bash ~/.claude/skills/skills-janitor/scripts/value.sh --weeks 12 --budget 500000,并展示相同的表格,同时使用调整后的回溯窗口和百分比。

示例 3:机器可读输出

输入:“给我原始的技能价值数据。”

输出:使用 --json 运行脚本,并原样返回 JSON 数据。

MCP 服务(v1.7)

要检查 MCP 侧的上下文成本,请运行 bash {baseDir}/../../scripts/mcp.sh [--weeks N] — 通过会话转录记录中的真实调用次数,盘点所有已配置的服务(用户、项目、插件),并列出统计时间窗口内未使用的服务。无需估算令牌数:架构位于服务端,因此清理工具会报告调用次数、使用过的不同工具数量以及最后使用时间。

资源

  • 报告脚本(相对于插件的路径):{baseDir}/../../scripts/value.sh
  • /janitor-report — 完整健康检查,包括重复项和损坏的技能
  • /janitor-fix --prune — 移除损坏的符号链接和空技能目录
  • /janitor-discover — 查找新技能,或在安装前检查某项技能

评论

支持 Markdown