关于 cco-config
cco-config 将 Claude Context Optimizer 的设置集中到 JSON 配置文件,并对数值范围进行验证,供需要调整优化器行为的用户查看、修改或重置阈值。
主要功能
- 01查看当前阈值
- 02获取和设置单项配置
- 03按允许范围验证数值
- 04重置单项或全部配置
- 05配置文件读取与提示词阈值
适用场景
- 01调整重复读取触发警告的次数
- 02调整 Read Cache 的过期行为
- 03修改提示词长度提示阈值
- 04恢复指定配置或默认值
MCP 相关
这是配置技能,输入未说明其 MCP 功能。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ egorfedorov/ claude-context-optimizer --skill cco-config安装后在 Claude Code 中输入/cco-config确认已加载。
详细介绍
CCO Config — 调整优化器的激进程度
CCO 的行为调节项过去是分散在四个模块中的神秘数字。
现在可以在 ~/.claude-context-optimizer/config.json 的
thresholds 下查看这些经过范围验证的配置项。
插件根目录是包含 src/config.js 的目录。所有操作都要
从该目录运行。
解析 $ARGUMENTS:
show(或不带参数)
node ${CLAUDE_PLUGIN_ROOT}/src/config.js
按原样打印表格。* 表示用户设置的值;! 表示存储的值未通过验证,因而被忽略并改用默认值。如果出现任何带 ! 的行,请指出它们——这里的拼写错误会导致某个调节项悄悄地无法按用户预期生效。
get <key>
node ${CLAUDE_PLUGIN_ROOT}/src/config.js get <key>
set <key> <value>
node ${CLAUDE_PLUGIN_ROOT}/src/config.js set <key> <value>
值无效或键未知时,以非零状态退出并显示有效范围——转告用户该消息,不要猜测如何修正。设置成功后,说明它会改变哪项行为(见下表),因为仅凭键名并不容易看出其作用。
reset [key]
node ${CLAUDE_PLUGIN_ROOT}/src/config.js reset <key> # one key
node ${CLAUDE_PLUGIN_ROOT}/src/config.js reset # everything back to defaults
重置所有配置会丢弃用户的全部调节设置——除非用户明确提出(“reset all”“вернуть всё по умолчанию”),否则请先确认。
各配置键
| 键 | 默认值 | 作用 |
|---|---|---|
rereadWarnAt | 3 | 首次重新读取警告前,对未编辑文件的读取次数 |
rereadEscalateAt | 5 | 出现“将其放入 CLAUDE.md”升级提示前的读取次数 |
bigFileLines | 500 | 触发偏移量/限制警告的完整读取行数 |
mediumFileLines | 200 | 触发柔性提示的完整读取行数 |
staleTokenRatio | 0.10 | 文件读取后加载的预算占比,达到此比例后读取缓存才会重新允许读取该文件 |
staleFiles | 8 | 在 200K 上下文中,读取该文件后加载的其他文件数;达到此数后,该文件会被视为已淘汰 |
staleTimeMs | 600000 | 自上次读取以来经过的毫秒数;超过此时间后,缓存文件会被视为过期 |
promptMinWords | 8 | 教练会将提示词判定为过于含糊的字数下限 |
promptIdealMaxWords | 200 | 教练“理想长度”区间的上限 |
promptTooLongWords | 500 | 超过此字数后,请求会被视为重点埋没 |
packBudgetPercent | 25 | /cco-pack 可占用的预算比例上限 |
调节建议
- 重新读取警告太多? 将
rereadWarnAt提高到 4–5。 - 读取缓存阻止了你仍需要的文件? 降低
staleTimeMs(例如300000= 5 分钟)或staleTokenRatio,让缓存条目更快过期。 - 读取缓存节省得不够? 提高这两个值——条目会保持新鲜更久,更多重复读取会被阻止。
- 使用 1M 上下文模型并处理较长提示词? 提高
promptTooLongWords;默认区间针对较短的请求进行了调优。 - 环境变量中的
CCO_STALE_TIME_MS仍会覆盖staleTimeMs,可用于进行一次性实验而不更改配置。
评论
支持 Markdown