@f2a/openclaw-f2a 0.3.3 → 0.3.4

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 (120) hide show
  1. package/dist/F2AComponentRegistry.d.ts +195 -0
  2. package/dist/F2AComponentRegistry.d.ts.map +1 -0
  3. package/dist/F2AComponentRegistry.js +385 -0
  4. package/dist/F2AComponentRegistry.js.map +1 -0
  5. package/dist/F2ACore.d.ts +227 -0
  6. package/dist/F2ACore.d.ts.map +1 -0
  7. package/dist/F2ACore.js +648 -0
  8. package/dist/F2ACore.js.map +1 -0
  9. package/dist/F2AMessageRouter.d.ts +108 -0
  10. package/dist/F2AMessageRouter.d.ts.map +1 -0
  11. package/dist/F2AMessageRouter.js +157 -0
  12. package/dist/F2AMessageRouter.js.map +1 -0
  13. package/dist/F2AToolRegistry.d.ts +45 -0
  14. package/dist/F2AToolRegistry.d.ts.map +1 -0
  15. package/dist/F2AToolRegistry.js +79 -0
  16. package/dist/F2AToolRegistry.js.map +1 -0
  17. package/dist/F2AWebhookManager.d.ts +79 -0
  18. package/dist/F2AWebhookManager.d.ts.map +1 -0
  19. package/dist/F2AWebhookManager.js +241 -0
  20. package/dist/F2AWebhookManager.js.map +1 -0
  21. package/dist/agent-manager.js +6 -6
  22. package/dist/agent-manager.js.map +1 -1
  23. package/dist/announcement-queue.d.ts +1 -8
  24. package/dist/announcement-queue.d.ts.map +1 -1
  25. package/dist/announcement-queue.js +19 -19
  26. package/dist/announcement-queue.js.map +1 -1
  27. package/dist/claim-handlers.d.ts +13 -4
  28. package/dist/claim-handlers.d.ts.map +1 -1
  29. package/dist/claim-handlers.js +42 -13
  30. package/dist/claim-handlers.js.map +1 -1
  31. package/dist/connector-helpers.d.ts +143 -0
  32. package/dist/connector-helpers.d.ts.map +1 -0
  33. package/dist/connector-helpers.js +398 -0
  34. package/dist/connector-helpers.js.map +1 -0
  35. package/dist/connector.d.ts +87 -265
  36. package/dist/connector.d.ts.map +1 -1
  37. package/dist/connector.js +334 -2037
  38. package/dist/connector.js.map +1 -1
  39. package/dist/contact-manager.d.ts +1 -1
  40. package/dist/contact-manager.d.ts.map +1 -1
  41. package/dist/contact-manager.js +12 -5
  42. package/dist/contact-manager.js.map +1 -1
  43. package/dist/contact-tool-handlers.d.ts +72 -0
  44. package/dist/contact-tool-handlers.d.ts.map +1 -0
  45. package/dist/contact-tool-handlers.js +413 -0
  46. package/dist/contact-tool-handlers.js.map +1 -0
  47. package/dist/f2a-client.d.ts +168 -0
  48. package/dist/f2a-client.d.ts.map +1 -0
  49. package/dist/f2a-client.js +425 -0
  50. package/dist/f2a-client.js.map +1 -0
  51. package/dist/handshake-protocol.d.ts +3 -2
  52. package/dist/handshake-protocol.d.ts.map +1 -1
  53. package/dist/handshake-protocol.js +15 -6
  54. package/dist/handshake-protocol.js.map +1 -1
  55. package/dist/index.d.ts +12 -16
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +13 -45
  58. package/dist/index.js.map +1 -1
  59. package/dist/logger.d.ts +31 -9
  60. package/dist/logger.d.ts.map +1 -1
  61. package/dist/logger.js +268 -12
  62. package/dist/logger.js.map +1 -1
  63. package/dist/network-client.d.ts +1 -8
  64. package/dist/network-client.d.ts.map +1 -1
  65. package/dist/network-client.js.map +1 -1
  66. package/dist/node-manager.d.ts +8 -8
  67. package/dist/node-manager.d.ts.map +1 -1
  68. package/dist/node-manager.js +100 -36
  69. package/dist/node-manager.js.map +1 -1
  70. package/dist/plugin.d.ts +2 -2
  71. package/dist/plugin.d.ts.map +1 -1
  72. package/dist/plugin.js +43 -23
  73. package/dist/plugin.js.map +1 -1
  74. package/dist/task-guard.d.ts.map +1 -1
  75. package/dist/task-guard.js +44 -38
  76. package/dist/task-guard.js.map +1 -1
  77. package/dist/task-queue.d.ts +2 -8
  78. package/dist/task-queue.d.ts.map +1 -1
  79. package/dist/task-queue.js +144 -119
  80. package/dist/task-queue.js.map +1 -1
  81. package/dist/tool-handlers.d.ts +15 -3
  82. package/dist/tool-handlers.d.ts.map +1 -1
  83. package/dist/tool-handlers.js +85 -54
  84. package/dist/tool-handlers.js.map +1 -1
  85. package/dist/tools/contact-tools.d.ts +18 -0
  86. package/dist/tools/contact-tools.d.ts.map +1 -0
  87. package/dist/tools/contact-tools.js +176 -0
  88. package/dist/tools/contact-tools.js.map +1 -0
  89. package/dist/tools/index.d.ts +9 -0
  90. package/dist/tools/index.d.ts.map +1 -0
  91. package/dist/tools/index.js +15 -0
  92. package/dist/tools/index.js.map +1 -0
  93. package/dist/tools/network-tools.d.ts +17 -0
  94. package/dist/tools/network-tools.d.ts.map +1 -0
  95. package/dist/tools/network-tools.js +106 -0
  96. package/dist/tools/network-tools.js.map +1 -0
  97. package/dist/tools/task-tools.d.ts +25 -0
  98. package/dist/tools/task-tools.d.ts.map +1 -0
  99. package/dist/tools/task-tools.js +275 -0
  100. package/dist/tools/task-tools.js.map +1 -0
  101. package/dist/types.d.ts +376 -12
  102. package/dist/types.d.ts.map +1 -1
  103. package/dist/types.js.map +1 -1
  104. package/dist/webhook-handlers.d.ts +50 -0
  105. package/dist/webhook-handlers.d.ts.map +1 -0
  106. package/dist/webhook-handlers.js +183 -0
  107. package/dist/webhook-handlers.js.map +1 -0
  108. package/dist/webhook-pusher.d.ts +1 -8
  109. package/dist/webhook-pusher.d.ts.map +1 -1
  110. package/dist/webhook-pusher.js.map +1 -1
  111. package/dist/webhook-server.d.ts +3 -8
  112. package/dist/webhook-server.d.ts.map +1 -1
  113. package/dist/webhook-server.js +21 -4
  114. package/dist/webhook-server.js.map +1 -1
  115. package/openclaw.plugin.json +1 -1
  116. package/package.json +7 -4
  117. package/dist/reputation.d.ts +0 -156
  118. package/dist/reputation.d.ts.map +0 -1
  119. package/dist/reputation.js +0 -432
  120. package/dist/reputation.js.map +0 -1
