@f2a/openclaw-f2a 0.2.25 → 0.3.1

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contact-manager.js","sourceRoot":"","sources":["../src/contact-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,289 @@
1
+ /**
2
+ * F2A 联系人类型定义
3
+ *
4
+ * 定义通讯录相关的类型接口,支持:
5
+ * - 联系人信息存储
6
+ * - 分组/标签管理
7
+ * - 好友状态管理
8
+ *
9
+ * @module contact-types
10
+ */
11
+ /**
12
+ * 好友关系状态
13
+ *
14
+ * 状态流转:
15
+ * - stranger → pending (发送好友请求)
16
+ * - pending → friend (对方接受)
17
+ * - pending → stranger (对方拒绝或超时)
18
+ * - friend → blocked (拉黑)
19
+ * - blocked → stranger (解除拉黑)
20
+ */
21
+ export declare enum FriendStatus {
22
+ /** 陌生人:未建立任何关系 */
23
+ STRANGER = "stranger",
24
+ /** 待处理:已发送/收到好友请求,等待响应 */
25
+ PENDING = "pending",
26
+ /** 好友:双方互为好友,可以发送任务消息 */
27
+ FRIEND = "friend",
28
+ /** 已拉黑:被拉黑,无法发送任何消息 */
29
+ BLOCKED = "blocked"
30
+ }
31
+ /**
32
+ * 联系人能力信息
33
+ */
34
+ export interface ContactCapability {
35
+ /** 能力名称 */
36
+ name: string;
37
+ /** 能力描述 */
38
+ description?: string;
39
+ /** 支持的工具列表 */
40
+ tools?: string[];
41
+ }
42
+ /**
43
+ * 联系人信息
44
+ *
45
+ * 存储在通讯录中的联系人详细信息
46
+ */
47
+ export interface Contact {
48
+ /** 联系人 ID(通常是 PeerID) */
49
+ id: string;
50
+ /** Agent 显示名称 */
51
+ name: string;
52
+ /** Peer ID(libp2p 格式) */
53
+ peerId: string;
54
+ /** Agent ID(可选,独立于 PeerID) */
55
+ agentId?: string;
56
+ /** 好友状态 */
57
+ status: FriendStatus;
58
+ /** 能力列表 */
59
+ capabilities: ContactCapability[];
60
+ /** 信誉分数 (0-100) */
61
+ reputation: number;
62
+ /** 分组列表 */
63
+ groups: string[];
64
+ /** 标签列表 */
65
+ tags: string[];
66
+ /** 最后通信时间(Unix 时间戳毫秒) */
67
+ lastCommunicationTime: number;
68
+ /** 创建时间(Unix 时间戳毫秒) */
69
+ createdAt: number;
70
+ /** 更新时间(Unix 时间戳毫秒) */
71
+ updatedAt: number;
72
+ /** 备注信息 */
73
+ notes?: string;
74
+ /** 网络地址列表 */
75
+ multiaddrs?: string[];
76
+ /** 扩展元数据 */
77
+ metadata?: Record<string, unknown>;
78
+ }
79
+ /**
80
+ * 联系人创建参数
81
+ */
82
+ export interface ContactCreateParams {
83
+ /** Agent 显示名称 */
84
+ name: string;
85
+ /** Peer ID */
86
+ peerId: string;
87
+ /** Agent ID(可选) */
88
+ agentId?: string;
89
+ /** 好友状态(可选,默认 STRANGER) */
90
+ status?: FriendStatus;
91
+ /** 能力列表 */
92
+ capabilities?: ContactCapability[];
93
+ /** 信誉分数(默认 0) */
94
+ reputation?: number;
95
+ /** 分组列表 */
96
+ groups?: string[];
97
+ /** 标签列表 */
98
+ tags?: string[];
99
+ /** 备注信息 */
100
+ notes?: string;
101
+ /** 网络地址 */
102
+ multiaddrs?: string[];
103
+ /** 扩展元数据 */
104
+ metadata?: Record<string, unknown>;
105
+ }
106
+ /**
107
+ * 联系人更新参数
108
+ */
109
+ export interface ContactUpdateParams {
110
+ /** Agent 显示名称 */
111
+ name?: string;
112
+ /** 能力列表 */
113
+ capabilities?: ContactCapability[];
114
+ /** 信誉分数 */
115
+ reputation?: number;
116
+ /** 好友状态 */
117
+ status?: FriendStatus;
118
+ /** 分组列表(覆盖) */
119
+ groups?: string[];
120
+ /** 标签列表(覆盖) */
121
+ tags?: string[];
122
+ /** 备注信息 */
123
+ notes?: string;
124
+ /** 网络地址 */
125
+ multiaddrs?: string[];
126
+ /** 扩展元数据 */
127
+ metadata?: Record<string, unknown>;
128
+ /** 更新最后通信时间 */
129
+ updateLastCommunication?: boolean;
130
+ }
131
+ /**
132
+ * 联系人分组
133
+ */
134
+ export interface ContactGroup {
135
+ /** 分组 ID */
136
+ id: string;
137
+ /** 分组名称 */
138
+ name: string;
139
+ /** 分组描述 */
140
+ description?: string;
141
+ /** 分组颜色(十六进制) */
142
+ color?: string;
143
+ /** 创建时间 */
144
+ createdAt: number;
145
+ /** 更新时间 */
146
+ updatedAt: number;
147
+ }
148
+ /**
149
+ * 分组创建参数
150
+ */
151
+ export interface GroupCreateParams {
152
+ /** 分组名称 */
153
+ name: string;
154
+ /** 分组描述 */
155
+ description?: string;
156
+ /** 分组颜色 */
157
+ color?: string;
158
+ }
159
+ /**
160
+ * 握手请求
161
+ */
162
+ export interface HandshakeRequest {
163
+ /** 请求 ID */
164
+ requestId: string;
165
+ /** 发送方 Peer ID */
166
+ from: string;
167
+ /** 发送方名称 */
168
+ fromName: string;
169
+ /** 发送方能力列表 */
170
+ capabilities: ContactCapability[];
171
+ /** 时间戳 */
172
+ timestamp: number;
173
+ /** 附加消息 */
174
+ message?: string;
175
+ }
176
+ /**
177
+ * 握手响应
178
+ */
179
+ export interface HandshakeResponse {
180
+ /** 请求 ID */
181
+ requestId: string;
182
+ /** 响应方 Peer ID */
183
+ from: string;
184
+ /** 是否接受 */
185
+ accepted: boolean;
186
+ /** 响应方名称 */
187
+ fromName?: string;
188
+ /** 响应方能力列表 */
189
+ capabilities?: ContactCapability[];
190
+ /** 时间戳 */
191
+ timestamp: number;
192
+ /** 拒绝原因(如果拒绝) */
193
+ reason?: string;
194
+ }
195
+ /**
196
+ * 待处理的握手请求
197
+ */
198
+ export interface PendingHandshake {
199
+ /** 请求 ID */
200
+ requestId: string;
201
+ /** 发送方 Peer ID */
202
+ from: string;
203
+ /** 发送方名称 */
204
+ fromName: string;
205
+ /** 发送方能力列表 */
206
+ capabilities: ContactCapability[];
207
+ /** 收到时间 */
208
+ receivedAt: number;
209
+ /** 附加消息 */
210
+ message?: string;
211
+ }
212
+ /**
213
+ * 通讯录数据结构(用于持久化)
214
+ */
215
+ export interface ContactsData {
216
+ /** 版本号 */
217
+ version: number;
218
+ /** 联系人列表 */
219
+ contacts: Contact[];
220
+ /** 分组列表 */
221
+ groups: ContactGroup[];
222
+ /** 待处理的握手请求 */
223
+ pendingHandshakes: PendingHandshake[];
224
+ /** 黑名单(Peer ID 列表) */
225
+ blockedPeers: string[];
226
+ /** 最后更新时间 */
227
+ lastUpdated: number;
228
+ }
229
+ /**
230
+ * 通讯录导出数据
231
+ */
232
+ export interface ContactsExport extends ContactsData {
233
+ /** 导出时间 */
234
+ exportedAt: number;
235
+ /** 导出来源(节点 ID) */
236
+ exportedBy?: string;
237
+ }
238
+ /**
239
+ * 通讯录导入结果
240
+ */
241
+ export interface ContactsImportResult {
242
+ /** 是否成功 */
243
+ success: boolean;
244
+ /** 导入的联系人数量 */
245
+ importedContacts: number;
246
+ /** 导入的分组数量 */
247
+ importedGroups: number;
248
+ /** 跳过的联系人数量(已存在) */
249
+ skippedContacts: number;
250
+ /** 错误信息 */
251
+ errors: string[];
252
+ }
253
+ /**
254
+ * 联系人查询过滤器
255
+ */
256
+ export interface ContactFilter {
257
+ /** 按名称模糊搜索 */
258
+ name?: string;
259
+ /** 按好友状态过滤 */
260
+ status?: FriendStatus | FriendStatus[];
261
+ /** 按分组过滤 */
262
+ group?: string;
263
+ /** 按标签过滤 */
264
+ tags?: string[];
265
+ /** 最低信誉分数 */
266
+ minReputation?: number;
267
+ /** 最高信誉分数 */
268
+ maxReputation?: number;
269
+ /** 按能力过滤 */
270
+ capability?: string;
271
+ }
272
+ /**
273
+ * 联系人排序选项
274
+ */
275
+ export interface ContactSortOptions {
276
+ /** 排序字段 */
277
+ field: 'name' | 'reputation' | 'lastCommunicationTime' | 'createdAt';
278
+ /** 排序方向 */
279
+ order: 'asc' | 'desc';
280
+ }
281
+ /**
282
+ * 联系人事件类型
283
+ */
284
+ export type ContactEventType = 'contact:added' | 'contact:updated' | 'contact:removed' | 'group:created' | 'group:updated' | 'group:deleted' | 'handshake:request' | 'handshake:accepted' | 'handshake:rejected';
285
+ /**
286
+ * 联系人事件处理器
287
+ */
288
+ export type ContactEventHandler = (event: ContactEventType, data: unknown) => void;
289
+ //# sourceMappingURL=contact-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contact-types.d.ts","sourceRoot":"","sources":["../src/contact-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ /**
3
+ * F2A 联系人类型定义
4
+ *
5
+ * 定义通讯录相关的类型接口,支持:
6
+ * - 联系人信息存储
7
+ * - 分组/标签管理
8
+ * - 好友状态管理
9
+ *
10
+ * @module contact-types
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.FriendStatus = void 0;
14
+ // ============================================================================
15
+ // 好友状态枚举
16
+ // ============================================================================
17
+ /**
18
+ * 好友关系状态
19
+ *
20
+ * 状态流转:
21
+ * - stranger → pending (发送好友请求)
22
+ * - pending → friend (对方接受)
23
+ * - pending → stranger (对方拒绝或超时)
24
+ * - friend → blocked (拉黑)
25
+ * - blocked → stranger (解除拉黑)
26
+ */
27
+ var FriendStatus;
28
+ (function (FriendStatus) {
29
+ /** 陌生人:未建立任何关系 */
30
+ FriendStatus["STRANGER"] = "stranger";
31
+ /** 待处理:已发送/收到好友请求,等待响应 */
32
+ FriendStatus["PENDING"] = "pending";
33
+ /** 好友:双方互为好友,可以发送任务消息 */
34
+ FriendStatus["FRIEND"] = "friend";
35
+ /** 已拉黑:被拉黑,无法发送任何消息 */
36
+ FriendStatus["BLOCKED"] = "blocked";
37
+ })(FriendStatus || (exports.FriendStatus = FriendStatus = {}));
38
+ //# sourceMappingURL=contact-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contact-types.js","sourceRoot":"","sources":["../src/contact-types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,IAAY,YASX;AATD,WAAY,YAAY;IACtB,kBAAkB;IAClB,qCAAqB,CAAA;IACrB,0BAA0B;IAC1B,mCAAmB,CAAA;IACnB,yBAAyB;IACzB,iCAAiB,CAAA;IACjB,uBAAuB;IACvB,mCAAmB,CAAA;AACrB,CAAC,EATW,YAAY,4BAAZ,YAAY,QASvB"}
@@ -0,0 +1,174 @@
1
+ /**
2
+ * F2A 握手协议处理器
3
+ *
4
+ * 处理 Agent 之间的好友请求和握手流程
5
+ * - 发送好友请求
6
+ * - 接收和处理好友请求
7
+ * - 接受/拒绝好友请求
8
+ * - 管理好友状态
9
+ *
10
+ * @module handshake-protocol
11
+ */
12
+ import type { F2A } from '@f2a/network';
13
+ import { ContactManager } from './contact-manager.js';
14
+ import { ContactCapability } from './contact-types.js';
15
+ import type { ApiLogger } from './connector.js';
16
+ import { type HandshakeConfig } from './types.js';
17
+ /** 握手协议消息类型 */
18
+ export declare const HANDSHAKE_MESSAGE_TYPES: {
19
+ /** 好友请求 */
20
+ readonly FRIEND_REQUEST: "FRIEND_REQUEST";
21
+ /** 好友请求响应 */
22
+ readonly FRIEND_RESPONSE: "FRIEND_RESPONSE";
23
+ };
24
+ /**
25
+ * 好友请求消息
26
+ */
27
+ export interface FriendRequestMessage {
28
+ type: typeof HANDSHAKE_MESSAGE_TYPES.FRIEND_REQUEST;
29
+ requestId: string;
30
+ fromName: string;
31
+ capabilities: ContactCapability[];
32
+ timestamp: number;
33
+ message?: string;
34
+ }
35
+ /**
36
+ * 好友响应消息
37
+ */
38
+ export interface FriendResponseMessage {
39
+ type: typeof HANDSHAKE_MESSAGE_TYPES.FRIEND_RESPONSE;
40
+ requestId: string;
41
+ accepted: boolean;
42
+ fromName?: string;
43
+ capabilities?: ContactCapability[];
44
+ timestamp: number;
45
+ reason?: string;
46
+ }
47
+ /**
48
+ * 握手协议处理器
49
+ *
50
+ * 管理 Agent 之间的好友关系建立流程:
51
+ * 1. 发送好友请求
52
+ * 2. 接收并处理好友请求
53
+ * 3. 接受/拒绝好友请求
54
+ * 4. 维护好友状态
55
+ *
56
+ * 握手流程:
57
+ * ```
58
+ * Agent A Agent B
59
+ * | |
60
+ * |--- FRIEND_REQUEST ------------>|
61
+ * | | (添加到待处理列表)
62
+ * | | (通知用户)
63
+ * |<-- FRIEND_RESPONSE (accept) ---|
64
+ * | (双方互存通讯录) |
65
+ * | |
66
+ * ```
67
+ *
68
+ * @example
69
+ * ```typescript
70
+ * const protocol = new HandshakeProtocol(f2a, contactManager, logger);
71
+ *
72
+ * // 发送好友请求
73
+ * await protocol.sendFriendRequest(peerId, 'Hi, I want to be friends');
74
+ *
75
+ * // 处理收到的请求
76
+ * protocol.on('request', (request) => {
77
+ * // 显示给用户确认
78
+ * });
79
+ * ```
80
+ */
81
+ export declare class HandshakeProtocol {
82
+ private f2a;
83
+ private contactManager;
84
+ private logger?;
85
+ private eventHandlers;
86
+ /** P2-3 修复:使用配置项 */
87
+ private config;
88
+ /** 待响应的请求(我们发出的请求) */
89
+ private outgoingRequests;
90
+ /** P1-4 修复:shutdown 标志,阻止新请求 */
91
+ private _isShutdown;
92
+ /** P1 修复:PeerID 格式正则(libp2p 格式:12D3KooW...) */
93
+ private static readonly PEER_ID_REGEX;
94
+ constructor(f2a: F2A, contactManager: ContactManager, logger?: ApiLogger, config?: HandshakeConfig);
95
+ /**
96
+ * 设置消息处理器
97
+ * P0-1 修复:添加类型检查和错误处理
98
+ */
99
+ private setupMessageHandler;
100
+ /**
101
+ * 发送好友请求
102
+ * P0-2 修复:使用类型安全的接口
103
+ *
104
+ * @param toPeerId - 目标 Peer ID
105
+ * @param message - 附加消息
106
+ * @returns 请求 ID,如果发送失败返回 null
107
+ */
108
+ sendFriendRequest(toPeerId: string, message?: string): Promise<string | null>;
109
+ /**
110
+ * 设置请求超时
111
+ * P2-3 修复:使用配置项
112
+ */
113
+ private setupRequestTimeout;
114
+ /**
115
+ * 处理收到的消息
116
+ * P2-2 修复:JSON 解析失败时记录 warn 日志
117
+ */
118
+ private handleMessage;
119
+ /**
120
+ * 处理好友请求
121
+ * P1 修复:添加 PeerID 格式验证
122
+ */
123
+ private handleFriendRequest;
124
+ /**
125
+ * 处理好友响应
126
+ * P1 修复:添加 PeerID 格式验证
127
+ */
128
+ private handleFriendResponse;
129
+ /**
130
+ * 接受好友请求
131
+ */
132
+ acceptRequest(requestId: string): Promise<boolean>;
133
+ /**
134
+ * 拒绝好友请求
135
+ */
136
+ rejectRequest(requestId: string, reason?: string): Promise<boolean>;
137
+ /**
138
+ * 发送响应消息
139
+ * P0-2 修复:使用类型安全的接口
140
+ */
141
+ private sendResponse;
142
+ /**
143
+ * 获取自己的能力列表
144
+ * P0-2 修复:使用类型安全的接口
145
+ */
146
+ private getMyCapabilities;
147
+ /**
148
+ * 生成请求 ID
149
+ */
150
+ private generateRequestId;
151
+ /**
152
+ * 睡眠
153
+ */
154
+ private sleep;
155
+ /**
156
+ * 添加事件处理器
157
+ */
158
+ on(event: 'request' | 'response' | 'timeout', handler: (...args: unknown[]) => void): void;
159
+ /**
160
+ * 移除事件处理器
161
+ */
162
+ off(event: 'request' | 'response' | 'timeout', handler: (...args: unknown[]) => void): void;
163
+ /**
164
+ * 触发事件
165
+ */
166
+ private emit;
167
+ /**
168
+ * 清理资源
169
+ * P1-4 修复:添加 shutdown 标志,阻止新请求
170
+ */
171
+ shutdown(): void;
172
+ }
173
+ export default HandshakeProtocol;
174
+ //# sourceMappingURL=handshake-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handshake-protocol.d.ts","sourceRoot":"","sources":["../src/handshake-protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAEL,iBAAiB,EAIlB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAA4B,KAAK,eAAe,EAAiD,MAAM,YAAY,CAAC;AAM3H,eAAe;AACf,eAAO,MAAM,uBAAuB;IAClC,WAAW;;IAEX,aAAa;;CAEL,CAAC;AAMX;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,uBAAuB,CAAC,cAAc,CAAC;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,iBAAiB,EAAE,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,OAAO,uBAAuB,CAAC,eAAe,CAAC;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,aAAa,CAA6D;IAElF,oBAAoB;IACpB,OAAO,CAAC,MAAM,CAA4B;IAE1C,sBAAsB;IACtB,OAAO,CAAC,gBAAgB,CAKT;IAEf,gCAAgC;IAChC,OAAO,CAAC,WAAW,CAAkB;IAErC,+CAA+C;IAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAA+B;gBAGlE,GAAG,EAAE,GAAG,EACR,cAAc,EAAE,cAAc,EAC9B,MAAM,CAAC,EAAE,SAAS,EAClB,MAAM,CAAC,EAAE,eAAe;IAoC1B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA6B3B;;;;;;;OAOG;IACG,iBAAiB,CACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAuHzB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;;OAGG;YACW,aAAa;IAgC3B;;;OAGG;YACW,mBAAmB;IA2CjC;;;OAGG;YACW,oBAAoB;IAoDlC;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCxD;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAazE;;;OAGG;YACW,YAAY;IA4C1B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,OAAO,CAAC,KAAK;IAQb;;OAEG;IACH,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI;IAO1F;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI;IAI3F;;OAEG;IACH,OAAO,CAAC,IAAI;IAiBZ;;;OAGG;IACH,QAAQ,IAAI,IAAI;CAejB;AAGD,eAAe,iBAAiB,CAAC"}