@phronesis-io/openclaw-eigenflux 0.0.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.
- package/LICENSE +21 -0
- package/README.md +169 -0
- package/dist/agent-prompt-templates.d.ts +16 -0
- package/dist/agent-prompt-templates.d.ts.map +1 -0
- package/dist/agent-prompt-templates.js +67 -0
- package/dist/agent-prompt-templates.js.map +1 -0
- package/dist/config.d.ts +161 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +324 -0
- package/dist/config.js.map +1 -0
- package/dist/credentials-loader.d.ts +28 -0
- package/dist/credentials-loader.d.ts.map +1 -0
- package/dist/credentials-loader.js +121 -0
- package/dist/credentials-loader.js.map +1 -0
- package/dist/gateway-rpc-client.d.ts +26 -0
- package/dist/gateway-rpc-client.d.ts.map +1 -0
- package/dist/gateway-rpc-client.js +288 -0
- package/dist/gateway-rpc-client.js.map +1 -0
- package/dist/index.d.ts +94 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +544 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +12 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +25 -0
- package/dist/logger.js.map +1 -0
- package/dist/notification-route-resolver.d.ts +21 -0
- package/dist/notification-route-resolver.d.ts.map +1 -0
- package/dist/notification-route-resolver.js +318 -0
- package/dist/notification-route-resolver.js.map +1 -0
- package/dist/notifier.d.ts +63 -0
- package/dist/notifier.d.ts.map +1 -0
- package/dist/notifier.js +366 -0
- package/dist/notifier.js.map +1 -0
- package/dist/pm-polling-client.d.ts +51 -0
- package/dist/pm-polling-client.d.ts.map +1 -0
- package/dist/pm-polling-client.js +175 -0
- package/dist/pm-polling-client.js.map +1 -0
- package/dist/polling-client.d.ts +73 -0
- package/dist/polling-client.d.ts.map +1 -0
- package/dist/polling-client.js +176 -0
- package/dist/polling-client.js.map +1 -0
- package/dist/session-route-memory.d.ts +13 -0
- package/dist/session-route-memory.d.ts.map +1 -0
- package/dist/session-route-memory.js +114 -0
- package/dist/session-route-memory.js.map +1 -0
- package/index.ts +1 -0
- package/openclaw.plugin.json +90 -0
- package/package.json +50 -0
- package/src/agent-prompt-templates.ts +91 -0
- package/src/config.test.ts +188 -0
- package/src/config.ts +410 -0
- package/src/credentials-loader.test.ts +78 -0
- package/src/credentials-loader.ts +121 -0
- package/src/gateway-rpc-client.test.ts +190 -0
- package/src/gateway-rpc-client.ts +373 -0
- package/src/index.integration.test.ts +437 -0
- package/src/index.test.ts +454 -0
- package/src/index.ts +758 -0
- package/src/logger.ts +27 -0
- package/src/notification-route-resolver.test.ts +136 -0
- package/src/notification-route-resolver.ts +430 -0
- package/src/notifier.test.ts +374 -0
- package/src/notifier.ts +558 -0
- package/src/openclaw-plugin-sdk.d.ts +121 -0
- package/src/pm-polling-client.test.ts +390 -0
- package/src/pm-polling-client.ts +257 -0
- package/src/polling-client.test.ts +279 -0
- package/src/polling-client.ts +283 -0
- package/src/session-route-memory.ts +106 -0
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.resolveNotificationRoute = resolveNotificationRoute;
|
|
37
|
+
const fs = __importStar(require("fs"));
|
|
38
|
+
const os = __importStar(require("os"));
|
|
39
|
+
const path = __importStar(require("path"));
|
|
40
|
+
const session_route_memory_1 = require("./session-route-memory");
|
|
41
|
+
const INTERNAL_CHANNELS = new Set(['webchat']);
|
|
42
|
+
function getDefaultOpenClawStateDir() {
|
|
43
|
+
return path.join(os.homedir(), '.openclaw');
|
|
44
|
+
}
|
|
45
|
+
function readNonEmptyString(value) {
|
|
46
|
+
if (typeof value !== 'string') {
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
const trimmed = value.trim();
|
|
50
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
51
|
+
}
|
|
52
|
+
function normalizeChannel(value) {
|
|
53
|
+
return readNonEmptyString(value)?.toLowerCase();
|
|
54
|
+
}
|
|
55
|
+
function normalizeUpdatedAt(value) {
|
|
56
|
+
if (typeof value === 'number' && Number.isFinite(value)) {
|
|
57
|
+
return value;
|
|
58
|
+
}
|
|
59
|
+
return 0;
|
|
60
|
+
}
|
|
61
|
+
function createRouteOverrides(overrides) {
|
|
62
|
+
return {
|
|
63
|
+
sessionKey: overrides?.sessionKey === true,
|
|
64
|
+
agentId: overrides?.agentId === true,
|
|
65
|
+
replyChannel: overrides?.replyChannel === true,
|
|
66
|
+
replyTo: overrides?.replyTo === true,
|
|
67
|
+
replyAccountId: overrides?.replyAccountId === true,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function isAnyRouteOverrideEnabled(overrides) {
|
|
71
|
+
return Object.values(overrides).some(Boolean);
|
|
72
|
+
}
|
|
73
|
+
function isInternalSessionKey(sessionKey) {
|
|
74
|
+
const trimmed = readNonEmptyString(sessionKey);
|
|
75
|
+
if (!trimmed) {
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
if (trimmed === 'main') {
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
const parts = trimmed.split(':').filter((part) => part.length > 0);
|
|
82
|
+
return parts[0]?.toLowerCase() === 'agent' && parts[2]?.toLowerCase() === 'main';
|
|
83
|
+
}
|
|
84
|
+
function isExternalChannel(channel) {
|
|
85
|
+
return Boolean(channel && !INTERNAL_CHANNELS.has(channel));
|
|
86
|
+
}
|
|
87
|
+
function routeTargetMatches(actual, expected) {
|
|
88
|
+
if (!expected) {
|
|
89
|
+
return true;
|
|
90
|
+
}
|
|
91
|
+
if (!actual) {
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
return actual === expected || actual.endsWith(`:${expected}`) || expected.endsWith(`:${actual}`);
|
|
95
|
+
}
|
|
96
|
+
function routeMatchesPreferred(route, preferred) {
|
|
97
|
+
if (!preferred) {
|
|
98
|
+
return true;
|
|
99
|
+
}
|
|
100
|
+
if (preferred.channel && route.replyChannel !== preferred.channel) {
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
if (!routeTargetMatches(route.replyTo, preferred.to)) {
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
if (preferred.accountId && route.replyAccountId !== preferred.accountId) {
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
return true;
|
|
110
|
+
}
|
|
111
|
+
function deriveAgentIdFromSessionKey(sessionKey) {
|
|
112
|
+
const trimmed = readNonEmptyString(sessionKey);
|
|
113
|
+
if (!trimmed) {
|
|
114
|
+
return undefined;
|
|
115
|
+
}
|
|
116
|
+
const parts = trimmed.split(':').filter((part) => part.length > 0);
|
|
117
|
+
if (parts[0]?.toLowerCase() !== 'agent') {
|
|
118
|
+
return undefined;
|
|
119
|
+
}
|
|
120
|
+
return readNonEmptyString(parts[1]);
|
|
121
|
+
}
|
|
122
|
+
function extractExternalRoute(sessionKey, entry) {
|
|
123
|
+
if (!entry) {
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
const replyChannel = normalizeChannel(entry.deliveryContext?.channel) ?? normalizeChannel(entry.origin?.provider);
|
|
127
|
+
const replyTo = readNonEmptyString(entry.deliveryContext?.to) ??
|
|
128
|
+
readNonEmptyString(entry.lastTo) ??
|
|
129
|
+
readNonEmptyString(entry.origin?.to);
|
|
130
|
+
const replyAccountId = readNonEmptyString(entry.deliveryContext?.accountId) ??
|
|
131
|
+
readNonEmptyString(entry.lastAccountId) ??
|
|
132
|
+
readNonEmptyString(entry.origin?.accountId);
|
|
133
|
+
if (!isExternalChannel(replyChannel) || !replyTo) {
|
|
134
|
+
return undefined;
|
|
135
|
+
}
|
|
136
|
+
return {
|
|
137
|
+
sessionKey,
|
|
138
|
+
agentId: deriveAgentIdFromSessionKey(sessionKey) ?? 'main',
|
|
139
|
+
replyChannel,
|
|
140
|
+
replyTo,
|
|
141
|
+
replyAccountId,
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
function tryDeriveAgentIdFromStorePath(sessionStorePath) {
|
|
145
|
+
const normalized = path.normalize(sessionStorePath);
|
|
146
|
+
const parts = normalized.split(path.sep).filter(Boolean);
|
|
147
|
+
const agentsIndex = parts.lastIndexOf('agents');
|
|
148
|
+
if (agentsIndex === -1) {
|
|
149
|
+
return undefined;
|
|
150
|
+
}
|
|
151
|
+
return readNonEmptyString(parts[agentsIndex + 1]);
|
|
152
|
+
}
|
|
153
|
+
function listSessionStorePaths(explicitPath, baseAgentId) {
|
|
154
|
+
const candidates = [];
|
|
155
|
+
const seen = new Set();
|
|
156
|
+
const addPath = (candidate) => {
|
|
157
|
+
const trimmed = readNonEmptyString(candidate);
|
|
158
|
+
if (!trimmed) {
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
const normalized = path.normalize(trimmed);
|
|
162
|
+
if (seen.has(normalized)) {
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
seen.add(normalized);
|
|
166
|
+
candidates.push(normalized);
|
|
167
|
+
};
|
|
168
|
+
addPath(explicitPath);
|
|
169
|
+
if (candidates.length > 0) {
|
|
170
|
+
return candidates;
|
|
171
|
+
}
|
|
172
|
+
const defaultOpenClawStateDir = getDefaultOpenClawStateDir();
|
|
173
|
+
addPath(path.join(defaultOpenClawStateDir, 'agents', baseAgentId, 'sessions', 'sessions.json'));
|
|
174
|
+
const agentsRoot = path.join(defaultOpenClawStateDir, 'agents');
|
|
175
|
+
try {
|
|
176
|
+
if (fs.existsSync(agentsRoot)) {
|
|
177
|
+
for (const entry of fs.readdirSync(agentsRoot, { withFileTypes: true })) {
|
|
178
|
+
if (!entry.isDirectory()) {
|
|
179
|
+
continue;
|
|
180
|
+
}
|
|
181
|
+
addPath(path.join(agentsRoot, entry.name, 'sessions', 'sessions.json'));
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
// Ignore directory scan failures; we will still try explicit/default paths.
|
|
187
|
+
}
|
|
188
|
+
return candidates;
|
|
189
|
+
}
|
|
190
|
+
function readSessionStore(sessionStorePath, logger) {
|
|
191
|
+
try {
|
|
192
|
+
if (!fs.existsSync(sessionStorePath)) {
|
|
193
|
+
return undefined;
|
|
194
|
+
}
|
|
195
|
+
const raw = fs.readFileSync(sessionStorePath, 'utf-8');
|
|
196
|
+
const parsed = JSON.parse(raw);
|
|
197
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
198
|
+
return undefined;
|
|
199
|
+
}
|
|
200
|
+
return parsed;
|
|
201
|
+
}
|
|
202
|
+
catch (error) {
|
|
203
|
+
logger.debug(`Failed to read session store ${sessionStorePath}: ${error instanceof Error ? error.message : String(error)}`);
|
|
204
|
+
return undefined;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
function readSessionStores(sessionStorePath, baseAgentId, logger) {
|
|
208
|
+
const snapshots = [];
|
|
209
|
+
for (const candidate of listSessionStorePaths(sessionStorePath, baseAgentId)) {
|
|
210
|
+
const store = readSessionStore(candidate, logger);
|
|
211
|
+
if (store) {
|
|
212
|
+
snapshots.push({ path: candidate, store });
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return snapshots;
|
|
216
|
+
}
|
|
217
|
+
function buildPreferredRoute(route) {
|
|
218
|
+
if (!route.replyChannel && !route.replyTo && !route.replyAccountId) {
|
|
219
|
+
return undefined;
|
|
220
|
+
}
|
|
221
|
+
return {
|
|
222
|
+
channel: route.replyChannel,
|
|
223
|
+
to: route.replyTo,
|
|
224
|
+
accountId: route.replyAccountId,
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
function mergeRoute(base, resolved, overrides, allowSessionOverride) {
|
|
228
|
+
const nextSessionKey = allowSessionOverride && !overrides.sessionKey ? resolved.sessionKey : base.sessionKey;
|
|
229
|
+
return {
|
|
230
|
+
sessionKey: nextSessionKey,
|
|
231
|
+
agentId: overrides.agentId === true
|
|
232
|
+
? base.agentId
|
|
233
|
+
: resolved.agentId ?? deriveAgentIdFromSessionKey(nextSessionKey) ?? base.agentId,
|
|
234
|
+
replyChannel: overrides.replyChannel === true ? base.replyChannel : resolved.replyChannel ?? base.replyChannel,
|
|
235
|
+
replyTo: overrides.replyTo === true ? base.replyTo : resolved.replyTo ?? base.replyTo,
|
|
236
|
+
replyAccountId: overrides.replyAccountId === true
|
|
237
|
+
? base.replyAccountId
|
|
238
|
+
: resolved.replyAccountId ?? base.replyAccountId,
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
function selectExactRoute(snapshots, sessionKey) {
|
|
242
|
+
let best;
|
|
243
|
+
for (const snapshot of snapshots) {
|
|
244
|
+
const entry = snapshot.store[sessionKey];
|
|
245
|
+
const route = extractExternalRoute(sessionKey, entry);
|
|
246
|
+
if (!route) {
|
|
247
|
+
continue;
|
|
248
|
+
}
|
|
249
|
+
const updatedAt = normalizeUpdatedAt(entry?.updatedAt);
|
|
250
|
+
if (!best || updatedAt > best.updatedAt) {
|
|
251
|
+
best = { route, updatedAt };
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
return best;
|
|
255
|
+
}
|
|
256
|
+
function selectLatestExternalRoute(snapshots, preferred, preferredAgentId) {
|
|
257
|
+
let best;
|
|
258
|
+
for (const snapshot of snapshots) {
|
|
259
|
+
const pathAgentId = tryDeriveAgentIdFromStorePath(snapshot.path);
|
|
260
|
+
for (const [sessionKey, entry] of Object.entries(snapshot.store)) {
|
|
261
|
+
if (sessionKey.includes(':subagent:')) {
|
|
262
|
+
continue;
|
|
263
|
+
}
|
|
264
|
+
const route = extractExternalRoute(sessionKey, entry);
|
|
265
|
+
if (!route || !routeMatchesPreferred(route, preferred)) {
|
|
266
|
+
continue;
|
|
267
|
+
}
|
|
268
|
+
if (preferredAgentId && route.agentId !== preferredAgentId && pathAgentId !== preferredAgentId) {
|
|
269
|
+
continue;
|
|
270
|
+
}
|
|
271
|
+
const updatedAt = normalizeUpdatedAt(entry.updatedAt);
|
|
272
|
+
if (!best || updatedAt > best.updatedAt) {
|
|
273
|
+
best = { route, updatedAt };
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
return best;
|
|
278
|
+
}
|
|
279
|
+
function resolveNotificationRoute(config, logger) {
|
|
280
|
+
const overrides = createRouteOverrides(config.routeOverrides);
|
|
281
|
+
let resolved = {
|
|
282
|
+
sessionKey: readNonEmptyString(config.sessionKey) ?? 'main',
|
|
283
|
+
agentId: readNonEmptyString(config.agentId) ??
|
|
284
|
+
deriveAgentIdFromSessionKey(config.sessionKey) ??
|
|
285
|
+
'main',
|
|
286
|
+
replyChannel: normalizeChannel(config.replyChannel),
|
|
287
|
+
replyTo: readNonEmptyString(config.replyTo),
|
|
288
|
+
replyAccountId: readNonEmptyString(config.replyAccountId),
|
|
289
|
+
};
|
|
290
|
+
const snapshots = readSessionStores(config.sessionStorePath, resolved.agentId, logger);
|
|
291
|
+
const exactRoute = selectExactRoute(snapshots, resolved.sessionKey);
|
|
292
|
+
if (exactRoute) {
|
|
293
|
+
resolved = mergeRoute(resolved, exactRoute.route, overrides, false);
|
|
294
|
+
}
|
|
295
|
+
if (!isAnyRouteOverrideEnabled(overrides)) {
|
|
296
|
+
const rememberedRoute = (0, session_route_memory_1.readStoredNotificationRoute)(config.workdir, logger);
|
|
297
|
+
if (rememberedRoute) {
|
|
298
|
+
resolved = mergeRoute(resolved, rememberedRoute, overrides, true);
|
|
299
|
+
const rememberedExact = selectExactRoute(snapshots, resolved.sessionKey);
|
|
300
|
+
if (rememberedExact) {
|
|
301
|
+
resolved = mergeRoute(resolved, rememberedExact.route, overrides, false);
|
|
302
|
+
}
|
|
303
|
+
logger.debug(`Resolved notification route via remembered session: session_key=${resolved.sessionKey}, channel=${resolved.replyChannel ?? 'unknown'}, to=${resolved.replyTo ?? 'unknown'}`);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
if (!isInternalSessionKey(resolved.sessionKey)) {
|
|
307
|
+
return resolved;
|
|
308
|
+
}
|
|
309
|
+
const preferred = buildPreferredRoute(resolved);
|
|
310
|
+
const latestRoute = selectLatestExternalRoute(snapshots, preferred, overrides.agentId || overrides.sessionKey ? resolved.agentId : undefined);
|
|
311
|
+
if (!latestRoute) {
|
|
312
|
+
return resolved;
|
|
313
|
+
}
|
|
314
|
+
resolved = mergeRoute(resolved, latestRoute.route, overrides, true);
|
|
315
|
+
logger.debug(`Resolved notification route via session store: session_key=${resolved.sessionKey}, channel=${resolved.replyChannel ?? 'unknown'}, to=${resolved.replyTo ?? 'unknown'}`);
|
|
316
|
+
return resolved;
|
|
317
|
+
}
|
|
318
|
+
//# sourceMappingURL=notification-route-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification-route-resolver.js","sourceRoot":"","sources":["../src/notification-route-resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoXA,4DAyDC;AA7aD,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAG7B,iEAAqE;AAErE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAE/C,SAAS,0BAA0B;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;AAC9C,CAAC;AAyDD,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,kBAAkB,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,oBAAoB,CAC3B,SAAoD;IAEpD,OAAO;QACL,UAAU,EAAE,SAAS,EAAE,UAAU,KAAK,IAAI;QAC1C,OAAO,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI;QACpC,YAAY,EAAE,SAAS,EAAE,YAAY,KAAK,IAAI;QAC9C,OAAO,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI;QACpC,cAAc,EAAE,SAAS,EAAE,cAAc,KAAK,IAAI;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,SAAqC;IACtE,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAkB;IAC9C,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC;AACnF,CAAC;AAED,SAAS,iBAAiB,CAAC,OAA2B;IACpD,OAAO,OAAO,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA0B,EAAE,QAA4B;IAClF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAgC,EAChC,SAAqC;IAErC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,SAAS,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,SAAS,CAAC,SAAS,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,SAAS,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,2BAA2B,CAAC,UAA8B;IACjE,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,oBAAoB,CAC3B,UAAkB,EAClB,KAAoC;IAEpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,YAAY,GAChB,gBAAgB,CAAC,KAAK,CAAC,eAAe,EAAE,OAAO,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC/F,MAAM,OAAO,GACX,kBAAkB,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC;QAC7C,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC;QAChC,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvC,MAAM,cAAc,GAClB,kBAAkB,CAAC,KAAK,CAAC,eAAe,EAAE,SAAS,CAAC;QACpD,kBAAkB,CAAC,KAAK,CAAC,aAAa,CAAC;QACvC,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAE9C,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACjD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,UAAU;QACV,OAAO,EAAE,2BAA2B,CAAC,UAAU,CAAC,IAAI,MAAM;QAC1D,YAAY;QACZ,OAAO;QACP,cAAc;KACf,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CAAC,gBAAwB;IAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,kBAAkB,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,qBAAqB,CAAC,YAAgC,EAAE,WAAmB;IAClF,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,MAAM,OAAO,GAAG,CAAC,SAA6B,EAAE,EAAE;QAChD,MAAM,OAAO,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACrB,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAO,CAAC,YAAY,CAAC,CAAC;IACtB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,uBAAuB,GAAG,0BAA0B,EAAE,CAAC;IAC7D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;IAEhG,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBACxE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBACzB,SAAS;gBACX,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,4EAA4E;IAC9E,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,gBAAgB,CACvB,gBAAwB,EACxB,MAAc;IAEd,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACrC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,MAA2C,CAAC;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CACV,gCAAgC,gBAAgB,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9G,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,gBAAoC,EACpC,WAAmB,EACnB,MAAc;IAEd,MAAM,SAAS,GAA2B,EAAE,CAAC;IAC7C,KAAK,MAAM,SAAS,IAAI,qBAAqB,CAAC,gBAAgB,EAAE,WAAW,CAAC,EAAE,CAAC;QAC7E,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAClD,IAAI,KAAK,EAAE,CAAC;YACV,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAgC;IAC3D,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;QACnE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,YAAY;QAC3B,EAAE,EAAE,KAAK,CAAC,OAAO;QACjB,SAAS,EAAE,KAAK,CAAC,cAAc;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,IAA+B,EAC/B,QAAmC,EACnC,SAAqC,EACrC,oBAA6B;IAE7B,MAAM,cAAc,GAClB,oBAAoB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;IAExF,OAAO;QACL,UAAU,EAAE,cAAc;QAC1B,OAAO,EACL,SAAS,CAAC,OAAO,KAAK,IAAI;YACxB,CAAC,CAAC,IAAI,CAAC,OAAO;YACd,CAAC,CAAC,QAAQ,CAAC,OAAO,IAAI,2BAA2B,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,OAAO;QACrF,YAAY,EACV,SAAS,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY;QAClG,OAAO,EAAE,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;QACrF,cAAc,EACZ,SAAS,CAAC,cAAc,KAAK,IAAI;YAC/B,CAAC,CAAC,IAAI,CAAC,cAAc;YACrB,CAAC,CAAC,QAAQ,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc;KACrD,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,SAAiC,EACjC,UAAkB;IAElB,IAAI,IAAgC,CAAC;IAErC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YACxC,IAAI,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,yBAAyB,CAChC,SAAiC,EACjC,SAAqC,EACrC,gBAAyB;IAEzB,IAAI,IAAgC,CAAC;IAErC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjE,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACjE,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACtC,SAAS;YACX,CAAC;YAED,MAAM,KAAK,GAAG,oBAAoB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,KAAK,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;gBACvD,SAAS;YACX,CAAC;YAED,IAAI,gBAAgB,IAAI,KAAK,CAAC,OAAO,KAAK,gBAAgB,IAAI,WAAW,KAAK,gBAAgB,EAAE,CAAC;gBAC/F,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACtD,IAAI,CAAC,IAAI,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;gBACxC,IAAI,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,wBAAwB,CACtC,MAA+B,EAC/B,MAAc;IAEd,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAE9D,IAAI,QAAQ,GAA8B;QACxC,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM;QAC3D,OAAO,EACL,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC;YAClC,2BAA2B,CAAC,MAAM,CAAC,UAAU,CAAC;YAC9C,MAAM;QACR,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC;QACnD,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC;QAC3C,cAAc,EAAE,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC;KAC1D,CAAC;IAEF,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEvF,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IACpE,IAAI,UAAU,EAAE,CAAC;QACf,QAAQ,GAAG,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,MAAM,eAAe,GAAG,IAAA,kDAA2B,EAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5E,IAAI,eAAe,EAAE,CAAC;YACpB,QAAQ,GAAG,UAAU,CAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YAClE,MAAM,eAAe,GAAG,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;YACzE,IAAI,eAAe,EAAE,CAAC;gBACpB,QAAQ,GAAG,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,CAAC,KAAK,CACV,mEAAmE,QAAQ,CAAC,UAAU,aAAa,QAAQ,CAAC,YAAY,IAAI,SAAS,QAAQ,QAAQ,CAAC,OAAO,IAAI,SAAS,EAAE,CAC7K,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,yBAAyB,CAC3C,SAAS,EACT,SAAS,EACT,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CACzE,CAAC;IACF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,QAAQ,GAAG,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,KAAK,CACV,8DAA8D,QAAQ,CAAC,UAAU,aAAa,QAAQ,CAAC,YAAY,IAAI,SAAS,QAAQ,QAAQ,CAAC,OAAO,IAAI,SAAS,EAAE,CACxK,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { OpenClawPluginApi } from 'openclaw/plugin-sdk';
|
|
2
|
+
import { type NotificationRouteOverrides } from './config';
|
|
3
|
+
import { Logger } from './logger';
|
|
4
|
+
import { type ResolvedNotificationRoute } from './notification-route-resolver';
|
|
5
|
+
export type EigenFluxNotifierConfig = {
|
|
6
|
+
gatewayUrl: string;
|
|
7
|
+
gatewayToken?: string;
|
|
8
|
+
workdir?: string;
|
|
9
|
+
sessionKey: string;
|
|
10
|
+
agentId: string;
|
|
11
|
+
replyChannel?: string;
|
|
12
|
+
replyTo?: string;
|
|
13
|
+
replyAccountId?: string;
|
|
14
|
+
openclawCliBin: string;
|
|
15
|
+
sessionStorePath?: string;
|
|
16
|
+
routeOverrides?: NotificationRouteOverrides;
|
|
17
|
+
};
|
|
18
|
+
type GatewayRpcClientLike = {
|
|
19
|
+
sendAgentMessage(message: string): Promise<{
|
|
20
|
+
sessionKey: string;
|
|
21
|
+
runId: string;
|
|
22
|
+
}>;
|
|
23
|
+
};
|
|
24
|
+
type CreateGatewayRpcClient = (config: EigenFluxNotifierConfig & ResolvedNotificationRoute, logger: Logger) => GatewayRpcClientLike;
|
|
25
|
+
type SpawnRunner = (argv: string[], timeoutMs: number) => Promise<NotifyAttemptResult>;
|
|
26
|
+
type NotifyAttemptResult = {
|
|
27
|
+
ok: true;
|
|
28
|
+
mode: string;
|
|
29
|
+
sessionKey?: string;
|
|
30
|
+
runId?: string;
|
|
31
|
+
detail?: string;
|
|
32
|
+
} | {
|
|
33
|
+
ok: false;
|
|
34
|
+
mode: string;
|
|
35
|
+
error: string;
|
|
36
|
+
};
|
|
37
|
+
export declare class EigenFluxNotifier {
|
|
38
|
+
private readonly api;
|
|
39
|
+
private readonly logger;
|
|
40
|
+
private readonly config;
|
|
41
|
+
private readonly createGatewayRpcClient;
|
|
42
|
+
private readonly spawnRunner;
|
|
43
|
+
constructor(api: OpenClawPluginApi, logger: Logger, config: EigenFluxNotifierConfig, createGatewayRpcClient?: CreateGatewayRpcClient, spawnRunner?: SpawnRunner);
|
|
44
|
+
deliver(message: string): Promise<boolean>;
|
|
45
|
+
deliverWithSubagent(message: string): Promise<boolean>;
|
|
46
|
+
private tryNotifyViaRuntimeSubagent;
|
|
47
|
+
private tryNotifyViaGatewayRpcAgent;
|
|
48
|
+
private tryNotifyViaRuntimeCommandAgent;
|
|
49
|
+
private tryNotifyViaSpawnAgent;
|
|
50
|
+
private tryNotifyViaRuntimeHeartbeat;
|
|
51
|
+
private tryNotifyViaRuntimeCommandHeartbeat;
|
|
52
|
+
private tryNotifyViaSpawnHeartbeat;
|
|
53
|
+
private runRuntimeCommand;
|
|
54
|
+
private runSpawnCommand;
|
|
55
|
+
private buildAgentCliArgs;
|
|
56
|
+
private buildHeartbeatCliArgs;
|
|
57
|
+
private resolveHeartbeatDeliveryContext;
|
|
58
|
+
private resolveRoute;
|
|
59
|
+
private rememberRoute;
|
|
60
|
+
private logDispatch;
|
|
61
|
+
}
|
|
62
|
+
export {};
|
|
63
|
+
//# sourceMappingURL=notifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notifier.d.ts","sourceRoot":"","sources":["../src/notifier.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAGL,KAAK,yBAAyB,EAC/B,MAAM,+BAA+B,CAAC;AAMvC,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,0BAA0B,CAAC;CAC7C,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnF,CAAC;AAEF,KAAK,sBAAsB,GAAG,CAC5B,MAAM,EAAE,uBAAuB,GAAG,yBAAyB,EAC3D,MAAM,EAAE,MAAM,KACX,oBAAoB,CAAC;AAO1B,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAEvF,KAAK,mBAAmB,GACpB;IACE,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GACD;IACE,EAAE,EAAE,KAAK,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEN,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAyB;IAChE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;gBAGxC,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,uBAAuB,EAC/B,sBAAsB,GAAE,sBAAsD,EAC9E,WAAW,GAAE,WAA6B;IAStC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkC1C,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAY9C,2BAA2B;YA+C3B,2BAA2B;YA4B3B,+BAA+B;YAW/B,sBAAsB;YAOtB,4BAA4B;YAqE5B,mCAAmC;YAQnC,0BAA0B;YAQ1B,iBAAiB;YA6CjB,eAAe;IA2B7B,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,+BAA+B;IAoBvC,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,WAAW;CAWpB"}
|