@dainprotocol/service-sdk 1.0.78 → 1.0.79
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/dist/__tests__/api-sdk.test.js +30 -90
- package/dist/__tests__/api-sdk.test.js.map +1 -1
- package/dist/__tests__/humanActions.test.d.ts +1 -0
- package/dist/__tests__/humanActions.test.js +221 -0
- package/dist/__tests__/humanActions.test.js.map +1 -0
- package/dist/__tests__/integration.test.js +295 -2
- package/dist/__tests__/integration.test.js.map +1 -1
- package/dist/__tests__/mealMeSchemas.test.d.ts +2 -2
- package/dist/__tests__/oauth.test.js +118 -0
- package/dist/__tests__/oauth.test.js.map +1 -1
- package/dist/client/api-sdk.js +7 -9
- package/dist/client/api-sdk.js.map +1 -1
- package/dist/client/client.d.ts +17 -1
- package/dist/client/client.js +20 -0
- package/dist/client/client.js.map +1 -1
- package/dist/client/types.d.ts +93 -0
- package/dist/client/types.js +26 -1
- package/dist/client/types.js.map +1 -1
- package/dist/service/oauth2.d.ts +4 -1
- package/dist/service/oauth2.js +57 -20
- package/dist/service/oauth2.js.map +1 -1
- package/dist/service/processes.d.ts +79 -3
- package/dist/service/processes.js +238 -1
- package/dist/service/processes.js.map +1 -1
- package/dist/service/server.js +85 -1
- package/dist/service/server.js.map +1 -1
- package/dist/service/service.js +5 -1
- package/dist/service/service.js.map +1 -1
- package/dist/service/types.d.ts +18 -3
- package/package.json +1 -1
|
@@ -32,7 +32,38 @@ export type ProcessFailedPayload = WebhookPayloadBase & {
|
|
|
32
32
|
type: "process_failed";
|
|
33
33
|
error: string;
|
|
34
34
|
};
|
|
35
|
-
export
|
|
35
|
+
export interface HumanActionStep {
|
|
36
|
+
id: string;
|
|
37
|
+
processId: string;
|
|
38
|
+
message: string;
|
|
39
|
+
ui?: any;
|
|
40
|
+
actions: {
|
|
41
|
+
id: string;
|
|
42
|
+
title: string;
|
|
43
|
+
description?: string;
|
|
44
|
+
requiresResponse?: boolean;
|
|
45
|
+
callbackUrl?: string;
|
|
46
|
+
}[];
|
|
47
|
+
status: 'pending' | 'completed' | 'failed' | 'timeout';
|
|
48
|
+
response?: {
|
|
49
|
+
actionId: string;
|
|
50
|
+
responseText?: string;
|
|
51
|
+
timestamp: Date;
|
|
52
|
+
data?: any;
|
|
53
|
+
};
|
|
54
|
+
createdAt: Date;
|
|
55
|
+
timeoutAt?: Date;
|
|
56
|
+
_metadata?: Record<string, any>;
|
|
57
|
+
}
|
|
58
|
+
export type HumanActionRequestedPayload = WebhookPayloadBase & {
|
|
59
|
+
type: "human_action_requested";
|
|
60
|
+
step: Omit<HumanActionStep, '_metadata'>;
|
|
61
|
+
};
|
|
62
|
+
export type HumanActionCompletedPayload = WebhookPayloadBase & {
|
|
63
|
+
type: "human_action_completed";
|
|
64
|
+
step: Omit<HumanActionStep, '_metadata'>;
|
|
65
|
+
};
|
|
66
|
+
export type WebhookPayload = ProcessCreatedPayload | ProcessUpdatePayload | ProcessResultPayload | ProcessFailedPayload | HumanActionRequestedPayload | HumanActionCompletedPayload;
|
|
36
67
|
export interface ProcessResult {
|
|
37
68
|
text: string;
|
|
38
69
|
data: any;
|
|
@@ -49,17 +80,22 @@ export interface Process {
|
|
|
49
80
|
updates: ProcessUpdate[];
|
|
50
81
|
results: ProcessResult[];
|
|
51
82
|
agentInfo: AgentInfo;
|
|
83
|
+
humanActions: HumanActionStep[];
|
|
52
84
|
}
|
|
53
|
-
export declare class MemoryProcessStore {
|
|
85
|
+
export declare class MemoryProcessStore implements ProcessStoreAdapter {
|
|
54
86
|
private processes;
|
|
55
87
|
saveProcess(process: Process): Promise<void>;
|
|
56
88
|
getProcess(processId: string): Promise<Process | null>;
|
|
57
89
|
updateProcess(processId: string, updates: Partial<Process>): Promise<void>;
|
|
90
|
+
getHumanAction(processId: string, stepId: string): Promise<HumanActionStep | null>;
|
|
91
|
+
updateHumanAction(processId: string, stepId: string, updates: Partial<HumanActionStep>): Promise<void>;
|
|
58
92
|
}
|
|
59
93
|
export interface ProcessStoreAdapter {
|
|
60
94
|
saveProcess(process: Process): Promise<void>;
|
|
61
95
|
getProcess(processId: string): Promise<Process | null>;
|
|
62
96
|
updateProcess(processId: string, updates: Partial<Process>): Promise<void>;
|
|
97
|
+
getHumanAction(processId: string, stepId: string): Promise<HumanActionStep | null>;
|
|
98
|
+
updateHumanAction(processId: string, stepId: string, updates: Partial<HumanActionStep>): Promise<void>;
|
|
63
99
|
}
|
|
64
100
|
export declare class RedisProcessStore implements ProcessStoreAdapter {
|
|
65
101
|
private redis;
|
|
@@ -68,6 +104,8 @@ export declare class RedisProcessStore implements ProcessStoreAdapter {
|
|
|
68
104
|
saveProcess(process: Process): Promise<void>;
|
|
69
105
|
getProcess(processId: string): Promise<Process | null>;
|
|
70
106
|
updateProcess(processId: string, updates: Partial<Process>): Promise<void>;
|
|
107
|
+
getHumanAction(processId: string, stepId: string): Promise<HumanActionStep | null>;
|
|
108
|
+
updateHumanAction(processId: string, stepId: string, updates: Partial<HumanActionStep>): Promise<void>;
|
|
71
109
|
}
|
|
72
110
|
export declare class UpstashProcessStore implements ProcessStoreAdapter {
|
|
73
111
|
private baseUrl;
|
|
@@ -77,13 +115,25 @@ export declare class UpstashProcessStore implements ProcessStoreAdapter {
|
|
|
77
115
|
saveProcess(process: Process): Promise<void>;
|
|
78
116
|
getProcess(processId: string): Promise<Process | null>;
|
|
79
117
|
updateProcess(processId: string, updates: Partial<Process>): Promise<void>;
|
|
118
|
+
getHumanAction(processId: string, stepId: string): Promise<HumanActionStep | null>;
|
|
119
|
+
updateHumanAction(processId: string, stepId: string, updates: Partial<HumanActionStep>): Promise<void>;
|
|
80
120
|
}
|
|
81
121
|
export declare class ProcessHandler {
|
|
82
122
|
private store;
|
|
83
123
|
private serviceId;
|
|
84
124
|
private privateKey;
|
|
85
|
-
|
|
125
|
+
private baseUrl?;
|
|
126
|
+
private onHumanActionResponse?;
|
|
127
|
+
constructor({ serviceId, privateKey, apiKey, store, baseUrl, onHumanActionResponse, }: {
|
|
86
128
|
serviceId: string;
|
|
129
|
+
baseUrl?: string;
|
|
130
|
+
onHumanActionResponse?: (response: {
|
|
131
|
+
process: Process;
|
|
132
|
+
stepId: string;
|
|
133
|
+
actionId: string;
|
|
134
|
+
responseText?: string;
|
|
135
|
+
data?: any;
|
|
136
|
+
}) => Promise<void>;
|
|
87
137
|
} & ({
|
|
88
138
|
privateKey: Uint8Array;
|
|
89
139
|
apiKey?: never;
|
|
@@ -105,5 +155,31 @@ export declare class ProcessHandler {
|
|
|
105
155
|
status: Process["status"];
|
|
106
156
|
updates: ProcessUpdate[];
|
|
107
157
|
results: ProcessResult[];
|
|
158
|
+
humanActions: HumanActionStep[];
|
|
108
159
|
} | null>;
|
|
160
|
+
requestHumanAction(processId: string, options: {
|
|
161
|
+
message: string;
|
|
162
|
+
ui?: any;
|
|
163
|
+
actions: Array<{
|
|
164
|
+
id: string;
|
|
165
|
+
title: string;
|
|
166
|
+
requiresResponse?: boolean;
|
|
167
|
+
}>;
|
|
168
|
+
metadata?: any;
|
|
169
|
+
timeoutMs?: number;
|
|
170
|
+
}): Promise<string>;
|
|
171
|
+
checkHumanAction(processId: string, stepId: string): Promise<{
|
|
172
|
+
status: 'pending' | 'completed' | 'failed' | 'timeout';
|
|
173
|
+
response?: {
|
|
174
|
+
actionId: string;
|
|
175
|
+
responseText?: string;
|
|
176
|
+
data?: any;
|
|
177
|
+
};
|
|
178
|
+
}>;
|
|
179
|
+
waitForHumanAction(processId: string, stepId: string, timeoutMs?: number): Promise<{
|
|
180
|
+
actionId: string;
|
|
181
|
+
responseText?: string;
|
|
182
|
+
data?: any;
|
|
183
|
+
}>;
|
|
184
|
+
respondToHumanAction(processId: string, stepId: string, actionId: string, responseText?: string, data?: any): Promise<void>;
|
|
109
185
|
}
|
|
@@ -25,6 +25,25 @@ class MemoryProcessStore {
|
|
|
25
25
|
this.processes.set(processId, { ...process, ...updates });
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
+
async getHumanAction(processId, stepId) {
|
|
29
|
+
const process = await this.getProcess(processId);
|
|
30
|
+
if (!process)
|
|
31
|
+
return null;
|
|
32
|
+
return process.humanActions.find(step => step.id === stepId) || null;
|
|
33
|
+
}
|
|
34
|
+
async updateHumanAction(processId, stepId, updates) {
|
|
35
|
+
const process = await this.getProcess(processId);
|
|
36
|
+
if (!process)
|
|
37
|
+
throw new Error("Process not found");
|
|
38
|
+
const stepIndex = process.humanActions.findIndex(step => step.id === stepId);
|
|
39
|
+
if (stepIndex === -1)
|
|
40
|
+
throw new Error("Human action step not found");
|
|
41
|
+
process.humanActions[stepIndex] = {
|
|
42
|
+
...process.humanActions[stepIndex],
|
|
43
|
+
...updates
|
|
44
|
+
};
|
|
45
|
+
await this.saveProcess(process);
|
|
46
|
+
}
|
|
28
47
|
}
|
|
29
48
|
exports.MemoryProcessStore = MemoryProcessStore;
|
|
30
49
|
class RedisProcessStore {
|
|
@@ -54,6 +73,25 @@ class RedisProcessStore {
|
|
|
54
73
|
const updatedProcess = { ...process, ...updates };
|
|
55
74
|
await this.saveProcess(updatedProcess);
|
|
56
75
|
}
|
|
76
|
+
async getHumanAction(processId, stepId) {
|
|
77
|
+
const process = await this.getProcess(processId);
|
|
78
|
+
if (!process)
|
|
79
|
+
return null;
|
|
80
|
+
return process.humanActions.find(step => step.id === stepId) || null;
|
|
81
|
+
}
|
|
82
|
+
async updateHumanAction(processId, stepId, updates) {
|
|
83
|
+
const process = await this.getProcess(processId);
|
|
84
|
+
if (!process)
|
|
85
|
+
throw new Error("Process not found");
|
|
86
|
+
const stepIndex = process.humanActions.findIndex(step => step.id === stepId);
|
|
87
|
+
if (stepIndex === -1)
|
|
88
|
+
throw new Error("Human action step not found");
|
|
89
|
+
process.humanActions[stepIndex] = {
|
|
90
|
+
...process.humanActions[stepIndex],
|
|
91
|
+
...updates
|
|
92
|
+
};
|
|
93
|
+
await this.saveProcess(process);
|
|
94
|
+
}
|
|
57
95
|
}
|
|
58
96
|
exports.RedisProcessStore = RedisProcessStore;
|
|
59
97
|
class UpstashProcessStore {
|
|
@@ -94,14 +132,36 @@ class UpstashProcessStore {
|
|
|
94
132
|
const updatedProcess = { ...process, ...updates };
|
|
95
133
|
await this.saveProcess(updatedProcess);
|
|
96
134
|
}
|
|
135
|
+
async getHumanAction(processId, stepId) {
|
|
136
|
+
const process = await this.getProcess(processId);
|
|
137
|
+
if (!process)
|
|
138
|
+
return null;
|
|
139
|
+
return process.humanActions.find(step => step.id === stepId) || null;
|
|
140
|
+
}
|
|
141
|
+
async updateHumanAction(processId, stepId, updates) {
|
|
142
|
+
const process = await this.getProcess(processId);
|
|
143
|
+
if (!process)
|
|
144
|
+
throw new Error("Process not found");
|
|
145
|
+
const stepIndex = process.humanActions.findIndex(step => step.id === stepId);
|
|
146
|
+
if (stepIndex === -1)
|
|
147
|
+
throw new Error("Human action step not found");
|
|
148
|
+
process.humanActions[stepIndex] = {
|
|
149
|
+
...process.humanActions[stepIndex],
|
|
150
|
+
...updates
|
|
151
|
+
};
|
|
152
|
+
await this.saveProcess(process);
|
|
153
|
+
}
|
|
97
154
|
}
|
|
98
155
|
exports.UpstashProcessStore = UpstashProcessStore;
|
|
99
156
|
class ProcessHandler {
|
|
100
157
|
store;
|
|
101
158
|
serviceId;
|
|
102
159
|
privateKey;
|
|
103
|
-
|
|
160
|
+
baseUrl;
|
|
161
|
+
onHumanActionResponse;
|
|
162
|
+
constructor({ serviceId, privateKey, apiKey, store, baseUrl, onHumanActionResponse, }) {
|
|
104
163
|
this.serviceId = serviceId;
|
|
164
|
+
this.baseUrl = baseUrl;
|
|
105
165
|
if (apiKey) {
|
|
106
166
|
const identity = (0, service_1.parseApiKey)(apiKey);
|
|
107
167
|
this.privateKey = bs58_1.default.decode(identity.privateKey);
|
|
@@ -110,6 +170,7 @@ class ProcessHandler {
|
|
|
110
170
|
this.privateKey = privateKey;
|
|
111
171
|
}
|
|
112
172
|
this.store = store || new MemoryProcessStore();
|
|
173
|
+
this.onHumanActionResponse = onHumanActionResponse;
|
|
113
174
|
}
|
|
114
175
|
generateProcessId() {
|
|
115
176
|
return `${this.serviceId}_${Date.now()}_${(0, cuid2_1.createId)()}`;
|
|
@@ -134,6 +195,7 @@ class ProcessHandler {
|
|
|
134
195
|
updates: [],
|
|
135
196
|
results: [],
|
|
136
197
|
agentInfo,
|
|
198
|
+
humanActions: [],
|
|
137
199
|
};
|
|
138
200
|
await this.store.saveProcess(process);
|
|
139
201
|
if (process.webhookUrl) {
|
|
@@ -279,7 +341,182 @@ class ProcessHandler {
|
|
|
279
341
|
status: process.status,
|
|
280
342
|
updates: process.updates,
|
|
281
343
|
results: process.results,
|
|
344
|
+
humanActions: process.humanActions || [],
|
|
345
|
+
};
|
|
346
|
+
}
|
|
347
|
+
async requestHumanAction(processId, options) {
|
|
348
|
+
const process = await this.store.getProcess(processId);
|
|
349
|
+
if (!process)
|
|
350
|
+
throw new Error("Process not found");
|
|
351
|
+
const stepId = (0, cuid2_1.createId)();
|
|
352
|
+
const actionsWithCallbacks = options.actions.map(action => ({
|
|
353
|
+
...action,
|
|
354
|
+
callbackUrl: this.baseUrl
|
|
355
|
+
? `${this.baseUrl}/processes/${processId}/human-actions/${stepId}/respond`
|
|
356
|
+
: undefined
|
|
357
|
+
}));
|
|
358
|
+
const step = {
|
|
359
|
+
id: stepId,
|
|
360
|
+
processId,
|
|
361
|
+
message: options.message,
|
|
362
|
+
ui: options.ui,
|
|
363
|
+
actions: actionsWithCallbacks,
|
|
364
|
+
status: 'pending',
|
|
365
|
+
createdAt: new Date(),
|
|
366
|
+
timeoutAt: options.timeoutMs ? new Date(Date.now() + options.timeoutMs) : undefined,
|
|
367
|
+
_metadata: options.metadata
|
|
282
368
|
};
|
|
369
|
+
if (!process.humanActions) {
|
|
370
|
+
process.humanActions = [];
|
|
371
|
+
}
|
|
372
|
+
process.humanActions.push(step);
|
|
373
|
+
await this.store.saveProcess(process);
|
|
374
|
+
if (process.webhookUrl) {
|
|
375
|
+
try {
|
|
376
|
+
const { _metadata, ...stepWithoutMetadata } = step;
|
|
377
|
+
const payload = {
|
|
378
|
+
type: "human_action_requested",
|
|
379
|
+
processId,
|
|
380
|
+
agentId: process.agentId,
|
|
381
|
+
serviceId: this.serviceId,
|
|
382
|
+
step: stepWithoutMetadata
|
|
383
|
+
};
|
|
384
|
+
const { signature, timestamp } = this.signWebhookPayload(payload);
|
|
385
|
+
await axios_1.default.post(process.webhookUrl, payload, {
|
|
386
|
+
headers: {
|
|
387
|
+
"X-DAIN-SIGNATURE": signature,
|
|
388
|
+
"X-DAIN-TIMESTAMP": timestamp,
|
|
389
|
+
"X-DAIN-PROCESS-ID": processId,
|
|
390
|
+
},
|
|
391
|
+
});
|
|
392
|
+
}
|
|
393
|
+
catch (error) {
|
|
394
|
+
console.error("Failed to send human action webhook:", error);
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
// Set up timeout if specified
|
|
398
|
+
if (options.timeoutMs) {
|
|
399
|
+
setTimeout(async () => {
|
|
400
|
+
const currentStep = await this.store.getHumanAction(processId, stepId);
|
|
401
|
+
if (currentStep && currentStep.status === 'pending') {
|
|
402
|
+
await this.store.updateHumanAction(processId, stepId, {
|
|
403
|
+
status: 'timeout'
|
|
404
|
+
});
|
|
405
|
+
}
|
|
406
|
+
}, options.timeoutMs);
|
|
407
|
+
}
|
|
408
|
+
return stepId;
|
|
409
|
+
}
|
|
410
|
+
async checkHumanAction(processId, stepId) {
|
|
411
|
+
const step = await this.store.getHumanAction(processId, stepId);
|
|
412
|
+
if (!step)
|
|
413
|
+
throw new Error("Human action step not found");
|
|
414
|
+
return {
|
|
415
|
+
status: step.status,
|
|
416
|
+
response: step.response
|
|
417
|
+
};
|
|
418
|
+
}
|
|
419
|
+
async waitForHumanAction(processId, stepId, timeoutMs = 300000 // Default 5 minute timeout
|
|
420
|
+
) {
|
|
421
|
+
return new Promise(async (resolve, reject) => {
|
|
422
|
+
const timeoutId = setTimeout(() => {
|
|
423
|
+
reject(new Error("Waiting for human action timed out"));
|
|
424
|
+
}, timeoutMs);
|
|
425
|
+
const checkStatus = async () => {
|
|
426
|
+
try {
|
|
427
|
+
const status = await this.checkHumanAction(processId, stepId);
|
|
428
|
+
switch (status.status) {
|
|
429
|
+
case 'completed':
|
|
430
|
+
clearTimeout(timeoutId);
|
|
431
|
+
if (!status.response) {
|
|
432
|
+
reject(new Error("No response found for completed action"));
|
|
433
|
+
return;
|
|
434
|
+
}
|
|
435
|
+
resolve(status.response);
|
|
436
|
+
break;
|
|
437
|
+
case 'failed':
|
|
438
|
+
case 'timeout':
|
|
439
|
+
clearTimeout(timeoutId);
|
|
440
|
+
reject(new Error(`Human action ${status.status}`));
|
|
441
|
+
break;
|
|
442
|
+
case 'pending':
|
|
443
|
+
setTimeout(checkStatus, 1000); // Poll every second
|
|
444
|
+
break;
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
catch (error) {
|
|
448
|
+
clearTimeout(timeoutId);
|
|
449
|
+
reject(error);
|
|
450
|
+
}
|
|
451
|
+
};
|
|
452
|
+
await checkStatus();
|
|
453
|
+
});
|
|
454
|
+
}
|
|
455
|
+
async respondToHumanAction(processId, stepId, actionId, responseText, data) {
|
|
456
|
+
const step = await this.store.getHumanAction(processId, stepId);
|
|
457
|
+
if (!step)
|
|
458
|
+
throw new Error("Human action step not found");
|
|
459
|
+
if (step.status !== 'pending')
|
|
460
|
+
throw new Error("Human action is no longer pending");
|
|
461
|
+
// Validate action ID
|
|
462
|
+
const validAction = step.actions.find(action => action.id === actionId);
|
|
463
|
+
if (!validAction) {
|
|
464
|
+
throw new Error(`Invalid action ID: ${actionId}`);
|
|
465
|
+
}
|
|
466
|
+
// Check if response is required but missing
|
|
467
|
+
if (validAction.requiresResponse && !responseText) {
|
|
468
|
+
throw new Error(`Response text is required for action: ${actionId}`);
|
|
469
|
+
}
|
|
470
|
+
const response = {
|
|
471
|
+
actionId,
|
|
472
|
+
responseText,
|
|
473
|
+
timestamp: new Date(),
|
|
474
|
+
data
|
|
475
|
+
};
|
|
476
|
+
const process = await this.store.getProcess(processId);
|
|
477
|
+
if (!process)
|
|
478
|
+
throw new Error("Process not found");
|
|
479
|
+
await this.store.updateHumanAction(processId, stepId, {
|
|
480
|
+
status: 'completed',
|
|
481
|
+
response
|
|
482
|
+
});
|
|
483
|
+
// Notify service handler if configured
|
|
484
|
+
if (this.onHumanActionResponse) {
|
|
485
|
+
await this.onHumanActionResponse({
|
|
486
|
+
process,
|
|
487
|
+
stepId,
|
|
488
|
+
actionId,
|
|
489
|
+
responseText,
|
|
490
|
+
data
|
|
491
|
+
});
|
|
492
|
+
}
|
|
493
|
+
if (process.webhookUrl) {
|
|
494
|
+
try {
|
|
495
|
+
const { _metadata, ...stepWithoutMetadata } = step;
|
|
496
|
+
const payload = {
|
|
497
|
+
type: "human_action_completed",
|
|
498
|
+
processId,
|
|
499
|
+
agentId: process.agentId,
|
|
500
|
+
serviceId: this.serviceId,
|
|
501
|
+
step: {
|
|
502
|
+
...stepWithoutMetadata,
|
|
503
|
+
status: 'completed',
|
|
504
|
+
response
|
|
505
|
+
}
|
|
506
|
+
};
|
|
507
|
+
const { signature, timestamp } = this.signWebhookPayload(payload);
|
|
508
|
+
await axios_1.default.post(process.webhookUrl, payload, {
|
|
509
|
+
headers: {
|
|
510
|
+
"X-DAIN-SIGNATURE": signature,
|
|
511
|
+
"X-DAIN-TIMESTAMP": timestamp,
|
|
512
|
+
"X-DAIN-PROCESS-ID": processId,
|
|
513
|
+
},
|
|
514
|
+
});
|
|
515
|
+
}
|
|
516
|
+
catch (error) {
|
|
517
|
+
console.error("Failed to send human action completion webhook:", error);
|
|
518
|
+
}
|
|
519
|
+
}
|
|
283
520
|
}
|
|
284
521
|
}
|
|
285
522
|
exports.ProcessHandler = ProcessHandler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processes.js","sourceRoot":"","sources":["../../src/service/processes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"processes.js","sourceRoot":"","sources":["../../src/service/processes.ts"],"names":[],"mappings":"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"}
|
package/dist/service/server.js
CHANGED
|
@@ -17,7 +17,9 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
|
|
|
17
17
|
const processHandler = new processes_1.ProcessHandler({
|
|
18
18
|
serviceId: "service_" + config.identity.orgId + "_" + config.identity.agentId,
|
|
19
19
|
privateKey,
|
|
20
|
-
store: config.processStore
|
|
20
|
+
store: config.processStore,
|
|
21
|
+
baseUrl: config.baseUrl,
|
|
22
|
+
onHumanActionResponse: config.onHumanActionResponse
|
|
21
23
|
});
|
|
22
24
|
app.processes = processHandler;
|
|
23
25
|
// CORS middleware - apply to all routes
|
|
@@ -114,6 +116,7 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
|
|
|
114
116
|
pricing: tool.pricing,
|
|
115
117
|
inputSchema: (0, schemaStructure_1.getDetailedSchemaStructure)(tool.input),
|
|
116
118
|
outputSchema: (0, schemaStructure_1.getDetailedSchemaStructure)(tool.output),
|
|
119
|
+
suggestConfirmation: tool.suggestConfirmation,
|
|
117
120
|
}));
|
|
118
121
|
return c.json(toolInfo);
|
|
119
122
|
});
|
|
@@ -268,6 +271,7 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
|
|
|
268
271
|
description: tool.description,
|
|
269
272
|
inputSchema: (0, zod_to_json_schema_1.default)(tool.input),
|
|
270
273
|
outputSchema: (0, zod_to_json_schema_1.default)(tool.output),
|
|
274
|
+
suggestConfirmation: tool.suggestConfirmation,
|
|
271
275
|
}));
|
|
272
276
|
return c.json({
|
|
273
277
|
tools: toolInfo,
|
|
@@ -285,6 +289,7 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
|
|
|
285
289
|
pricing: tool.pricing,
|
|
286
290
|
inputSchema: (0, schemaStructure_1.getDetailedSchemaStructure)(tool.input),
|
|
287
291
|
outputSchema: (0, schemaStructure_1.getDetailedSchemaStructure)(tool.output),
|
|
292
|
+
suggestConfirmation: tool.suggestConfirmation,
|
|
288
293
|
};
|
|
289
294
|
return c.json(toolDetails);
|
|
290
295
|
}
|
|
@@ -444,6 +449,85 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
|
|
|
444
449
|
});
|
|
445
450
|
}
|
|
446
451
|
});
|
|
452
|
+
// Get all human actions for a process
|
|
453
|
+
app.get("/processes/:processId/human-actions", async (c) => {
|
|
454
|
+
const processId = c.req.param("processId");
|
|
455
|
+
const agentInfo = await getAgentInfo(c);
|
|
456
|
+
const process = await app.processes.getProcess(processId);
|
|
457
|
+
if (!process) {
|
|
458
|
+
throw new http_exception_1.HTTPException(404, { message: "Process not found" });
|
|
459
|
+
}
|
|
460
|
+
if (process.agentId !== agentInfo.id) {
|
|
461
|
+
console.log("Unauthorized access to process", process.agentId, agentInfo.id);
|
|
462
|
+
throw new http_exception_1.HTTPException(403, { message: "Unauthorized access to process" });
|
|
463
|
+
}
|
|
464
|
+
return c.json(process.humanActions);
|
|
465
|
+
});
|
|
466
|
+
// Get specific human action
|
|
467
|
+
app.get("/processes/:processId/human-actions/:stepId", async (c) => {
|
|
468
|
+
console.log('GET human action request:', c.req.path);
|
|
469
|
+
const processId = c.req.param("processId");
|
|
470
|
+
const stepId = c.req.param("stepId");
|
|
471
|
+
const agentInfo = await getAgentInfo(c);
|
|
472
|
+
const process = await app.processes.getProcess(processId);
|
|
473
|
+
if (!process) {
|
|
474
|
+
throw new http_exception_1.HTTPException(404, { message: "Process not found" });
|
|
475
|
+
}
|
|
476
|
+
if (process.agentId !== agentInfo.id) {
|
|
477
|
+
console.log("Unauthorized access to process", process.agentId, agentInfo.id);
|
|
478
|
+
throw new http_exception_1.HTTPException(403, { message: "Unauthorized access to process" });
|
|
479
|
+
}
|
|
480
|
+
const step = await app.processes.checkHumanAction(processId, stepId);
|
|
481
|
+
if (!step) {
|
|
482
|
+
throw new http_exception_1.HTTPException(404, { message: "Human action not found" });
|
|
483
|
+
}
|
|
484
|
+
return c.json(step);
|
|
485
|
+
});
|
|
486
|
+
// Respond to human action
|
|
487
|
+
app.post("/processes/:processId/human-actions/:stepId/respond", async (c) => {
|
|
488
|
+
const processId = c.req.param("processId");
|
|
489
|
+
const stepId = c.req.param("stepId");
|
|
490
|
+
const agentInfo = await getAgentInfo(c);
|
|
491
|
+
const process = await app.processes.getProcess(processId);
|
|
492
|
+
if (!process) {
|
|
493
|
+
throw new http_exception_1.HTTPException(404, { message: "Process not found" });
|
|
494
|
+
}
|
|
495
|
+
if (process.agentId !== agentInfo.id) {
|
|
496
|
+
console.log("Unauthorized access to process", process.agentId, agentInfo.id);
|
|
497
|
+
throw new http_exception_1.HTTPException(403, { message: "Unauthorized access to process" });
|
|
498
|
+
}
|
|
499
|
+
const body = await c.req.json();
|
|
500
|
+
const { actionId, responseText, data } = body;
|
|
501
|
+
if (!actionId) {
|
|
502
|
+
throw new http_exception_1.HTTPException(400, { message: "actionId is required" });
|
|
503
|
+
}
|
|
504
|
+
try {
|
|
505
|
+
await app.processes.respondToHumanAction(processId, stepId, actionId, responseText, data);
|
|
506
|
+
return c.json({ success: true });
|
|
507
|
+
}
|
|
508
|
+
catch (error) {
|
|
509
|
+
throw new http_exception_1.HTTPException(400, { message: error.message });
|
|
510
|
+
}
|
|
511
|
+
});
|
|
512
|
+
// Add new endpoint for getting confirmation UI
|
|
513
|
+
app.post(`/tools/:toolId/confirmation`, async (c) => {
|
|
514
|
+
const tool = tools.find((t) => t.id === c.req.param("toolId"));
|
|
515
|
+
if (!tool) {
|
|
516
|
+
throw new http_exception_1.HTTPException(404, { message: "Tool not found" });
|
|
517
|
+
}
|
|
518
|
+
if (!tool.suggestConfirmationUI) {
|
|
519
|
+
return c.json({ success: true }); // Default to success if no UI generator
|
|
520
|
+
}
|
|
521
|
+
try {
|
|
522
|
+
const body = await c.req.json();
|
|
523
|
+
const confirmationUI = await tool.suggestConfirmationUI(body);
|
|
524
|
+
return c.json(confirmationUI);
|
|
525
|
+
}
|
|
526
|
+
catch (error) {
|
|
527
|
+
console.error(`Error generating confirmation UI for tool ${tool.id}:`, error);
|
|
528
|
+
throw new http_exception_1.HTTPException(500, { message: "Error generating confirmation UI" });
|
|
529
|
+
}
|
|
530
|
+
});
|
|
447
531
|
return app;
|
|
448
532
|
}
|
|
449
533
|
//# sourceMappingURL=server.js.map
|