API错误码生成引擎·专业版

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

面向后端开发者的错误码生成引擎(专业版)。在免费版设计指南基础上,提供可直接运行的错误码注册表:按模块与 HTTP 类别生成三段式错误码(MODULE-HTTP-SEQ,如 USER-404-001),同模块同类别自动分配递增序号、防重复注册,支持反解析、按模块列出、构造标准错误响应体(code/message/detail/trace_id)。内置 9 类常用 HTTP 错误类别与默认语义,对模块码格式、HTTP 类别、空消息、序号越界、编码格式等边界均有校验。商品类技能,引擎已通过 6 正例 + 5 边界断言测试。

一句话选型结论

按资料字段整理

API错误码生成引擎·专业版是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_9f56358d/zsai-api-error-code-gen-pro
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_9f56358d仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验2026-11-06上游最后核验时间 · 数据更新 2026-11-06
正文体量4.7 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
API错误码生成引擎·专业版当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

4.7 KB
模型实际读到的说明书原文,来自技能仓库

API错误码生成引擎·专业版

输入 / 输出

输入:模块码、HTTP类别、错误消息、可选序号;输出:标准错误码字符串、解析结果、标准响应体、按模块清单。

使用示例

from error_code import ErrorCodeRegistry
reg = ErrorCodeRegistry()
code = reg.generate('USER', 404, '用户不存在')  # USER-404-001
body = reg.response_body(code, trace_id='t-1')

引擎代码:error_code.py

# -*- coding: utf-8 -*-
"""API 错误码设计与生成引擎:统一错误码结构 MODULE-HTTP-SEQ(如 USER-404-001)。

提供:标准类别注册表、错误码生成(自动序号、防重复)、反解析、标准响应体构造。
"""
import re

# 标准 HTTP 错误类别与默认语义
CATEGORY = {
    "400": "BAD_REQUEST",
    "401": "UNAUTHORIZED",
    "403": "FORBIDDEN",
    "404": "NOT_FOUND",
    "409": "CONFLICT",
    "422": "UNPROCESSABLE_ENTITY",
    "429": "TOO_MANY_REQUESTS",
    "500": "INTERNAL_ERROR",
    "503": "SERVICE_UNAVAILABLE",
}

_CODE_RE = re.compile(r"^([A-Z]{2,8})-(\d{3})-(\d{3})$")


class ErrorCodeRegistry:
    def __init__(self):
        self._codes = {}

    def generate(self, module, http_code, message, seq=None):
        module = module.upper().strip()
        if not re.match(r"^[A-Z]{2,8}$", module):
            raise ValueError("模块码需为 2-8 位大写字母")
        http_code = str(http_code)
        if http_code not in CATEGORY:
            raise ValueError(f"不支持的 HTTP 类别: {http_code}")
        if not message or not message.strip():
            raise ValueError("错误消息不能为空")
        if seq is None:
            used = [int(k.split("-")[2]) for k in self._codes
                    if k.startswith(f"{module}-{http_code}-")]
            seq = (max(used) + 1) if used else 1
        seq = int(seq)
        if not (1 <= seq <= 999):
            raise ValueError("序号需在 1-999")
        code = f"{module}-{http_code}-{seq:03d}"
        if code in self._codes:
            raise ValueError(f"错误码已存在: {code}")
        self._codes[code] = {
            "code": code,
            "module": module,
            "http": int(http_code),
            "category": CATEGORY[http_code],
            "message": message.strip(),
        }
        return code

    def parse(self, code):
        m = _CODE_RE.match(code)
        if not m:
            raise ValueError(f"错误码格式非法: {code}")
        return self._codes.get(code) or {
            "code": code, "module": m.group(1),
            "http": int(m.group(2)), "category": CATEGORY.get(m.group(2), "UNKNOWN"),
            "message": None,
        }

    def response_body(self, code, detail=None, trace_id=None):
        rec = self._codes[code]
        body = {"code": rec["code"], "message": rec["message"]}
        if detail is not None:
            body["detail"] = detail
        if trace_id is not None:
            body["trace_id"] = trace_id
        return body

    def list_codes(self, module=None):
        if module:
            module = module.upper()
            return [v for k, v in sorted(self._codes.items()) if v["module"] == module]
        return [v for _, v in sorted(self._codes.items())]

测试(6 正例 + 5 边界(test_error_code.py 实跑全过):首个码自动001、同类别递增、跨模块独立编号、响应体构造、按模块列出、小写模块归一;重复码、非法模块、非法HTTP类别、空消息、序号越界、非法格式均报错。)

硬性规则

  • 确定性输出:相同输入必得相同结果,时间/随机量通过参数注入;
  • 非法输入(负数、越界、格式错误)一律抛 ValueError,不静默吞掉;
  • 本引擎为算法/计算参考,集成到业务时请结合真实参数与压测,不替代专业判断。

常见问题

5 问
答案由本站依据条目字段整理
API错误码生成引擎·专业版怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_9f56358d/zsai-api-error-code-gen-pro。安装方式为未标注。装完刷新技能列表或重开客户端。

API错误码生成引擎·专业版支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

API错误码生成引擎·专业版权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

API错误码生成引擎·专业版收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

API错误码生成引擎·专业版用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 2026-11-06。