主动上下文监控与智能三级警报,在质量下降前及时重启。
背景守护 QQ 上下文守护
功能概述
背景守护 QQ 上下文守护是一项面向实际任务的技能,主要用于错误发生前的提示;主动上下文监控警告您使用率为 60%, 70%, 85% , 之前, 上下文污染会引发错误和 迷幻。
核心要点
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
上下文守护者 🛡️
您的上下文守护者。在错误发生前发出预警。
主动式上下文监控,在上下文使用率达到 60%、70% 和 85% 时提前告警——防止因上下文污染引发错误与幻觉。
为何需要此功能
问题所在:
- 长对话导致上下文污染
- 随着上下文逐渐填满,响应质量悄然下降
- 您无法预知何时应重启会话,往往发现时已为时过晚
- 上下文使用率超过约 70% 后,错误与幻觉显著增加
解决方案:
- 持续监控上下文使用率
- 智能三级告警(⚠️ 60%、🟠 70%、🔴 85%)
- 每级均提供可操作建议
- 避免重复告警
快速开始
面向 Agent:心跳集成
当收到心跳轮询(heartbeat poll)时,请加入如下检查逻辑:
- 调用
session_status工具获取当前上下文使用率 - 从输出中解析上下文使用百分比
- 与阈值比较:60%(警告)、70%(危险)、85%(严重)
- 若超出阈值且非重复告警,则显示对应级别的告警消息
- 更新状态文件以记录告警历史
实现逻辑:
心跳执行期间: 1. 通过 session_status 获取上下文使用率 2. 检查使用率是否 ≥ 60%、70% 或 85% 3. 从 memory/context-guardian-state.json 加载状态 4. 判断是否应发送告警(防止重复) 5. 若需发送,则显示告警并更新状态
面向用户:在 HEARTBEAT.md 中启用
在您的 HEARTBEAT.md 文件中添加以下内容:
## Context Monitoring - Check context usage - Alert if thresholds exceeded (60%, 70%, 85%)
Agent 将自动处理其余所有逻辑。
工作原理
监控机制
该技能调用 session_status 工具,获取当前上下文使用率百分比。
告警等级
⚠️ 警告(60%)
⚠️ Context: 60% 上下文即将饱和。建议尽快收尾当前任务,或开启新会话。
🟠 危险(70%)
🟠 Context: 70% 上下文污染风险上升。建议: • 完成当前任务 • 下一任务使用新会话启动 • 或使用 context-optimizer 压缩上下文
🔴 严重(85%)
🔴 Context: 85% - CRITICAL 错误风险极高。强烈建议: • 保存当前工作 • 立即启动新会话 • 响应质量很可能已下降
智能防重复机制
该技能追踪告警历史,仅在以下情形触发告警:
- 首次达到某阈值
- 告警等级升级(如由 60% → 70% → 85%)
- 使用率曾低于阈值后再次回升至阈值及以上
配置说明
编辑 config/default.json,或新建 config/user.json:
{
"enabled": true,
"checkInterval": "heartbeat",
"thresholds": {
"warning": 60,
"danger": 70,
"critical": 85
},
"alertMethod": "message",
"alertStyle": "emoji",
"preventDuplicates": true,
"trackHistory": true,
"suggestions": {
"autoSuggest": true,
"suggestCompression": true,
"suggestRestart": true
}
}
配置项说明
checkInterval:
"heartbeat"— 在心跳轮询期间检查(默认)"cron"— 独立 cron 任务(未来支持)number— 每 N 分钟检查一次(未来支持)
thresholds:
- 自定义各告警级别阈值(默认:60、70、85)
alertMethod:
"message"— 以消息形式发送(默认)"log"— 仅记录日志"notification"— 系统通知(未来支持)
alertStyle:
"emoji"— Emoji + 简明文本(默认)"text"— 纯文本"detailed"— 完整说明
手动检查
您可手动检查上下文状态:
bash {baseDir}/scripts/check.sh
与其他技能的集成
context-optimizer
当上下文使用率达 70% 时,该技能将建议使用 context-optimizer 压缩上下文,而非直接重启会话。
context-recovery
完成上下文恢复后,该技能将自动恢复监控。
Agent 实现指南
分步流程
1. 获取上下文使用率
调用 session_status 工具并解析其输出:
示例输出:"Context: 54k/200k (27%)" 提取结果:27
2. 判定告警等级
if (usage >= 85) level = "critical" else if (usage >= 70) level = "danger" else if (usage >= 60) level = "warning" else level = null
3. 加载状态
读取 {workspace}/memory/context-guardian-state.json:
{
"lastCheck": 1709452800,
"lastUsage": 54,
"lastAlertLevel": "warning",
"lastAlertTime": 1709452500,
"history": [...]
}
4. 判断是否应告警
防止重复告警:
shouldAlert = false // 首次达到阈值 if (!lastAlertLevel && level) shouldAlert = true // 告警等级升级(warning → danger → critical) if (levelNum[level] > levelNum[lastAlertLevel]) shouldAlert = true // 使用率曾低于阈值(容差 5%)后再次回升至阈值及以上 if (lastUsage < threshold - 5 && usage >= threshold) shouldAlert = true
5. 发送告警
若 shouldAlert 为真,则显示对应告警消息:
⚠️ Context: 60% Getting full. Consider wrapping up or starting fresh soon.
6. 更新状态
将新状态写入 memory/context-guardian-state.json:
{
"lastCheck": ,
"lastUsage": ,
"lastAlertLevel": ,
"lastAlertTime": ,
"history": [..., {"timestamp": , "usage": }]
}
告警消息模板
警告(60%):
⚠️ Context: 60% Getting full. Consider wrapping up or starting fresh soon.
危险(70%):
🟠 Context: 70% Pollution risk rising. Recommend: • Finish current task • Start new session for next task • Or compress with context-optimizer
严重(85%):
🔴 Context: 85% - CRITICAL High error risk. STRONGLY recommend: • Save work • Start new session NOW • Quality degradation likely
状态管理
状态存储于 {workspace}/memory/context-guardian-state.json:
{
"lastCheck": 1709452800,
"lastUsage": 54,
"lastAlertLevel": null,
"lastAlertTime": null,
"history": [
{"timestamp": 1709452800, "usage": 54}
]
}
故障排查
未出现任何告警:
- 确认
HEARTBEAT.md中已包含上下文监控条目 - 验证心跳机制正在正常运行
- 检查状态文件是否存在格式或权限错误
告警过于频繁:
- 在配置中适当提高阈值
- 确认
preventDuplicates已启用
告警数值不准确:
- 验证
session_status工具是否正常工作 - 检查 OpenClaw 版本兼容性(需 2026.2.0+)
示例
心跳集成示例
在 HEARTBEAT.md 中添加:
## Context Monitoring - Check context usage - Alert if thresholds exceeded
自定义阈值示例
新建 config/user.json:
{
"thresholds": {
"warning": 50,
"danger": 65,
"critical": 80
}
}
技术细节
依赖项:
- OpenClaw 2026.2.0+
session_status工具- Bash
性能表现:
- 零开销(仅在心跳周期内执行检查)
- 状态存储极小(约 1KB)
隐私保障:
- 所有数据本地存储
- 无任何外部网络请求
- 不采集遥测数据
路线图
v1.1.0:
- 历史趋势追踪
- 使用率预测能力
- 独立 cron 模式支持
v1.2.0:
- 自动触发 context-optimizer
- 可视化趋势图表
- 多会话协同监控
参与贡献
发现 Bug?有改进建议?欢迎在 GitHub 上提交 Issue 或 Pull Request。
许可证
MIT
热门AI工具
相关专题
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章