@agentunion/fastaun-browser 0.2.18 → 0.2.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/_packed_docs/CHANGELOG.md +26 -0
  3. package/_packed_docs/agent.md/SCHEMA.md +173 -0
  4. package/_packed_docs/agent.md/examples/codeagent-claudecode.md +61 -0
  5. package/_packed_docs/agent.md/examples/human-developer.md +60 -0
  6. package/_packed_docs/agent.md/examples/openclaw-lobster.md +52 -0
  7. package/_packed_docs/agent.md/examples/signed-openclaw-lobster.md +43 -0
  8. package/_packed_docs/protocol/00-/346/200/273/350/247/210/344/270/216/345/210/206/345/261/202.md +205 -0
  9. package/_packed_docs/protocol/00A-/350/256/276/350/256/241/345/216/237/345/210/231-/344/270/272Agent/350/200/214/347/224/237.md +197 -0
  10. package/_packed_docs/protocol/01-/350/272/253/344/273/275/344/270/216/345/207/255/350/257/201/345/215/217/350/256/256-auth.md +549 -0
  11. package/_packed_docs/protocol/02-/350/257/201/344/271/246/344/270/216/344/277/241/344/273/273/344/275/223/347/263/273.md +810 -0
  12. package/_packed_docs/protocol/03-Gateway-/350/277/236/346/216/245/346/250/241/345/274/217.md +262 -0
  13. package/_packed_docs/protocol/04-Peer-/345/255/220/345/215/217/350/256/256.md +180 -0
  14. package/_packed_docs/protocol/05-Relay-/345/255/220/345/215/217/350/256/256.md +164 -0
  15. package/_packed_docs/protocol/06-/346/234/215/345/212/241/345/215/217/350/256/256.md +1135 -0
  16. package/_packed_docs/protocol/07-/351/224/231/350/257/257/347/240/201/344/270/216/347/212/266/346/200/201/346/234/272.md +234 -0
  17. package/_packed_docs/protocol/08-AUN-E2EE-Group.md +900 -0
  18. package/_packed_docs/protocol/08-AUN-E2EE.md +413 -0
  19. package/_packed_docs/protocol/09-/345/256/211/345/205/250/350/200/203/350/231/221.md +316 -0
  20. package/_packed_docs/protocol/10-Group-/345/255/220/345/215/217/350/256/256.md +804 -0
  21. package/_packed_docs/protocol/11-Storage-/345/255/220/345/215/217/350/256/256.md +271 -0
  22. package/_packed_docs/protocol/12-Stream-/345/255/220/345/215/217/350/256/256.md +329 -0
  23. package/_packed_docs/protocol/13-Agent/350/241/214/344/270/272/350/247/204/350/214/203.md +141 -0
  24. package/_packed_docs/protocol/14-/344/272/244/344/272/222/346/234/272/345/210/266-/345/223/215/345/272/224/346/250/241/345/274/217/344/270/216/350/207/252/344/270/273/346/250/241/345/274/217.md +170 -0
  25. package/_packed_docs/protocol/README.md +71 -0
  26. package/_packed_docs/protocol/agent.md/SCHEMA.md +118 -0
  27. package/_packed_docs/protocol/agent.md/examples/codeagent-claudecode.md +61 -0
  28. package/_packed_docs/protocol/agent.md/examples/human-developer.md +60 -0
  29. package/_packed_docs/protocol/agent.md/examples/openclaw-lobster.md +52 -0
  30. package/_packed_docs/protocol/aun-docs-guide.md +49 -0
  31. package/_packed_docs/protocol/index.md +114 -0
  32. package/_packed_docs/protocol//350/215/211/346/241/210-agent.md/347/255/276/345/220/215/345/215/217/350/256/256.md +205 -0
  33. package/_packed_docs/protocol//350/215/211/346/241/210-/346/213/222/347/273/235/344/277/241/345/217/267/345/215/217/350/256/256.md +249 -0
  34. package/_packed_docs/protocol//351/231/204/345/275/225A-/346/234/257/350/257/255/350/241/250.md +337 -0
  35. package/_packed_docs/protocol//351/231/204/345/275/225B-/346/211/251/345/261/225/346/200/247/346/214/207/345/215/227.md +80 -0
  36. package/_packed_docs/protocol//351/231/204/345/275/225C-/347/247/201/351/222/245/347/256/241/347/220/206/344/270/216/350/272/253/344/273/275/346/201/242/345/244/215.md +704 -0
  37. package/_packed_docs/protocol//351/231/204/345/275/225D-Root_CA_/346/262/273/347/220/206/346/234/272/345/210/266.md +620 -0
  38. package/_packed_docs/protocol//351/231/204/345/275/225E-Root_CA_/345/207/206/345/205/245/346/265/201/347/250/213.md +605 -0
  39. package/_packed_docs/protocol//351/231/204/345/275/225F-Issuer_CA_/347/224/263/350/257/267/346/265/201/347/250/213.md +548 -0
  40. package/_packed_docs/protocol//351/231/204/345/275/225G-AID_/345/255/244/345/204/277/351/242/204/351/230/262/344/270/216/346/225/221/346/217/264/346/234/272/345/210/266.md +513 -0
  41. package/_packed_docs/protocol//351/231/204/345/275/225H-Identity/346/234/215/345/212/241/345/256/236/347/216/260/346/214/207/345/215/227.md +619 -0
  42. package/_packed_docs/protocol//351/231/204/345/275/225I-/350/267/250/345/237/237/346/266/210/346/201/257/350/267/257/347/224/261/345/256/236/347/216/260/346/214/207/345/215/227.md +492 -0
  43. package/_packed_docs/protocol//351/231/204/345/275/225J-/345/256/242/346/210/267/347/253/257/346/216/245/345/205/245/347/244/272/344/276/213.md +402 -0
  44. package/_packed_docs/protocol//351/231/204/345/275/225K-Agent_Web/345/217/221/347/216/260/345/215/217/350/256/256.md +130 -0
  45. package/_packed_docs/protocol//351/231/204/345/275/225L-E2EE/345/256/236/347/216/260/346/214/207/345/215/227.md +267 -0
  46. package/_packed_docs/protocol//351/231/204/345/275/225M-JWT/350/256/244/350/257/201/345/256/236/347/216/260/346/214/207/345/215/227.md +367 -0
  47. package/_packed_docs/sdk/01-/345/277/253/351/200/237/345/274/200/345/247/213.md +223 -0
  48. package/_packed_docs/sdk/02-WebSocket/345/215/217/350/256/256.md +354 -0
  49. package/_packed_docs/sdk/03-/346/240/270/345/277/203/346/246/202/345/277/265.md +172 -0
  50. package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +373 -0
  51. package/_packed_docs/sdk/05-E2EE/345/212/240/345/257/206/351/200/232/344/277/241.md +611 -0
  52. package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +1152 -0
  53. package/_packed_docs/sdk/07-/351/224/231/350/257/257/345/244/204/347/220/206.md +150 -0
  54. package/_packed_docs/sdk/08-/346/234/200/344/275/263/345/256/236/350/267/265.md +89 -0
  55. package/_packed_docs/sdk/09-custody-api-manual.md +445 -0
  56. package/_packed_docs/sdk/09-group-rpc-manual.md +1895 -0
  57. package/_packed_docs/sdk/09-message-rpc-manual.md +597 -0
  58. package/_packed_docs/sdk/09-meta-rpc-manual.md +142 -0
  59. package/_packed_docs/sdk/09-payload-reference.md +702 -0
  60. package/_packed_docs/sdk/09-storage-rpc-manual.md +408 -0
  61. package/_packed_docs/sdk/09-stream-rpc-manual.md +275 -0
  62. package/_packed_docs/sdk/AUN_DOCS_GUIDE.md +72 -0
  63. package/_packed_docs/sdk/INDEX.md +131 -0
  64. package/_packed_docs/sdk/README.md +307 -0
  65. package/dist/auth.d.ts +11 -1
  66. package/dist/auth.d.ts.map +1 -1
  67. package/dist/auth.js +92 -17
  68. package/dist/auth.js.map +1 -1
  69. package/dist/client.d.ts +51 -9
  70. package/dist/client.d.ts.map +1 -1
  71. package/dist/client.js +394 -122
  72. package/dist/client.js.map +1 -1
  73. package/dist/e2ee.d.ts.map +1 -1
  74. package/dist/e2ee.js +20 -0
  75. package/dist/e2ee.js.map +1 -1
  76. package/dist/keystore/index.d.ts +11 -0
  77. package/dist/keystore/index.d.ts.map +1 -1
  78. package/dist/keystore/indexeddb.d.ts +35 -0
  79. package/dist/keystore/indexeddb.d.ts.map +1 -1
  80. package/dist/keystore/indexeddb.js +91 -0
  81. package/dist/keystore/indexeddb.js.map +1 -1
  82. package/dist/namespaces/auth.d.ts +10 -3
  83. package/dist/namespaces/auth.d.ts.map +1 -1
  84. package/dist/namespaces/auth.js +94 -15
  85. package/dist/namespaces/auth.js.map +1 -1
  86. package/dist/transport.d.ts +9 -1
  87. package/dist/transport.d.ts.map +1 -1
  88. package/dist/transport.js +24 -0
  89. package/dist/transport.js.map +1 -1
  90. package/package.json +4 -1
