当用户说「报错回顾」时,整理当前 session 中工具调用的所有报错,分析根因并自动修复,含分类/去重/压缩/淘汰机制
Coding
Error Classifier
Try it四类错误分类与处理引擎。自动识别临时错误/永久错误/验证错误/上下文错误,并提供相应处理策略(重试/报告/修复/压缩)。当工具调用失败、API 报错、编译测试出错、上下文超限时自动分类并给出处理建议。
What it does
四类错误分类与处理引擎。自动识别临时错误/永久错误/验证错误/上下文错误,并提供相应处理策略(重试/报告/修复/压缩)。当工具调用失败、API 报错、编译测试出错、上下文超限时自动分类并给出处理建议。
The skill document
Error Classifier
四类错误自动分类与处理引擎。
错误类型
| 类型 | 含义 | 处理策略 | 典型场景 |
|---|---|---|---|
| TRANSIENT | 临时错误 | 自动重试(指数退避 1s/2s/4s) | timeout, 429, 503, 连接重置 |
| PERMANENT | 永久错误 | 报告用户,不可恢复 | 403, 404, 权限不足, API key 无效 |
| VALIDATION | 验证错误 | 回传模型修复 | 语法错误, 测试失败, 类型错误 |
| CONTEXT | 上下文错误 | 触发压缩 | token 超限, 上下文窗口溢出 |
分类优先级
CONTEXT > VALIDATION > PERMANENT > TRANSIENT
当错误消息同时匹配多种类型时,优先级高的类型胜出。
使用方法
基本用法
import sys
sys.path.insert(0, "skills/error-classifier/scripts")
from classifier import ErrorClassifier, ErrorType
classifier = ErrorClassifier()
# 分类错误
error_type = classifier.classify(exception)
# → ErrorType.TRANSIENT / PERMANENT / VALIDATION / CONTEXT
# 获取处理动作
action = classifier.handle(exception, context={"retry_count": 0})
# action.action → "retry" / "report_user" / "fix" / "compress"
# action.message → 人类可读的处理说明
# action.retry_delay → 重试等待秒数(仅 retry 动作)
带重试的执行
from classifier import ErrorClassifier
classifier = ErrorClassifier()
def call_api():
# 你的 API 调用
...
try:
result = classifier.execute_with_retry(call_api, on_retry=lambda a, d, e: print(f"重试 {a+1}/3"))
except Exception as e:
print(f"全部重试失败: {e}")
便捷函数
from classifier import classify_error, handle_error, get_retry_delay
error_type = classify_error(exception)
action = handle_error(exception, context={"retry_count": 0})
delay = get_retry_delay(attempt=0) # → 1
指数退避策略
第1次重试: 等待 1s (BASE_DELAY × 2^0)
第2次重试: 等待 2s (BASE_DELAY × 2^1)
第3次重试: 等待 4s (BASE_DELAY × 2^2)
超过3次: 报告用户
错误模式库
共 50+ 种错误模式,覆盖中英文场景:
- TRANSIENT: timeout, timed out, 连接超时, rate limit, 429, too many requests, 限流, connection reset, 503, 502 ...
- PERMANENT: permission denied, 403, forbidden, not found, 404, unauthorized, 401, invalid api key, access denied ...
- VALIDATION: syntax error, compilation failed, 编译失败, test failed, assertion error, 测试失败, type error, import error ...
- CONTEXT: token limit, context length, max tokens, 上下文超限, prompt too long, input too long ...
集成点
- coding-framework Step 5.5(异常处理):工具调用失败时自动分类
- daily-agent 任务调度:根据错误类型决定重试/报告/修复/压缩
- context-compressor 上下文压缩:CONTEXT 错误触发压缩流程
文件结构
skills/error-classifier/
├── SKILL.md # 本文件
├── scripts/
│ ├── classifier.py # 错误分类器核心
│ ├── patterns.py # 错误模式库(50+ 种模式)
│ └── test_classifier.py # 测试用例
└── references/
└── retry_strategies.md # 重试策略详细说明
Related skills
支持学生上传任意学科错题截图、试卷照片或粘贴题目文本,基于真实作答智能整理错题,识别题目科目和题型,定位并区分概念模糊、知识点遗漏、计算或操作失误、审题偏差、推理断点、方法选择不当、表达不规范等错误根因,拆解核心知识点并给出巩固建议。也用于在灵犀 AI 助手本地错题本中保存、更新、检索错题;用户明确要求保存或更新时直接写入,未要求保存时先询问确认,再按科目、题型和日期分类整理,统计高频错误类型和制作错题复盘记录。不要主动生成举一反三练习题或额外训练题。
Decode an error message or stack trace into a plain-English cause, the exact fix, and how to prevent it. Use when asked to explain an error, debug a stack tr...
初中数学错题的根因深度分析:把错题本判定的通用四维,细化为数学子类型(B/C/R/M + 两位编码)并做跨维度关联。典型触发:"为什么我数学总在同一个地方错""帮我分析我的数学错误规律""帮我生成数学弱项月报""我数学太差了"。不处理:错题的收录与次数统计(由 xiaozhi-correction-notebook 唯一负责,本 SKILL 只接收它推送的交接)、单题当场讲解(转 xiaozhi-math-problem-solving-coach)、概念重建(转 xiaozhi-math-concept-explainer)、分层练习(转 xiaozhi-math-gradient-trainer)。未获同意时,不建立长期档案、不跨SKILL共享。
数学教师的班级错因分析:把作业与试卷的错题变成"下节数学课讲什么"。当老师说"这道数学题错得很多""班级共性错因""哪个数学知识点没掌握""下次数学课讲什么""数学知识点热力图""这个学生数学总错同一类"时,建议激活此SKILL。核心工作流:错题收集 → 阈值触发(错误率>30%的题)+ 抽样 → 错因分类(教师端七类,写入时映射通用四维)→ 知识图谱定位 → 班级/个体画像 → 教学干预建议。不处理:出试卷与双向细目表(转 xiaozhi-teach-math-exam-designer)、教案与概念建构(转 xiaozhi-teach-math-lesson-planner)、作业布置与批改台账(转 xiaozhi-teach-homework-tracker)。
全学科错题分析技能,提供单题深度分析、整卷失分分析、变式题生成、错题分类讲评四大能力。 支持文字/文件输入(图片、PDF等,PDF自动转图片后使用多模态模型识别,不使用本地OCR)。 覆盖基础教育和职业教育(机电、计算机、会计、护理、汽修、建筑、旅游、电商等)8+专业。 触发场景:上传错题/试卷要求分析、要求出变...