@f2a/openclaw-f2a 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.
- package/README.md +510 -0
- package/dist/agent-manager.d.ts +78 -0
- package/dist/agent-manager.d.ts.map +1 -0
- package/dist/agent-manager.js +206 -0
- package/dist/agent-manager.js.map +1 -0
- package/dist/announcement-queue.d.ts +152 -0
- package/dist/announcement-queue.d.ts.map +1 -0
- package/dist/announcement-queue.js +307 -0
- package/dist/announcement-queue.js.map +1 -0
- package/dist/capability-detector.d.ts +21 -0
- package/dist/capability-detector.d.ts.map +1 -0
- package/dist/capability-detector.js +178 -0
- package/dist/capability-detector.js.map +1 -0
- package/dist/claim-handlers.d.ts +75 -0
- package/dist/claim-handlers.d.ts.map +1 -0
- package/dist/claim-handlers.js +368 -0
- package/dist/claim-handlers.js.map +1 -0
- package/dist/connector.d.ts +174 -0
- package/dist/connector.d.ts.map +1 -0
- package/dist/connector.js +1284 -0
- package/dist/connector.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +45 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +28 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +44 -0
- package/dist/logger.js.map +1 -0
- package/dist/network-client.d.ts +73 -0
- package/dist/network-client.d.ts.map +1 -0
- package/dist/network-client.js +202 -0
- package/dist/network-client.js.map +1 -0
- package/dist/node-manager.d.ts +79 -0
- package/dist/node-manager.d.ts.map +1 -0
- package/dist/node-manager.js +374 -0
- package/dist/node-manager.js.map +1 -0
- package/dist/plugin.d.ts +22 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +148 -0
- package/dist/plugin.js.map +1 -0
- package/dist/reputation.d.ts +156 -0
- package/dist/reputation.d.ts.map +1 -0
- package/dist/reputation.js +432 -0
- package/dist/reputation.js.map +1 -0
- package/dist/task-guard.d.ts +159 -0
- package/dist/task-guard.d.ts.map +1 -0
- package/dist/task-guard.js +763 -0
- package/dist/task-guard.js.map +1 -0
- package/dist/task-queue.d.ts +130 -0
- package/dist/task-queue.d.ts.map +1 -0
- package/dist/task-queue.js +592 -0
- package/dist/task-queue.js.map +1 -0
- package/dist/tool-handlers.d.ts +158 -0
- package/dist/tool-handlers.d.ts.map +1 -0
- package/dist/tool-handlers.js +727 -0
- package/dist/tool-handlers.js.map +1 -0
- package/dist/types.d.ts +417 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +29 -0
- package/dist/types.js.map +1 -0
- package/dist/webhook-pusher.d.ts +71 -0
- package/dist/webhook-pusher.d.ts.map +1 -0
- package/dist/webhook-pusher.js +175 -0
- package/dist/webhook-pusher.js.map +1 -0
- package/dist/webhook-server.d.ts +70 -0
- package/dist/webhook-server.d.ts.map +1 -0
- package/dist/webhook-server.js +191 -0
- package/dist/webhook-server.js.map +1 -0
- package/openclaw.plugin.json +107 -0
- package/package.json +53 -0
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* F2A OpenClaw Connector - Tool Handlers
|
|
3
|
+
* 工具处理器模块 - 处理 f2a_discover, f2a_delegate 等工具
|
|
4
|
+
*/
|
|
5
|
+
import type { SessionContext, ToolResult } from './types.js';
|
|
6
|
+
import type { F2AOpenClawAdapter } from './connector.js';
|
|
7
|
+
import type { RiskFlag } from '@f2a/network';
|
|
8
|
+
/**
|
|
9
|
+
* 工具处理器参数类型
|
|
10
|
+
*/
|
|
11
|
+
export interface ToolHandlerParams {
|
|
12
|
+
discover: {
|
|
13
|
+
capability?: string;
|
|
14
|
+
min_reputation?: number;
|
|
15
|
+
};
|
|
16
|
+
delegate: {
|
|
17
|
+
agent: string;
|
|
18
|
+
task: string;
|
|
19
|
+
context?: string;
|
|
20
|
+
timeout?: number;
|
|
21
|
+
};
|
|
22
|
+
broadcast: {
|
|
23
|
+
capability: string;
|
|
24
|
+
task: string;
|
|
25
|
+
min_responses?: number;
|
|
26
|
+
};
|
|
27
|
+
reputation: {
|
|
28
|
+
action: string;
|
|
29
|
+
peer_id?: string;
|
|
30
|
+
};
|
|
31
|
+
pollTasks: {
|
|
32
|
+
limit?: number;
|
|
33
|
+
status?: 'pending' | 'processing' | 'completed' | 'failed';
|
|
34
|
+
};
|
|
35
|
+
submitResult: {
|
|
36
|
+
task_id: string;
|
|
37
|
+
result: string;
|
|
38
|
+
status: 'success' | 'error';
|
|
39
|
+
};
|
|
40
|
+
estimateTask: {
|
|
41
|
+
task_type: string;
|
|
42
|
+
description: string;
|
|
43
|
+
required_capabilities?: string[];
|
|
44
|
+
};
|
|
45
|
+
reviewTask: {
|
|
46
|
+
task_id: string;
|
|
47
|
+
workload: number;
|
|
48
|
+
value: number;
|
|
49
|
+
risk_flags?: RiskFlag[];
|
|
50
|
+
comment?: string;
|
|
51
|
+
};
|
|
52
|
+
getReviews: {
|
|
53
|
+
task_id: string;
|
|
54
|
+
};
|
|
55
|
+
getCapabilities: {
|
|
56
|
+
peer_id?: string;
|
|
57
|
+
agent_name?: string;
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* 任务评估结果
|
|
62
|
+
*/
|
|
63
|
+
export interface TaskEstimation {
|
|
64
|
+
/** 工作量 (0-100) */
|
|
65
|
+
workload: number;
|
|
66
|
+
/** 复杂度 (1-10) */
|
|
67
|
+
complexity: number;
|
|
68
|
+
/** 预估时间(毫秒) */
|
|
69
|
+
estimated_time_ms: number;
|
|
70
|
+
/** 置信度 (0-1) */
|
|
71
|
+
confidence: number;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* 工具处理器类
|
|
75
|
+
* 包含所有核心工具的处理逻辑
|
|
76
|
+
*/
|
|
77
|
+
export declare class ToolHandlers {
|
|
78
|
+
private adapter;
|
|
79
|
+
constructor(adapter: F2AOpenClawAdapter);
|
|
80
|
+
/**
|
|
81
|
+
* 处理 f2a_discover 工具
|
|
82
|
+
* 发现 F2A 网络中的 Agents
|
|
83
|
+
*/
|
|
84
|
+
handleDiscover(params: ToolHandlerParams['discover'], context: SessionContext): Promise<ToolResult>;
|
|
85
|
+
/**
|
|
86
|
+
* 处理 f2a_delegate 工具
|
|
87
|
+
* 委托任务给特定 Agent
|
|
88
|
+
*/
|
|
89
|
+
handleDelegate(params: ToolHandlerParams['delegate'], context: SessionContext): Promise<ToolResult>;
|
|
90
|
+
/**
|
|
91
|
+
* 处理 f2a_broadcast 工具
|
|
92
|
+
* 广播任务给所有具备某能力的 Agents
|
|
93
|
+
*/
|
|
94
|
+
handleBroadcast(params: ToolHandlerParams['broadcast'], context: SessionContext): Promise<ToolResult>;
|
|
95
|
+
/**
|
|
96
|
+
* 处理 f2a_status 工具
|
|
97
|
+
* 查看网络状态
|
|
98
|
+
*/
|
|
99
|
+
handleStatus(params: {}, context: SessionContext): Promise<ToolResult>;
|
|
100
|
+
/**
|
|
101
|
+
* 处理 f2a_reputation 工具
|
|
102
|
+
* 查看或管理 Peer 信誉
|
|
103
|
+
*/
|
|
104
|
+
handleReputation(params: ToolHandlerParams['reputation'], context: SessionContext): Promise<ToolResult>;
|
|
105
|
+
/**
|
|
106
|
+
* 处理 f2a_poll_tasks 工具
|
|
107
|
+
* 查询任务队列
|
|
108
|
+
*/
|
|
109
|
+
handlePollTasks(params: ToolHandlerParams['pollTasks'], context: SessionContext): Promise<ToolResult>;
|
|
110
|
+
/**
|
|
111
|
+
* 处理 f2a_submit_result 工具
|
|
112
|
+
* 提交任务结果
|
|
113
|
+
*/
|
|
114
|
+
handleSubmitResult(params: ToolHandlerParams['submitResult'], context: SessionContext): Promise<ToolResult>;
|
|
115
|
+
/**
|
|
116
|
+
* 处理 f2a_task_stats 工具
|
|
117
|
+
* 查看任务队列统计
|
|
118
|
+
*/
|
|
119
|
+
handleTaskStats(params: {}, context: SessionContext): Promise<ToolResult>;
|
|
120
|
+
/**
|
|
121
|
+
* 解析 Agent 引用
|
|
122
|
+
*/
|
|
123
|
+
private resolveAgent;
|
|
124
|
+
/**
|
|
125
|
+
* 格式化广播结果
|
|
126
|
+
*/
|
|
127
|
+
private formatBroadcastResults;
|
|
128
|
+
/**
|
|
129
|
+
* 处理 f2a_estimate_task 工具
|
|
130
|
+
* 评估任务成本
|
|
131
|
+
*/
|
|
132
|
+
handleEstimateTask(params: ToolHandlerParams['estimateTask'], context: SessionContext): Promise<ToolResult>;
|
|
133
|
+
/**
|
|
134
|
+
* 处理 f2a_review_task 工具
|
|
135
|
+
* 作为评审者评审任务
|
|
136
|
+
*/
|
|
137
|
+
handleReviewTask(params: ToolHandlerParams['reviewTask'], context: SessionContext): Promise<ToolResult>;
|
|
138
|
+
/**
|
|
139
|
+
* 处理 f2a_get_reviews 工具
|
|
140
|
+
* 获取任务的评审结果
|
|
141
|
+
*/
|
|
142
|
+
handleGetReviews(params: ToolHandlerParams['getReviews'], context: SessionContext): Promise<ToolResult>;
|
|
143
|
+
/**
|
|
144
|
+
* 处理 f2a_get_capabilities 工具
|
|
145
|
+
* 获取指定 Agent 的能力列表
|
|
146
|
+
*/
|
|
147
|
+
handleGetCapabilities(params: ToolHandlerParams['getCapabilities'], context: SessionContext): Promise<ToolResult>;
|
|
148
|
+
/**
|
|
149
|
+
* 估算任务复杂度
|
|
150
|
+
* 基于任务类型、描述和所需能力进行估算
|
|
151
|
+
*/
|
|
152
|
+
private estimateTaskComplexity;
|
|
153
|
+
/**
|
|
154
|
+
* 格式化持续时间
|
|
155
|
+
*/
|
|
156
|
+
private formatDuration;
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=tool-handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-handlers.d.ts","sourceRoot":"","sources":["../src/tool-handlers.ts"],"names":[],"mappings":"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"}
|