@@ -0,0 +1,234 @@
1
+ # 7. 错误码与状态机
2
+
3
+ ## 7.1 错误码分层
4
+
5
+ ### 7.1.1 JSON-RPC 2.0 通用错误码
6
+
7
+ | 错误码 | 说明 | 客户端处理 |
8
+ |--------|------|-----------|
9
+ | -32700 | Parse error | 检查请求格式 |
10
+ | -32600 | Invalid Request | 检查请求格式 |
11
+ | -32601 | Method not found | 检查方法名 |
12
+ | -32602 | Invalid params | 检查参数 |
13
+ | -32603 | Internal error | 重试或报告 |
14
+
15
+ ### 7.1.2 AUN 协议级错误码(认证与权限)
16
+
17
+ | 错误码 | 说明 | 客户端处理 |
18
+ |--------|------|-----------|
19
+ | -32001 | Authentication failed(认证失败) | 检查凭据,重新登录 |
20
+ | -32002 | Certificate/Nonce invalid(凭据无效) | 检查证书链或 nonce |
21
+ | -32003 | Signature verification failed(签名验证失败) | 检查私钥,不重试 |
22
+ | -32004 | Permission denied(权限拒绝) | 提示用户,不重试 |
23
+ | -32005 | Authentication expired(Token 过期) | 刷新 token 或重新登录 |
24
+
25
+ ### 7.1.3 AUN 协议级错误码(连接与会话)
26
+
27
+ | 错误码 | 说明 | 客户端处理 |
28
+ |--------|------|-----------|
29
+ | -32010 | Agent not online | 稍后重试 |
30
+ | -32011 | Session not found | 重新连接 |
31
+ | -32013 | Initialization required | 先调用 auth.connect |
32
+
33
+ ### 7.1.3 Peer 握手错误码 (-3210x)
34
+
35
+ | 错误码 | 说明 | 客户端处理 |
36
+ |--------|------|-----------|
37
+ | -32100 | Peer certificate validation failed | 终止握手,检查证书链 |
38
+ | -32101 | Peer nonce expired | 重新发起 peer.hello |
39
+ | -32102 | Peer nonce reuse detected | 关闭连接,记录告警 |
40
+ | -32103 | Peer signature invalid | 终止握手,拒绝信任 |
41
+ | -32104 | Peer aid mismatch | 拒绝对端,检查证书配置 |
42
+ | -32105 | Peer handshake state invalid | 重试握手 |
43
+
44
+ ### 7.1.4 Relay 错误码 (-3215x)
45
+
46
+ | 错误码 | 说明 | 客户端处理 |
47
+ |--------|------|-----------|
48
+ | -32150 | Relay registration required | 先 relay.register |
49
+ | -32151 | Relay target not found | 稍后重试或回退模式 |
50
+ | -32152 | Relay sender mismatch | 检查注册 AID |
51
+ | -32153 | Relay payload too large | 缩小负载 |
52
+ | -32154 | Relay rate limited | 退避重试 |
53
+
54
+ ### 7.1.5 搜索错误码 (-3216x)
55
+
56
+ | 错误码 | 说明 | 客户端处理 |
57
+ |--------|------|-----------|
58
+ | -32160 | Search unavailable | 切换 AP |
59
+ | -32161 | Agent not found | 检查 AID |
60
+ | -32162 | Invalid search query | 修正查询 |
61
+ | -32163 | Snapshot stale | 等待同步 |
62
+ | -32164 | Change cursor expired | 用 snapshot 重建 |
63
+
64
+ ### 7.1.6 任务错误码 (-3217x)
65
+
66
+ | 错误码 | 说明 | 客户端处理 |
67
+ |--------|------|-----------|
68
+ | -32170 | Task not found | 检查 task_id |
69
+ | -32171 | Task state invalid | 先读取状态 |
70
+ | -32172 | Task input required | 调 task.send_input |
71
+ | -32173 | Task canceled | 停止推进 |
72
+ | -32174 | Task output too large | 用 storage.* |
73
+ | -32175 | Task access denied | 无权限 |
74
+ | -32176 | Task already accepted | 不重复 accept |
75
+ | -32177 | Task rejected | 停止或重建 |
76
+ | -32178 | Task delegation denied | 无委派权限 |
77
+ | -32179 | Task child limit exceeded | 减少子任务 |
78
+ | -32185 | Task completion blocked | 等子任务完成 |
79
+ | -32186 | Task failure recorded | 已终态 |
80
+
81
+ ### 7.1.7 连接升级错误码 (-3218x)
82
+
83
+ | 错误码 | 说明 | 客户端处理 |
84
+ |--------|------|-----------|
85
+ | -32180 | Peer upgrade unsupported | 保持当前模式 |
86
+ | -32181 | Peer upgrade expired | 重新发起 |
87
+ | -32182 | Peer upgrade rejected | 保持当前模式 |
88
+ | -32183 | Peer upgrade invalid endpoint | 丢弃提议 |
89
+ | -32184 | Peer switch denied | 等新通道认证 |
90
+
91
+ ### 7.1.8 E2EE 错误码 (-3204x)
92
+
93
+ | 错误码 | 说明 | 客户端处理 |
94
+ |--------|------|-----------|
95
+ | -32040 | Group secret missing(缺少群密钥) | 发送 key_request 请求补发 |
96
+ | -32041 | Group epoch mismatch(epoch 不匹配) | 请求对应 epoch 的密钥 |
97
+ | -32042 | Group commitment invalid(成员承诺验证失败) | 告警,检查成员列表 |
98
+ | -32043 | Group not member(请求者非群成员) | 不重试 |
99
+ | -32044 | Group decrypt failed(群消息解密失败) | 检查密钥,可能需 key_request |
100
+
101
+ ### 7.1.9 Group 错误码 (-3300x)
102
+
103
+ | 错误码 | 说明 | 客户端处理 |
104
+ |--------|------|-----------|
105
+ | -33001 | Group not found | 检查 group_id |
106
+ | -33002 | Group state invalid(群状态不允许该操作) | 检查群状态 |
107
+ | -33003 | Group suspended | 等待恢复或联系管理员 |
108
+ | -33004 | Group member limit reached | 不重试 |
109
+ | -33005 | Group already member | 不重试 |
110
+ | -33006 | Group not member | 先加入群 |
111
+ | -33007 | Group role insufficient | 检查权限 |
112
+ | -33008 | Group invite code invalid | 获取新邀请码 |
113
+ | -33009 | Group join rejected | 不重试 |
114
+
115
+ ### 7.1.10 Stream 错误码 (-3340x)
116
+
117
+ | 错误码 | 说明 | 客户端处理 |
118
+ |--------|------|-----------|
119
+ | -33401 | Stream not found(流不存在) | 检查 stream_id |
120
+ | -33402 | Stream limit exceeded(达到流上限) | 等待其他流关闭后重试 |
121
+ | -33403 | Stream permission denied(权限不足) | 不重试 |
122
+ | -33404 | Stream already closed(流已关闭) | 不重试 |
123
+ | -33405 | Stream invalid params(参数无效) | 检查参数 |
124
+ | -33406 | Stream rate limited(速率限制) | 稍后重试 |
125
+ | -33407 | Stream internal error(内部错误) | 稍后重试 |
126
+ | HTTP 403 | push/pull token 无效,或 `target_aid` 不匹配 | 检查 URL / aid |
127
+ | HTTP 404 | 数据平面找不到流 | 检查 stream_id |
128
+ | HTTP 410 | 流已关闭 | 不重试 |
129
+ | HTTP 429 | 拉流端数已达上限 | 稍后重试 |
130
+
131
+ ## 7.2 可重试 / 不可重试分类
132
+
133
+ | 分类 | 错误码 | 说明 |
134
+ |------|--------|------|
135
+ | **可重试** | -32010, -32101, -32151, -32154, -32163, -32040, -32041 | 临时状态,稍后可能恢复 |
136
+ | **不可重试** | -32001, -32003, -32004, -32100, -32102, -32103, -32104, -32175, -32043, -33001 | 永久性拒绝 |
137
+ | **需操作后重试** | -32002, -32005, -32013, -32150, -32164, -32172, -32044 | 需要先完成特定操作 |
138
+
139
+ ## 7.3 连接状态机
140
+
141
+ ### 7.3.1 Gateway 模式状态机
142
+
143
+ ```
144
+ CONNECTED
145
+ → auth.aid_login1
146
+ → auth.aid_login2 (获取 token)
147
+ → auth.connect(nonce, auth, protocol)
148
+ → AUTHENTICATED
149
+ → READY (可调用所有业务方法)
150
+ ```
151
+
152
+ 规则:
153
+ - auth.* 可在 auth.connect 之前调用
154
+ - auth.connect 成功即完成认证
155
+ - token 失效需重连
156
+
157
+ ### 7.3.2 Peer 模式状态机
158
+
159
+ ```
160
+ CONNECTED
161
+ → initialize(mode=peer)
162
+ → INITIALIZED
163
+ → peer.hello
164
+ → PEER_CHALLENGED
165
+ → peer.hello_reply
166
+ → PEER_VERIFIED
167
+ → peer.confirm
168
+ → AUTHENTICATED
169
+ → notification/initialized
170
+ → READY
171
+ ```
172
+
173
+ 规则:
174
+ - initialize 只建立模式上下文
175
+ - 任一 peer.* 失败应关闭连接
176
+ - AUTHENTICATED 后可调业务方法
177
+
178
+ ### 7.3.3 Relay 模式状态机
179
+
180
+ ```
181
+ CONNECTED
182
+ → initialize(mode=relay)
183
+ → INITIALIZED
184
+ → relay.register
185
+ → RELAY_REGISTERED
186
+ → relay.forward(peer.hello)
187
+ → ...peer.* 穿透认证...
188
+ → AUTHENTICATED
189
+ → notification/initialized
190
+ → READY
191
+ ```
192
+
193
+ 规则:
194
+ - relay.register 仅建立 AID→连接映射
195
+ - 身份认证以 peer.confirmed 为准
196
+ - 未完成 peer.* 的连接不可投递业务消息
197
+
198
+ ### 7.3.4 通用连接状态表
199
+
200
+ | 状态 | 允许的方法 | 说明 |
201
+ |------|-----------|------|
202
+ | CONNECTED | auth.connect, auth.*(仅 gateway 预认证) | 刚建立 WebSocket |
203
+ | INITIALIZED | peer.*, relay.* | 仅 peer/relay 模式 |
204
+ | AUTHENTICATED | 所有已协商方法 | 认证完成 |
205
+ | READY | 所有已协商方法 | notification/initialized 后 |
206
+
207
+ ## 7.4 任务状态机
208
+
209
+ ```
210
+ submitted → working → completed
211
+ → rejected → input_required → working
212
+ → failed
213
+ → canceled
214
+ ```
215
+
216
+ | 状态 | 终态 | 可转到 |
217
+ |------|:----:|--------|
218
+ | submitted | | working, rejected |
219
+ | working | | input_required, completed, failed, canceled |
220
+ | input_required | | working, failed, canceled |
221
+ | rejected | 是 | |
222
+ | completed | 是 | |
223
+ | failed | 是 | |
224
+ | canceled | 是 | |
225
+
226
+ ## 7.5 处理原则
227
+
228
+ - **-3210x**:Peer 握手错误,中止当前认证(参见 [04-Peer-子协议](04-Peer-子协议.md))
229
+ - **-3215x**:Relay 错误,修正状态或回退模式(参见 [05-Relay-子协议](05-Relay-子协议.md))
230
+ - **-3216x**:搜索错误,修正查询或切换 AP(参见 [08-服务协议](08-服务协议.md))
231
+ - **-3217x**:任务错误,根据错误类型决定重试/放弃(参见 [08-服务协议](08-服务协议.md))
232
+ - **-3218x**:升级错误,保留当前稳定通道(参见 [04-Peer-子协议](04-Peer-子协议.md))
233
+ - **-3204x**:E2EE 错误,群密钥缺失时请求补发,解密失败时检查密钥版本(参见 [08-AUN-E2EE-Group](08-AUN-E2EE-Group.md))
234
+ - **-3300x**:群组错误,根据错误类型决定重试/提示用户(参见 [10-Group-子协议](10-Group-子协议.md))