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共享。

5 installs

数学教师的班级错因分析:把作业与试卷的错题变成"下节数学课讲什么"。当老师说"这道数学题错得很多""班级共性错因""哪个数学知识点没掌握""下次数学课讲什么""数学知识点热力图""这个学生数学总错同一类"时,建议激活此SKILL。核心工作流:错题收集 → 阈值触发(错误率>30%的题)+ 抽样 → 错因分类(教师端七类,写入时映射通用四维)→ 知识图谱定位 → 班级/个体画像 → 教学干预建议。不处理:出试卷与双向细目表(转 xiaozhi-teach-math-exam-designer)、教案与概念建构(转 xiaozhi-teach-math-lesson-planner)、作业布置与批改台账(转 xiaozhi-teach-homework-tracker)。

5 installs

全学科错题分析技能,提供单题深度分析、整卷失分分析、变式题生成、错题分类讲评四大能力。 支持文字/文件输入(图片、PDF等,PDF自动转图片后使用多模态模型识别,不使用本地OCR)。 覆盖基础教育和职业教育(机电、计算机、会计、护理、汽修、建筑、旅游、电商等)8+专业。 触发场景:上传错题/试卷要求分析、要求出变...

2 installs