garoter-a11y

G-agent-yunwei

"Agent运维工具箱——会话质量监控(上下文衰减检测/state.db维护/压缩策略/已知bug)+ 模型提供商特性记录(DeepSeek/MiMo/StepFun/DashScope等配置坑位+验证铁律)。"

garoter-a11y 0 Updated 3w ago
GitHub

Install

npx skillscat add garoter-a11y/g-agent-yunwei

Install via the SkillsCat registry.

SKILL.md

G-agent-yunwei — Agent运维工具箱

Part A管session健康,Part B管provider配置。互补一体。


Part A:会话质量管理

触发条件

  • 会话超过2小时或500条消息
  • 用户报告响应质量下降、记忆丢失
  • 用户问token用量、上下文限制
  • Hermes启动慢/响应迟钝
  • state.db膨胀
  • 切换到新模型提供商、配置新API密钥
  • 调查"为什么agent行为反常"

DeepSeek V4 上下文退化profile

指标 数值
公布窗口 1,048,576 tokens (1M)
实际有效 150K-250K tokens
退化起效 ~3小时/~1000条密集消息
根因 长序列attention权重衰减
GUI进度条 说谎——显示%是内部buffer,不是注意力质量

会话老化检测清单

  • 用户说"你忘了X"或"我告诉过你Y"
  • 关键词触发规则失效
  • 回复变得通用,丢失项目上下文
  • 会话>2.5小时运行时间

缓解措施(按严重度递增)

  1. 预防hermes config set compression.threshold 0.25
  2. 轻度 — 压缩上下文,丢弃旧tool输出
  3. 中度 — 新窗口(关闭当前,开新session全量加载memory)
  4. 重度 — cron job每150分钟提醒。

⚠️ Token成本警告:Cron job是完整Agent会话——每次tick加载系统提示+调用LLM+写入state.db。90分钟间隔≈16次/天,每次~100K tokens≈~1.6M tokens/天仅用于监控。只在运行多小时会话且无法手动跟踪上下文健康时才启用。

state.db 维护

# 快速检查
hermes sessions stats

# 清理旧会话(auto-confirm)
echo y | hermes sessions prune --older-than 7

# VACUUM回收空间
python -c "import sqlite3,os;c=sqlite3.connect(os.path.expandvars(r'%USERPROFILE%\\AppData\\Local\\hermes\\state.db'));c.execute('VACUUM');c.close()"

桌面GUI上下文盲区

Hermes桌面GUI无上下文用量指示器——无进度条、无token计数、无/status命令。TokenPulse (StreamDock插件)正在开发填补此空缺。

已知Bug

  • Compression fallback bug (#49307):上下文压缩时fallback路径重复写入active_task→agent重复旧答案。已修复(2026-06-21),确保版本>=修复版。
  • "net err connection closed":Electron WebView与Python后端WebSocket断开(code=1006)。非API故障。
  • hermes sessions prune跳过未正常结束的会话:crashed/force-quit的session(ended_at=NULL)不可见。
  • Background Review崩溃循环:每10轮fork子agent→工具被白名单拒绝→异常→Electron崩溃→daemon重启→再次触发→∞循环。

技能库存优化

# 1. 看哪些技能有实际加载记录
hermes insights --days 30 | grep -A 30 "Top Skills"

# 2. 列出全部技能
hermes skills list

# 3. 交叉比对 — 30天内加载次数=0的分类就是候选删除
# 4. 对于 builtin 技能:重命名 SKILL.md → SKILL.md.disabled(两处都要改:~/hermes-agent/skills/ 和 ~/skills/)
#    对于 hub-installed:hermes skills uninstall

注意hermes skills uninstall 只能卸 hub-installed 技能。builtin 技能需手动重命名。改完后 /reset 生效。

参考

  • references/deepseek-v4-degradation-profile.md — 2026-06-16会话详细发现
  • references/state-db-diagnosis.md — state.db完整诊断流程
  • references/hermes-backup-restore.md — Hermes备份恢复流程,state.db schema版本兼容诊断

Part B:模型提供商特性

速查表

Provider Context Reality Billing API? Key Risk
DeepSeek 1M广告,150-250K有效 仅余额(无用量API) ~3h后静默上下文退化
MiMo 1M,推理+视觉 MiMo控制台 小max_tokens→空输出;Token Plan用不同base_url;V2系列2026-06-30停用
StepFun 标准 用量面板 ASR需嵌套JSON,语音名大小写敏感
DashScope 标准 阿里云控制台 tp-密钥可能不适用标准端点
OpenAI TBD TBD TBD
Anthropic TBD TBD TBD

配置验证铁律 ⚠️

要杀死的循环:配置→声称完成→用户测试→不行→调试→找到缺失→修复→声称完成→还是不行→重复3+轮。

铁律:写入任何新provider/model/credential配置后,立即端到端测试。不通过测试不报告"已配置"。

实践推论:如果api_key_env首次尝试失败,直接hardcode api_key,不重试api_key_env的不同路径。

通用规则

  1. 公布窗口≠有效窗口。 GUI进度条显示公布限制,非有效限制。
  2. 长会话cap。 >3h/>1000条消息→早期指令注意力衰减。
  3. 缓解: cron job每150分钟提醒开新session。
  4. 计费可视性: 多数厂商不暴露编程用量API。需用户登录web面板。

各厂商详细

  • DeepSeekreferences/deepseek.md — 上下文窗口、计费API、定价、退化时间线
  • MiMoreferences/mimo.md — 推理模型怪癖、视觉设置、token预算、定价
  • StepFunreferences/stepfun.md — ASR/TTS格式、模型目录、语音配置
  • DashScopereferences/dashscope.md — 视觉配置、密钥格式、qwen-vl模型
  • TCB/CloudBasereferences/tcb-cloudbase.md — CLI工作流、NoSQL备份

陷阱汇总

  • 配置变更需/reset:config.yaml在session启动时读一次,运行中修改不生效
  • 桌面GUI隐藏上下文用量:用户无法自查看token消耗
  • 缓存≠免费注意力:90%+ token可能是缓存命中(free),但仍占序列位置
  • 不要过度解释退化:用户知道它在发生,直接行动——建议reset而非讲课
  • PowerShell在git-bash中乱码:用wmic代替复杂PowerShell,或用Python
  • 技能列表必须含中文描述:给G先生看的技能列表必须逐条中文注解
  • 配置后必须端到端测试:不要报告"已配置"直到测试通过

[^^]: # G-agent-yunwei — session质量管理 + provider特性 | 小茉莉 2026-06-25
[^
^]: # 合并自:session-quality-management + provider-quirks