SuperAPI AI 工具集

hermes-config-optmzr

办公与效率

查看项目

更新于 10-16 09:18

技能介绍

Hermes 配置优化技能用于优化 Hermes 配置,以减少 token 消耗、提高中文触发效率。

一、用途 该技能面向 Hermes 配置的日常维护与瘦身,核心目标是降低每次对话的 token 占用,并让中文触发词更易命中。

二、主要能力

  1. 配置备份:使用 cp -r ~/.hermes/routing ~/.hermes/routing-backup-$(date +%Y%m%d-%H%M%S) 备份当前配置。
  2. 路由文件整合:检查重复(unified-index.md 与 skill-index.md 通常重叠 30-40%),删除 unified-index.md 和 unified-index.json;精简 skill-router.md,移除行号标记、合并相似触发词、使用更紧凑格式,目标从 13KB+ 压缩到 6-8KB。
  3. 触发词中文化:识别纯英文触发词,添加中文等价词(如 findmy → 查找设备、定位、找手机;codex → 代码生成、AI编程、代码代理;excalidraw → 手绘图、流程图、白板;github-auth → GitHub认证、gh登录、git凭据)。三文件同步更新流程:skill-index.json 为主数据源,用 Python 脚本批量更新 triggers 数组并去重排序写回;skill-router.md 在对应分类段落更新触发词列表;skill-index.md 在对应分类表格更新触发词列。
  4. Compression 阈值与上下文窗口校准:触发阈值 = max(int(model.context_length * compression.threshold), 64000)。需先看 compression.threshold,再看主模型实际 context 来源(model.context_length 或 custom_providers[].models[<exact model name>].context_length)。若模型名带别名/后缀,custom_providers.models 必须写完全同名键;自定义端点 /models 不准或缺失时,直接在 model.context_length 明写整数。注意 auxiliary.compression.extra_body.context_window 只影响摘要模型请求体参数,auxiliary.compression.context_length 只用于辅助压缩模型可行性检查/覆盖,真正决定 auto-compress 的仍是主模型 context_length。
  5. Memory 压缩(架构链格式):将扁平条目转为架构链,一条树状依赖替代 10+ 散装条目。模板为:元:[核心行为规则]→[次级规则]→[三级规则],下含红线、重试、领域链等分支。USER.md 优化:10+ 扁平条目 → 1 条架构链,文言压缩,每条 ≤20 字,只存硬规则。MEMORY.md 优化:只保留跨项目稳定技术事实,删除项目细节,目标 < 500 bytes。
  6. Skills 清理:用 du -sh 查大小排序,统计每个目录 skill 数,删除标准包括 auto-installed 大包(>1M 且 >10 skills 且从未手动加载)、cloned repos(含 .git 目录)、空目录、用户不会用的领域。删前需按功能域列 inventory,先给出将删清单 + 保留理由,未确认范围时宁可只加路由不做删除。
  7. 路由引用清理:删 skills 后必须同步清理 skill-router.md、skill-index.md、skill-index.json。注意 skill-index.json 顶层是数组 [{skill}, ...],不是 dict {"skills": [...]};sed 对多行 section 不可靠,清理 skill-index.md 用 Python regex。

三、使用方式 按上述流程逐步执行:先备份,再整合路由文件,然后批量添加中文触发词并同步三文件,接着校准 compression 阈值,压缩 memory,清理 skills,最后清理路由引用并 commit 到 git repo。批量添加中文触发词时使用 Python 脚本读取 skill-index.json、检查无中文触发词的 skills、定义映射、批量更新并写回。

四、适用场景 适用于使用 Hermes 且希望降低 token 消耗、提升中文触发命中率、精简路由与 memory 配置的用户。

五、限制与风险 删除 unified-index.md 可能导致某些路由失效;添加的中文触发词可能不被用户使用;需要备份以便回滚;删 skills 后必须同步清理路由引用;skill-index.json 是数组不是 dict;sed 对多行 section 不可靠;MEMORY.md 用 write_file,user profile 用 memory() tool,两个独立系统;路由真实落点须现场查证,不要把 ~/.hermes/hermes-agent/routing/、~/.hermes/routing/、项目内 .hermes/routing/ 之一当成永真;memory replace 需要精确匹配 old_text,多条目无法一次 replace;改 config.yaml 时先读精确上下文再 patch。

六、预期收益 routing 文件从 90KB+ 降至 50-60KB(节省 30-40%);skill-router.md 从 13KB 降至 6-8KB(节省 50%+);英文触发词从 30+ 个降至 <15 个(节省 50%+);USER.md 从 1900 bytes 降至 1200 bytes(节省 37%);每次对话约节省 2000-3000 tokens。

七、验证步骤 检查文件大小、验证触发词匹配、测试路由功能、监控 token 使用量。