@@ -0,0 +1,425 @@
1
+ "use strict";
2
+ /**
3
+ * F2A Client
4
+ * OpenClaw 插件通过此客户端与 F2A Daemon 通信
5
+ *
6
+ * Phase 3: 插件变成轻量客户端
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.F2AClient = void 0;
10
+ /**
11
+ * 简单 Logger 实现
12
+ */
13
+ class SimpleLogger {
14
+ component;
15
+ constructor(component) {
16
+ this.component = component;
17
+ }
18
+ info(message, meta) {
19
+ console.log(`[${this.component}] ${message}`, meta || '');
20
+ }
21
+ debug(message, meta) {
22
+ if (process.env.DEBUG) {
23
+ console.debug(`[${this.component}] ${message}`, meta || '');
24
+ }
25
+ }
26
+ warn(message, meta) {
27
+ console.warn(`[${this.component}] ${message}`, meta || '');
28
+ }
29
+ error(message, meta) {
30
+ console.error(`[${this.component}] ${message}`, meta || '');
31
+ }
32
+ }
33
+ /**
34
+ * F2A Daemon 客户端
35
+ */
36
+ class F2AClient {
37
+ config;
38
+ logger;
39
+ registered = false;
40
+ abortController;
41
+ constructor(config) {
42
+ this.config = {
43
+ daemonUrl: config.daemonUrl || 'http://localhost:7788',
44
+ agentId: config.agentId,
45
+ agentName: config.agentName,
46
+ capabilities: config.capabilities || [],
47
+ webhookUrl: config.webhookUrl,
48
+ timeout: config.timeout || 30000,
49
+ retries: config.retries || 3,
50
+ retryDelay: config.retryDelay || 1000,
51
+ };
52
+ this.logger = new SimpleLogger('F2AClient');
53
+ }
54
+ /**
55
+ * 检查 Daemon 是否可用
56
+ */
57
+ async checkHealth() {
58
+ try {
59
+ const response = await this.fetch('/health', {
60
+ method: 'GET',
61
+ });
62
+ return response.success;
63
+ }
64
+ catch {
65
+ return false;
66
+ }
67
+ }
68
+ /**
69
+ * 注册 Agent 到 Daemon
70
+ */
71
+ async registerAgent() {
72
+ const request = {
73
+ agentId: this.config.agentId,
74
+ name: this.config.agentName,
75
+ capabilities: this.config.capabilities,
76
+ webhookUrl: this.config.webhookUrl,
77
+ metadata: {
78
+ registeredAt: new Date().toISOString(),
79
+ },
80
+ };
81
+ try {
82
+ const response = await this.fetch('/api/agents', {
83
+ method: 'POST',
84
+ body: JSON.stringify(request),
85
+ });
86
+ if (response.success) {
87
+ this.registered = true;
88
+ this.logger.info('Agent registered to Daemon', {
89
+ agentId: this.config.agentId,
90
+ daemonUrl: this.config.daemonUrl,
91
+ });
92
+ }
93
+ return response;
94
+ }
95
+ catch (error) {
96
+ this.logger.error('Failed to register agent', {
97
+ error: error instanceof Error ? error.message : String(error),
98
+ });
99
+ return {
100
+ success: false,
101
+ error: error instanceof Error ? error.message : String(error),
102
+ code: 'REGISTER_FAILED',
103
+ };
104
+ }
105
+ }
106
+ /**
107
+ * 注销 Agent
108
+ */
109
+ async unregisterAgent() {
110
+ if (!this.registered) {
111
+ return { success: true };
112
+ }
113
+ try {
114
+ const response = await this.fetch(`/api/agents/${this.config.agentId}`, {
115
+ method: 'DELETE',
116
+ });
117
+ if (response.success) {
118
+ this.registered = false;
119
+ this.logger.info('Agent unregistered from Daemon', {
120
+ agentId: this.config.agentId,
121
+ });
122
+ }
123
+ return response;
124
+ }
125
+ catch (error) {
126
+ this.logger.error('Failed to unregister agent', {
127
+ error: error instanceof Error ? error.message : String(error),
128
+ });
129
+ return {
130
+ success: false,
131
+ error: error instanceof Error ? error.message : String(error),
132
+ code: 'UNREGISTER_FAILED',
133
+ };
134
+ }
135
+ }
136
+ /**
137
+ * 发送消息给其他 Agent
138
+ */
139
+ async sendMessage(to, content, metadata, type) {
140
+ const request = {
141
+ fromAgentId: this.config.agentId,
142
+ toAgentId: to,
143
+ content,
144
+ metadata,
145
+ type: type || 'message',
146
+ };
147
+ try {
148
+ const response = await this.fetch('/api/messages', {
149
+ method: 'POST',
150
+ body: JSON.stringify(request),
151
+ });
152
+ return response;
153
+ }
154
+ catch (error) {
155
+ this.logger.error('Failed to send message', {
156
+ error: error instanceof Error ? error.message : String(error),
157
+ });
158
+ return {
159
+ success: false,
160
+ error: error instanceof Error ? error.message : String(error),
161
+ code: 'SEND_FAILED',
162
+ };
163
+ }
164
+ }
165
+ /**
166
+ * 广播消息给所有 Agent
167
+ */
168
+ async broadcastMessage(content, metadata) {
169
+ const request = {
170
+ fromAgentId: this.config.agentId,
171
+ content,
172
+ metadata,
173
+ type: 'announcement',
174
+ };
175
+ try {
176
+ const response = await this.fetch('/api/messages', {
177
+ method: 'POST',
178
+ body: JSON.stringify(request),
179
+ });
180
+ return response;
181
+ }
182
+ catch (error) {
183
+ this.logger.error('Failed to broadcast message', {
184
+ error: error instanceof Error ? error.message : String(error),
185
+ });
186
+ return {
187
+ success: false,
188
+ error: error instanceof Error ? error.message : String(error),
189
+ code: 'BROADCAST_FAILED',
190
+ };
191
+ }
192
+ }
193
+ /**
194
+ * 获取本 Agent 的消息队列
195
+ */
196
+ async getMessages(limit) {
197
+ const params = limit ? `?limit=${limit}` : '';
198
+ try {
199
+ const response = await this.fetch(`/api/messages/${this.config.agentId}${params}`, {
200
+ method: 'GET',
201
+ });
202
+ return response;
203
+ }
204
+ catch (error) {
205
+ this.logger.error('Failed to get messages', {
206
+ error: error instanceof Error ? error.message : String(error),
207
+ });
208
+ return {
209
+ success: false,
210
+ error: error instanceof Error ? error.message : String(error),
211
+ code: 'GET_MESSAGES_FAILED',
212
+ };
213
+ }
214
+ }
215
+ /**
216
+ * 清除已处理的消息
217
+ */
218
+ async clearMessages(messageIds) {
219
+ const body = messageIds ? JSON.stringify({ messageIds }) : '';
220
+ try {
221
+ const response = await this.fetch(`/api/messages/${this.config.agentId}`, {
222
+ method: 'DELETE',
223
+ body,
224
+ });
225
+ return response;
226
+ }
227
+ catch (error) {
228
+ this.logger.error('Failed to clear messages', {
229
+ error: error instanceof Error ? error.message : String(error),
230
+ });
231
+ return {
232
+ success: false,
233
+ error: error instanceof Error ? error.message : String(error),
234
+ code: 'CLEAR_MESSAGES_FAILED',
235
+ };
236
+ }
237
+ }
238
+ /**
239
+ * 获取所有注册的 Agent
240
+ */
241
+ async getAgents() {
242
+ try {
243
+ const response = await this.fetch('/api/agents', {
244
+ method: 'GET',
245
+ });
246
+ return response;
247
+ }
248
+ catch (error) {
249
+ this.logger.error('Failed to get agents', {
250
+ error: error instanceof Error ? error.message : String(error),
251
+ });
252
+ return {
253
+ success: false,
254
+ error: error instanceof Error ? error.message : String(error),
255
+ code: 'GET_AGENTS_FAILED',
256
+ };
257
+ }
258
+ }
259
+ /**
260
+ * 发现具备特定能力的 Agent
261
+ */
262
+ async discoverAgentsByCapability(capability) {
263
+ try {
264
+ // 先获取所有 Agent
265
+ const response = await this.getAgents();
266
+ if (!response.success || !response.data) {
267
+ return response;
268
+ }
269
+ // 过滤具备指定能力的 Agent
270
+ const agents = response.data.agents.filter(agent => agent.capabilities.some(cap => cap.name === capability));
271
+ return {
272
+ success: true,
273
+ data: { agents },
274
+ };
275
+ }
276
+ catch (error) {
277
+ this.logger.error('Failed to discover agents by capability', {
278
+ error: error instanceof Error ? error.message : String(error),
279
+ capability,
280
+ });
281
+ return {
282
+ success: false,
283
+ error: error instanceof Error ? error.message : String(error),
284
+ code: 'DISCOVER_FAILED',
285
+ };
286
+ }
287
+ }
288
+ /**
289
+ * 获取 Daemon 状态
290
+ */
291
+ async getDaemonStatus() {
292
+ try {
293
+ const response = await this.fetch('/status', {
294
+ method: 'GET',
295
+ });
296
+ return response;
297
+ }
298
+ catch (error) {
299
+ this.logger.error('Failed to get daemon status', {
300
+ error: error instanceof Error ? error.message : String(error),
301
+ });
302
+ return {
303
+ success: false,
304
+ error: error instanceof Error ? error.message : String(error),
305
+ code: 'GET_STATUS_FAILED',
306
+ };
307
+ }
308
+ }
309
+ /**
310
+ * 获取 P2P 网络 Peers
311
+ */
312
+ async getPeers() {
313
+ try {
314
+ const response = await this.fetch('/peers', {
315
+ method: 'GET',
316
+ });
317
+ return response;
318
+ }
319
+ catch (error) {
320
+ this.logger.error('Failed to get peers', {
321
+ error: error instanceof Error ? error.message : String(error),
322
+ });
323
+ return {
324
+ success: false,
325
+ error: error instanceof Error ? error.message : String(error),
326
+ code: 'GET_PEERS_FAILED',
327
+ };
328
+ }
329
+ }
330
+ /**
331
+ * 是否已注册
332
+ */
333
+ isRegistered() {
334
+ return this.registered;
335
+ }
336
+ /**
337
+ * 获取配置
338
+ */
339
+ getConfig() {
340
+ return this.config;
341
+ }
342
+ /**
343
+ * 关闭客户端
344
+ */
345
+ async close() {
346
+ if (this.registered) {
347
+ await this.unregisterAgent();
348
+ }
349
+ if (this.abortController) {
350
+ this.abortController.abort();
351
+ }
352
+ this.logger.info('F2AClient closed');
353
+ }
354
+ // ========== 内部方法 ==========
355
+ /**
356
+ * 发送 HTTP 请求到 Daemon(带超时)
357
+ */
358
+ async fetch(path, options) {
359
+ const url = `${this.config.daemonUrl}${path}`;
360
+ const requestTimeout = options.timeout || this.config.timeout;
361
+ let lastError;
362
+ for (let attempt = 0; attempt < this.config.retries; attempt++) {
363
+ try {
364
+ this.abortController = new AbortController();
365
+ // 设置超时
366
+ const timeoutId = setTimeout(() => {
367
+ this.abortController?.abort();
368
+ }, requestTimeout);
369
+ try {
370
+ const response = await global.fetch(url, {
371
+ method: options.method,
372
+ headers: {
373
+ 'Content-Type': 'application/json',
374
+ },
375
+ body: options.body,
376
+ signal: this.abortController.signal,
377
+ });
378
+ if (!response.ok) {
379
+ const text = await response.text();
380
+ try {
381
+ const data = JSON.parse(text);
382
+ return data;
383
+ }
384
+ catch {
385
+ return {
386
+ success: false,
387
+ error: text,
388
+ code: `HTTP_${response.status}`,
389
+ };
390
+ }
391
+ }
392
+ const data = await response.json();
393
+ return data;
394
+ }
395
+ finally {
396
+ clearTimeout(timeoutId);
397
+ }
398
+ }
399
+ catch (error) {
400
+ lastError = error instanceof Error ? error : new Error(String(error));
401
+ if (attempt < this.config.retries - 1) {
402
+ this.logger.debug('Retry attempt', {
403
+ attempt: attempt + 1,
404
+ retries: this.config.retries,
405
+ error: lastError.message,
406
+ });
407
+ await this.sleep(this.config.retryDelay);
408
+ }
409
+ }
410
+ }
411
+ return {
412
+ success: false,
413
+ error: lastError?.message || 'Unknown error',
414
+ code: 'REQUEST_FAILED',
415
+ };
416
+ }
417
+ /**
418
+ * 等待指定时间
419
+ */
420
+ sleep(ms) {
421
+ return new Promise(resolve => setTimeout(resolve, ms));
422
+ }
423
+ }
424
+ exports.F2AClient = F2AClient;
425
+ //# sourceMappingURL=f2a-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"f2a-client.js","sourceRoot":"","sources":["../src/f2a-client.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@
12
12
  import type { F2A } from '@f2a/network';
