error-code-guide
2
总安装量
0
周安装量
#68750
全站排名
安装命令
npx skills add https://github.com/asiaostrich/universal-dev-standards --skill error-code-guide
Skill 文档
éè¯¯ç æå
è¯è¨: English | ç®ä½ä¸æ
çæ¬: 1.0.0 æå¾æ´æ°: 2025-12-30 é©ç¨ç¯å: Claude Code Skills
ç®ç
æ¤æè½å¹«å©è®¾è®¡ä¸è´çé误ç ï¼éµå¾ªæ åæ ¼å¼ï¼å®ç¾æ´å¥½çé¤é¯ãç£æ§å使ç¨è ä½é©ã
å¿«éåè
éè¯¯ç æ ¼å¼
<åç¶´>_<ç±»å«>_<ç¼å·>
| å ç´ | 说æ | ç¯ä¾ |
|---|---|---|
| åç¶´ (PREFIX) | åºç¨/æå¡èå«ç | AUTH, PAY, USR |
| ç±»å« (CATEGORY) | éè¯¯ç±»å« | VAL, SYS, BIZ |
| ç¼å· (NUMBER) | å¯ä¸æ¸åèå«ç | 001, 100, 404 |
ç¯ä¾
AUTH_VAL_001 â 认è¯éªè¯é误
PAY_SYS_503 â 仿¬¾ç³»ç»ç¡æ³ä½¿ç¨
USR_BIZ_100 â 使ç¨è
åä¸è¦åéè¦
API_NET_408 â API ç½ç»é¾æ¶
é误类å«
| ç±»å« | å ¨å | 说æ | HTTP ç¶æç |
|---|---|---|---|
| VAL | Validation | 客æ·ç«¯è¾å ¥éªè¯å¤±è´¥ | 400 |
| BIZ | Business | åä¸è¦åéè¦ | 422 |
| SYS | System | å §é¨ç³»ç»é误 | 500 |
| NET | Network | éè¨é误 | 502/503/504 |
| AUTH | Auth | å®å ¨ç¸å ³é误 | 401/403 |
ç±»å«ç¼å·ç¯å
| ç¯å | 说æ | ç¯ä¾ |
|---|---|---|
| *_VAL_001-099 | æ¬ä½éªè¯ | 缺å°å¿ å¡«æ¬ä½ |
| *_VAL_100-199 | æ ¼å¼éªè¯ | é»åéµä»¶æ ¼å¼ç¡æ |
| *_VAL_200-299 | ç´æéªè¯ | å¯ç 太ç |
| *_BIZ_001-099 | ç¶æéè¦ | 订å已忶 |
| *_BIZ_100-199 | è¦åéè¦ | è¶ é 30 å¤©ç¡æ³é貨 |
| *_BIZ_200-299 | éå¶éè¦ | è¶ éæ¯æ¥éå¶ |
| *_AUTH_001-099 | è®¤è¯ | 帳å·å¯ç é误 |
| *_AUTH_100-199 | ææ | æéä¸è¶³ |
| *_AUTH_200-299 | Token/Session | Token å·²éæ |
HTTP ç¶æç 对åº
| ç±»å« | HTTP ç¶æç | 说æ |
|---|---|---|
| VAL | 400 | Bad Request |
| BIZ | 422 | Unprocessable Entity |
| AUTH (001-099) | 401 | Unauthorized |
| AUTH (100-199) | 403 | Forbidden |
| SYS | 500 | Internal Server Error |
| NET | 502/503/504 | Gateway errors |
è¯¦ç»æå
宿´æ åè«åèï¼
AI åªåæ ¼å¼ï¼èç Tokenï¼
AI 婿å¯ä½¿ç¨ YAML æ ¼å¼æä»¶ä»¥æ¸å° Token 使ç¨éï¼
- åºç¤æ åï¼
ai/standards/error-codes.ai.yaml
é误ååºæ ¼å¼
åä¸é误
{
"success": false,
"error": {
"code": "AUTH_VAL_001",
"message": "é»åéµä»¶ä¸ºå¿
å¡«æ¬ä½",
"field": "email",
"requestId": "req_abc123"
}
}
å¤ä¸ªé误
{
"success": false,
"errors": [
{
"code": "AUTH_VAL_001",
"message": "é»åéµä»¶ä¸ºå¿
å¡«æ¬ä½",
"field": "email"
},
{
"code": "AUTH_VAL_201",
"message": "å¯ç è³å°éè¦ 8 个åå
",
"field": "password"
}
],
"requestId": "req_abc123"
}
å §é¨é误ç©ä»¶
interface ApplicationError {
// æ ¸å¿æ¬ä½
code: string; // "AUTH_VAL_001"
message: string; // æè¡æ¶æ¯ï¼ç¨æ¼æ¥èªï¼
// 使ç¨è
çé¢
userMessage: string; // æ¬å°å使ç¨è
æ¶æ¯
userMessageKey: string; // i18n éµå¼: "error.auth.val.001"
// ä¸ä¸æ
field?: string; // ç¸å
³æ¬ä½: "email"
details?: object; // éå ä¿¡æ¯
// é¤é¯
timestamp: string; // ISO 8601
requestId: string; // å
³è ID
}
åé å (i18n)
æ¶æ¯éµå¼æ ¼å¼
error.<åç¶´>.<ç±»å«>.<ç¼å·>
ç¿»è¯æä»¶ç¯ä¾
# en.yaml
error:
auth:
val:
001: "Email is required"
101: "Invalid email format"
auth:
001: "Invalid credentials"
# zh-TW.yaml
error:
auth:
val:
001: "é»åéµä»¶ä¸ºå¿
å¡«æ¬ä½"
101: "é»åéµä»¶æ ¼å¼ç¡æ"
auth:
001: "右巿å¯ç é误"
ç¯ä¾
â è¯å¥½çé误ç
AUTH_VAL_001 // 缺å°å¿
å¡«æ¬ä½: email
AUTH_VAL_101 // é»åéµä»¶æ ¼å¼ç¡æ
ORDER_BIZ_001 // 订å已忶
ORDER_BIZ_201 // è¶
鿝æ¥è³¼ä¹°éå¶
DB_SYS_001 // æ°æ®åº«æ¥è©¢å¤±è´¥
SEC_AUTH_001 // 帳å·å¯ç é误
SEC_AUTH_201 // Token å·²éæ
â ä¸è¯çé误ç
ERR_001 // 太模ç³ï¼æ²¡æåç¶´æç±»å«
INVALID // ä¸å
·æè¿°æ§
error // 䏿¯é误ç
AUTH_ERROR // 缺å°ç¼å·
æ£æ¥æ¸ å
- æ¯ä¸ªé误æå¯ä¸ä»£ç
- ç±»å«ç¬¦åé误类å
- 使ç¨è æ¶æ¯å·²æ¬å°å
- HTTP ç¶æç æ£ç¡®
- éè¯¯å·²è®°å½æä»¶
- 代ç å·²å å ¥è¨»å表
è®¾ç½®åµæµ
æ¤æè½æ¯æ´é¡¹ç®ç¹å®è®¾ç½®ã
嵿µé åº
- æ£æ¥ç¨åºç 庫ä¸ç¾æçéè¯¯ç æ¨¡å¼
- æ£æ¥
CONTRIBUTING.mdä¸çéè¯¯ç æå - è¥ç¡æ¾å°ï¼é¢è®¾ä½¿ç¨ PREFIX_CATEGORY_NUMBER æ ¼å¼
馿¬¡è®¾ç½®
è¥æªæ¾å°éè¯¯ç æ åï¼
- 建议ï¼ãæ¤é¡¹ç®å°æªè®¾ç½®éè¯¯ç æ åãæ¨è¦å»ºç«é误ç 註å表åï¼ã
- 建议建ç«
errors/registry.tsï¼
export const ErrorCodes = {
AUTH_VAL_001: {
code: 'AUTH_VAL_001',
httpStatus: 400,
messageKey: 'error.auth.val.001',
description: 'é»åéµä»¶æ¬ä½ä¸ºå¿
å¡«',
},
// ... æ´å¤é误ç
} as const;
ç¸å ³æ å
çæ¬åå²
| çæ¬ | æ¥æ | åæ´ |
|---|---|---|
| 1.0.0 | 2025-12-30 | åå§ç¼å¸ |
ææ
æ¤æè½æ¡ç¨ CC BY 4.0 ææã
便º: universal-dev-standards