13
13
  import { ContactManager } from './contact-manager.js';
14
14
  import { ContactCapability } from './contact-types.js';
15
- import type { ApiLogger } from './connector.js';
15
+ import type { ApiLogger } from './types.js';
16
16
  import { type HandshakeConfig } from './types.js';
17
17
  /** 握手协议消息类型 */
18
18
  export declare const HANDSHAKE_MESSAGE_TYPES: {
@@ -89,7 +89,7 @@ export declare class HandshakeProtocol {
89
89
  private outgoingRequests;
90
90
  /** P1-4 修复:shutdown 标志,阻止新请求 */
91
91
  private _isShutdown;
92
- /** P1 修复:PeerID 格式正则(libp2p 格式:12D3KooW...) */
92
+ /** P1 修复:PeerID 格式正则(libp2p 格式:12D3KooW...,base58btc 不含 0) */
93
93
  private static readonly PEER_ID_REGEX;
94
94
  constructor(f2a: F2A, contactManager: ContactManager, logger?: ApiLogger, config?: HandshakeConfig);
95
95
  /**
@@ -146,6 +146,7 @@ export declare class HandshakeProtocol {
146
146
  private getMyCapabilities;
147
147
  /**
148
148
  * 生成请求 ID
149
+ * P1-2 修复:使用 crypto.randomBytes() 替代 Math.random()
149
150
  */
150
151
  private generateRequestId;
151
152
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"handshake-protocol.d.ts","sourceRoot":"","sources":["../src/handshake-protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handshake-protocol.d.ts","sourceRoot":"","sources":["../src/handshake-protocol.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.HandshakeProtocol = exports.HANDSHAKE_MESSAGE_TYPES = void 0;
15
15
  const contact_types_js_1 = require("./contact-types.js");
16
16
  const types_js_1 = require("./types.js");
17
+ const crypto_1 = require("crypto"); // P1-2 修复:导入 crypto 模块用于生成安全的请求 ID
17
18
  // ============================================================================
18
19
  // 常量定义
19
20
  // ============================================================================
@@ -72,8 +73,8 @@ class HandshakeProtocol {
72
73
  outgoingRequests = new Map();
73
74
  /** P1-4 修复:shutdown 标志,阻止新请求 */
74
75
  _isShutdown = false;
75
- /** P1 修复:PeerID 格式正则(libp2p 格式:12D3KooW...) */
76
- static PEER_ID_REGEX = /^12D3KooW[A-Za-z0-9]{44}$/;
76
+ /** P1 修复:PeerID 格式正则(libp2p 格式:12D3KooW...,base58btc 不含 0) */
77
+ static PEER_ID_REGEX = /^12D3KooW[A-Za-z1-9]{44}$/;
77
78
  constructor(f2a, contactManager, logger, config) {
78
79
  this.f2a = f2a;
79
80
  this.contactManager = contactManager;
@@ -146,6 +147,12 @@ class HandshakeProtocol {
146
147
  return null;
147
148
  }
148
149
  try {
150
+ // P1-5 修复:检查是否向自己发送请求
151
+ const f2aInterface = this.f2a;
152
+ if (toPeerId === f2aInterface.peerId) {
153
+ this.logger?.warn('[HandshakeProtocol] 不能向自己发送好友请求');
154
+ return null;
155
+ }
149
156
  // 检查是否已是好友
150
157
  if (this.contactManager.isFriend(toPeerId)) {
151
158
  this.logger?.warn('[HandshakeProtocol] 对方已是好友');
@@ -163,8 +170,6 @@ class HandshakeProtocol {
163
170
  this.logger?.warn('[HandshakeProtocol] 已有待响应的请求');
164
171
  return existing.request.requestId;
165
172
  }
166
- // P0-2 修复:使用类型安全的接口
167
- const f2aInterface = this.f2a;
168
173
  // 创建请求
169
174
  const myCapabilities = this.getMyCapabilities();
170
175
  const request = {
@@ -225,7 +230,9 @@ class HandshakeProtocol {
225
230
  return request.requestId;
226
231
  }
227
232
  else {
228
- lastError = new Error(result.error || '发送失败');
233
+ lastError = new Error(typeof result.error === 'object' && result.error?.message
234
+ ? result.error.message
235
+ : String(result.error) || '发送失败');
229
236
  }
230
237
  }
231
238
  catch (err) {
@@ -453,9 +460,11 @@ class HandshakeProtocol {
453
460
  }
454
461
  /**
455
462
  * 生成请求 ID
463
+ * P1-2 修复:使用 crypto.randomBytes() 替代 Math.random()
456
464
  */
457
465
  generateRequestId() {
458
- return `req-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 9)}`;
466
+ const randomPart = (0, crypto_1.randomBytes)(4).toString('hex'); // 4 bytes = 8 hex chars
467
+ return `req-${Date.now().toString(36)}-${randomPart}`;
459
468
  }
460
469
  /**
461
470
  * 睡眠
@@ -1 +1 @@
1
- {"version":3,"file":"handshake-protocol.js","sourceRoot":"","sources":["../src/handshake-protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handshake-protocol.js","sourceRoot":"","sources":["../src/handshake-protocol.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,20 +1,16 @@
1
1
  /**
2
- * F2A OpenClaw Adapter - 主入口
2
+ * F2A OpenClaw Plugin - 公共 API 入口
3
3
  * OpenClaw 适配器,用于接入 F2A P2P Agent 网络
4
+ *
5
+ * Issue #106: 精简导出,只导出公共 API
4
6
  */
5
- export { F2AOpenClawAdapter } from './connector.js';
6
- export { F2ANodeManager } from './node-manager.js';
7
- export { F2ANetworkClient } from './network-client.js';
8
- export { WebhookServer, WebhookHandler } from './webhook-server.js';
9
- export { ReputationSystem } from './reputation.js';
10
- export { CapabilityDetector } from './capability-detector.js';
11
- export { TaskQueue, QueuedTask, TaskQueueStats } from './task-queue.js';
12
- export { AnnouncementQueue, AnnouncementQueueStats } from './announcement-queue.js';
13
- export { TaskGuard, TaskGuardReport, TaskGuardRule, TaskGuardConfig, taskGuard } from './task-guard.js';
14
- export * from './types.js';
15
- export { ContactManager } from './contact-manager.js';
16
- export * from './contact-types.js';
17
- export { HandshakeProtocol, HANDSHAKE_MESSAGE_TYPES } from './handshake-protocol.js';
18
- export type { FriendRequestMessage, FriendResponseMessage } from './handshake-protocol.js';
19
- export { F2AOpenClawAdapter as default } from './connector.js';
7
+ export { F2APlugin } from './connector.js';
8
+ export { F2APlugin as default } from './connector.js';
9
+ export type { F2APluginConfig, F2ANodeConfig, OpenClawPlugin, OpenClawPluginApi, Tool, SessionContext, ToolResult, ApiLogger, AgentInfo, AgentCapability, TaskRequest, TaskResponse, TaskAnnouncement, TaskClaim, F2APluginPublicInterface, } from './types.js';
10
+ export { FriendStatus } from './contact-types.js';
11
+ export type { ContactFilter, Contact, } from './contact-types.js';
12
+ export type { Result, F2AError, ErrorCode } from './types.js';
13
+ export { F2AClient } from './f2a-client.js';
14
+ export type { F2AClientConfig, AgentRegisterRequest, MessageSendRequest, RoutableMessage, DaemonResponse, } from './f2a-client.js';
15
+ export type { F2ARunMode } from './F2ACore.js';
20
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxG,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,cAAc,oBAAoB,CAAC;AAGnC,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACrF,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAG3F,OAAO,EAAE,kBAAkB,IAAI,OAAO,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGtD,YAAY,EAEV,eAAe,EACf,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,IAAI,EACJ,cAAc,EACd,UAAU,EACV,SAAS,EAGT,SAAS,EACT,eAAe,EAGf,WAAW,EACX,YAAY,EAGZ,gBAAgB,EAChB,SAAS,EAGT,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EACV,aAAa,EACb,OAAO,GACR,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG9D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,cAAc,GACf,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}