psadk 1.1.22 → 1.1.24
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/build/main/lib/PSAI.d.ts +1 -1
- package/build/main/lib/PSAI.js +52 -41
- package/build/main/lib/PSAgent.js +1 -1
- package/build/main/lib/PSAgentConfig.d.ts +5 -5
- package/build/main/lib/PSAgentLogger.js +3 -3
- package/build/main/lib/PSAgentTask.js +1 -1
- package/build/main/lib/PSAgentTool.d.ts +4 -4
- package/build/main/lib/PSAgentTool.js +11 -11
- package/build/main/lib/tools/BraveWebSearchTool.d.ts +2 -2
- package/build/main/lib/tools/BraveWebSearchTool.js +20 -18
- package/build/main/lib/tools/PSArtifactTool.d.ts +1 -1
- package/build/main/lib/tools/PSArtifactTool.js +25 -25
- package/build/main/lib/tools/PSCommandLineTool.d.ts +2 -2
- package/build/main/lib/tools/PSCommandLineTool.js +22 -21
- package/build/main/lib/tools/PSMemoryTool.d.ts +2 -2
- package/build/main/lib/tools/PSMemoryTool.js +93 -65
- package/build/main/lib/tools/PSReadFileTool.d.ts +2 -2
- package/build/main/lib/tools/PSReadFileTool.js +13 -11
- package/build/main/lib/tools/PSSubAgentTool.d.ts +4 -4
- package/build/main/lib/tools/PSSubAgentTool.js +50 -47
- package/build/main/lib/tools/TodoTool.d.ts +2 -2
- package/build/main/lib/tools/TodoTool.js +45 -41
- package/build/main/lib/utils/helpers.js +5 -3
- package/build/module/lib/PSAI.d.ts +1 -1
- package/build/module/lib/PSAI.js +53 -42
- package/build/module/lib/PSAgent.js +1 -1
- package/build/module/lib/PSAgentConfig.d.ts +5 -5
- package/build/module/lib/PSAgentLogger.js +3 -3
- package/build/module/lib/PSAgentTask.js +1 -1
- package/build/module/lib/PSAgentTool.d.ts +4 -4
- package/build/module/lib/PSAgentTool.js +11 -11
- package/build/module/lib/tools/BraveWebSearchTool.d.ts +2 -2
- package/build/module/lib/tools/BraveWebSearchTool.js +20 -18
- package/build/module/lib/tools/PSArtifactTool.d.ts +1 -1
- package/build/module/lib/tools/PSArtifactTool.js +25 -25
- package/build/module/lib/tools/PSCommandLineTool.d.ts +2 -2
- package/build/module/lib/tools/PSCommandLineTool.js +22 -21
- package/build/module/lib/tools/PSMemoryTool.d.ts +2 -2
- package/build/module/lib/tools/PSMemoryTool.js +93 -65
- package/build/module/lib/tools/PSReadFileTool.d.ts +2 -2
- package/build/module/lib/tools/PSReadFileTool.js +13 -11
- package/build/module/lib/tools/PSSubAgentTool.d.ts +4 -4
- package/build/module/lib/tools/PSSubAgentTool.js +50 -47
- package/build/module/lib/tools/TodoTool.d.ts +2 -2
- package/build/module/lib/tools/TodoTool.js +45 -41
- package/build/module/lib/utils/helpers.js +5 -3
- package/package.json +11 -11
|
@@ -24,12 +24,11 @@ class PSExecutionEventBus {
|
|
|
24
24
|
this.listeners[eventName].push(listener);
|
|
25
25
|
return this;
|
|
26
26
|
}
|
|
27
|
-
;
|
|
28
27
|
off(eventName, listener) {
|
|
29
28
|
console.log(`Listener removed for event: ${eventName}`);
|
|
30
29
|
if (!this.listeners[eventName])
|
|
31
30
|
return this;
|
|
32
|
-
this.listeners[eventName] = this.listeners[eventName].filter(l => l !== listener);
|
|
31
|
+
this.listeners[eventName] = this.listeners[eventName].filter((l) => l !== listener);
|
|
33
32
|
return this;
|
|
34
33
|
}
|
|
35
34
|
once(eventName, listener) {
|
|
@@ -68,35 +67,35 @@ class PSSubAgentTool extends PSAgentTool_1.PSAgentTool {
|
|
|
68
67
|
description: generateDescription(sub_agents),
|
|
69
68
|
inputschema: {
|
|
70
69
|
url: `http://localhost/${PSSubAgentTool.TOOL_NAME}`,
|
|
71
|
-
method:
|
|
70
|
+
method: 'POST',
|
|
72
71
|
requestBody: {
|
|
73
|
-
type:
|
|
72
|
+
type: 'object',
|
|
74
73
|
properties: {
|
|
75
74
|
sub_agents: {
|
|
76
|
-
type:
|
|
77
|
-
title:
|
|
78
|
-
description:
|
|
75
|
+
type: 'array',
|
|
76
|
+
title: 'sub_agents',
|
|
77
|
+
description: 'Array of sub agents to be invoked',
|
|
79
78
|
items: {
|
|
80
|
-
type:
|
|
79
|
+
type: 'object',
|
|
81
80
|
properties: {
|
|
82
81
|
name: {
|
|
83
|
-
type:
|
|
84
|
-
title:
|
|
85
|
-
description:
|
|
82
|
+
type: 'string',
|
|
83
|
+
title: 'subagent name',
|
|
84
|
+
description: 'The name of the sub agent',
|
|
86
85
|
},
|
|
87
86
|
input: {
|
|
88
|
-
type:
|
|
89
|
-
title:
|
|
90
|
-
description:
|
|
87
|
+
type: 'object',
|
|
88
|
+
title: 'input',
|
|
89
|
+
description: 'The input to the sub agent',
|
|
91
90
|
},
|
|
92
91
|
},
|
|
93
|
-
required: [
|
|
92
|
+
required: ['name', 'input'],
|
|
94
93
|
},
|
|
95
|
-
}
|
|
94
|
+
},
|
|
96
95
|
},
|
|
97
|
-
required: [
|
|
98
|
-
}
|
|
99
|
-
}
|
|
96
|
+
required: ['sub_agents'],
|
|
97
|
+
},
|
|
98
|
+
},
|
|
100
99
|
});
|
|
101
100
|
this.sub_agents = sub_agents || [];
|
|
102
101
|
}
|
|
@@ -105,11 +104,11 @@ class PSSubAgentTool extends PSAgentTool_1.PSAgentTool {
|
|
|
105
104
|
logger.info(`Invoking ${PSSubAgentTool.TOOL_NAME} with input: ${JSON.stringify(input)}`);
|
|
106
105
|
const agentworkers = Array();
|
|
107
106
|
for (const sa_input of input.sub_agents) {
|
|
108
|
-
const sa = this.sub_agents.find(s => s.Name === sa_input.name);
|
|
107
|
+
const sa = this.sub_agents.find((s) => s.Name === sa_input.name);
|
|
109
108
|
if (!sa) {
|
|
110
109
|
return {
|
|
111
|
-
status:
|
|
112
|
-
output: `Sub agent with name ${sa_input.name} not found
|
|
110
|
+
status: 'error',
|
|
111
|
+
output: `Sub agent with name ${sa_input.name} not found`,
|
|
113
112
|
};
|
|
114
113
|
}
|
|
115
114
|
// TODO: validate input against sa.InputSchema
|
|
@@ -126,71 +125,75 @@ class PSSubAgentTool extends PSAgentTool_1.PSAgentTool {
|
|
|
126
125
|
try {
|
|
127
126
|
const taskId = (0, zod_1.uuidv4)().toString();
|
|
128
127
|
const userMessage = {
|
|
129
|
-
kind:
|
|
128
|
+
kind: 'message',
|
|
130
129
|
messageId: (0, zod_1.uuidv4)().toString(),
|
|
131
130
|
parts: [
|
|
132
131
|
{
|
|
133
|
-
kind:
|
|
134
|
-
text: JSON.stringify(sa_input.input, null, 2)
|
|
135
|
-
}
|
|
132
|
+
kind: 'text',
|
|
133
|
+
text: JSON.stringify(sa_input.input, null, 2),
|
|
134
|
+
},
|
|
136
135
|
],
|
|
137
|
-
role:
|
|
138
|
-
taskId
|
|
136
|
+
role: 'user',
|
|
137
|
+
taskId,
|
|
139
138
|
};
|
|
140
139
|
const reqContext = new server_1.RequestContext(userMessage, taskId, (0, zod_1.uuidv4)().toString());
|
|
141
140
|
console.log(userMessage, taskId, reqContext);
|
|
142
141
|
const eventBus = new PSExecutionEventBus();
|
|
143
|
-
sa.execute(reqContext, eventBus)
|
|
142
|
+
sa.execute(reqContext, eventBus)
|
|
143
|
+
.then((result) => {
|
|
144
144
|
console.log(`Sub agent ${sa_input.name} completed with result: ${JSON.stringify(result)}`);
|
|
145
145
|
resolve({
|
|
146
|
-
status:
|
|
147
|
-
output: result
|
|
146
|
+
status: 'success',
|
|
147
|
+
output: result,
|
|
148
148
|
});
|
|
149
|
-
})
|
|
149
|
+
})
|
|
150
|
+
.catch((e) => {
|
|
150
151
|
logger.error(`Sub agent ${sa_input.name} failed with error: ${e.message}`);
|
|
151
152
|
reject({
|
|
152
|
-
status:
|
|
153
|
-
output: `Sub agent ${sa_input.name} invocation failed with error: ${e.message}
|
|
153
|
+
status: 'error',
|
|
154
|
+
output: `Sub agent ${sa_input.name} invocation failed with error: ${e.message}`,
|
|
154
155
|
});
|
|
155
156
|
});
|
|
156
157
|
}
|
|
157
158
|
catch (e) {
|
|
158
159
|
reject({
|
|
159
|
-
status:
|
|
160
|
-
output: `Sub agent ${sa_input.name} invocation failed with error: ${e.message}
|
|
160
|
+
status: 'error',
|
|
161
|
+
output: `Sub agent ${sa_input.name} invocation failed with error: ${e.message}`,
|
|
161
162
|
});
|
|
162
163
|
}
|
|
163
164
|
}));
|
|
164
|
-
const results = await Promise.all(agentworkers)
|
|
165
|
+
const results = await Promise.all(agentworkers)
|
|
166
|
+
.then((results) => {
|
|
165
167
|
logger.info(`All sub agents completed with results: ${JSON.stringify(results)}`);
|
|
166
168
|
return {
|
|
167
|
-
status:
|
|
168
|
-
output: results
|
|
169
|
+
status: 'success',
|
|
170
|
+
output: results,
|
|
169
171
|
};
|
|
170
|
-
})
|
|
172
|
+
})
|
|
173
|
+
.catch((e) => {
|
|
171
174
|
logger.error(`One or more sub agents failed with error: ${e.message}`);
|
|
172
175
|
return {
|
|
173
|
-
status:
|
|
174
|
-
output: `One or more sub agents invocation failed with error: ${e.message}
|
|
176
|
+
status: 'error',
|
|
177
|
+
output: `One or more sub agents invocation failed with error: ${e.message}`,
|
|
175
178
|
};
|
|
176
179
|
});
|
|
177
180
|
return results;
|
|
178
181
|
}
|
|
179
182
|
return {
|
|
180
|
-
status:
|
|
181
|
-
output: `Not implemented yet
|
|
183
|
+
status: 'error',
|
|
184
|
+
output: `Not implemented yet`,
|
|
182
185
|
};
|
|
183
186
|
}
|
|
184
187
|
}
|
|
185
188
|
exports.PSSubAgentTool = PSSubAgentTool;
|
|
186
|
-
PSSubAgentTool.TOOL_NAME =
|
|
189
|
+
PSSubAgentTool.TOOL_NAME = 'subagent_tool';
|
|
187
190
|
function generateDescription(sub_agents) {
|
|
188
191
|
//`Use this ${PSSubAgentTool.TOOL_NAME} one or more of sub agents available.
|
|
189
192
|
const description = `
|
|
190
193
|
Launch a new agent to handle complex, multi-step tasks autonomously.
|
|
191
194
|
|
|
192
195
|
Available agent types and the tools they have access to:
|
|
193
|
-
${sub_agents.map(sa => `- ${sa.Name}: ${sa.Description.replace(/\n/g, '\n ')}\n input schema for ${sa.Name} : ${JSON.stringify(sa.InputSchema)}\n`).join(
|
|
196
|
+
${sub_agents.map((sa) => `- ${sa.Name}: ${sa.Description.replace(/\n/g, '\n ')}\n input schema for ${sa.Name} : ${JSON.stringify(sa.InputSchema)}\n`).join('\n')}
|
|
194
197
|
|
|
195
198
|
The input is a JSON array with each object in array having the following properties:
|
|
196
199
|
- 'name' (string) - the name of the sub agent to be created or modified.
|
|
@@ -293,4 +296,4 @@ assistant: "I'm going to use the Task tool to launch the with the greeting-respo
|
|
|
293
296
|
`;
|
|
294
297
|
return description;
|
|
295
298
|
}
|
|
296
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
299
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUFNTdWJBZ2VudFRvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3Rvb2xzL1BTU3ViQWdlbnRUb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLCtDQUk0QjtBQUM1Qiw2QkFBNkI7QUFJN0IsZ0RBQTZDO0FBQzdDLHVFQUErQztBQUUvQyxNQUFNLElBQUksR0FBRyxJQUFBLHFCQUFXLEVBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUVqRCxNQUFhLG1CQUFtQjtJQUFoQztRQUNFLGNBQVMsR0FDUCxFQUFFLENBQUM7SUF1RFAsQ0FBQztJQXREQyxPQUFPLENBQUMsS0FBMEI7UUFDaEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUNELEVBQUUsQ0FDQSxTQUErQixFQUMvQixRQUE4QztRQUU5QyxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDakMsQ0FBQztRQUNELElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELEdBQUcsQ0FDRCxTQUErQixFQUMvQixRQUE4QztRQUU5QyxPQUFPLENBQUMsR0FBRyxDQUFDLCtCQUErQixTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FB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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { PSAgentLogger } from
|
|
2
|
-
import { PSAgentTool } from
|
|
1
|
+
import { PSAgentLogger } from '../PSAgentLogger';
|
|
2
|
+
import { PSAgentTool } from '../PSAgentTool';
|
|
3
3
|
export declare enum TodoStatus {
|
|
4
4
|
PENDING = "pending",
|
|
5
5
|
IN_PROGRESS = "in_progress",
|
|
@@ -37,7 +37,7 @@ class TaskStore {
|
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
catch (error) {
|
|
40
|
-
dlog.error(
|
|
40
|
+
dlog.error('Error loading todos from file:', error);
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}
|
|
@@ -61,16 +61,16 @@ class PSTodoReadTool extends PSAgentTool_1.PSAgentTool {
|
|
|
61
61
|
super({
|
|
62
62
|
name: PSTodoReadTool.toolName,
|
|
63
63
|
description: `Read the current task list.\nReturns a list of todos with their current state.`,
|
|
64
|
-
type:
|
|
64
|
+
type: 'API',
|
|
65
65
|
local_execution: true,
|
|
66
66
|
hitl: true,
|
|
67
67
|
inputschema: {
|
|
68
|
-
url:
|
|
69
|
-
method:
|
|
68
|
+
url: 'http://localhost/read_todo',
|
|
69
|
+
method: 'POST',
|
|
70
70
|
requestBody: v4_1.z.toJSONSchema(v4_1.z.null().meta({
|
|
71
|
-
title:
|
|
72
|
-
description:
|
|
73
|
-
}), {
|
|
71
|
+
title: 'read_todo_request_body',
|
|
72
|
+
description: 'The request body parameters for the read_todo tool.',
|
|
73
|
+
}), { io: 'input' }),
|
|
74
74
|
},
|
|
75
75
|
});
|
|
76
76
|
this.store = options.store || new TaskStore([]);
|
|
@@ -94,7 +94,7 @@ class PSTodoReadTool extends PSAgentTool_1.PSAgentTool {
|
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
exports.PSTodoReadTool = PSTodoReadTool;
|
|
97
|
-
PSTodoReadTool.toolName =
|
|
97
|
+
PSTodoReadTool.toolName = 'read_todo';
|
|
98
98
|
class PSTodoWriteTool extends PSAgentTool_1.PSAgentTool {
|
|
99
99
|
constructor(options) {
|
|
100
100
|
super({
|
|
@@ -109,49 +109,53 @@ Parameters:
|
|
|
109
109
|
- metadata: Optional additional data
|
|
110
110
|
|
|
111
111
|
Returns success status and count of todos written.`,
|
|
112
|
-
type:
|
|
112
|
+
type: 'API',
|
|
113
113
|
local_execution: true,
|
|
114
114
|
hitl: true,
|
|
115
115
|
inputschema: {
|
|
116
|
-
url:
|
|
117
|
-
method:
|
|
118
|
-
requestBody: v4_1.z.toJSONSchema(v4_1.z
|
|
119
|
-
|
|
116
|
+
url: 'http://localhost/write_todo',
|
|
117
|
+
method: 'POST',
|
|
118
|
+
requestBody: v4_1.z.toJSONSchema(v4_1.z
|
|
119
|
+
.object({
|
|
120
|
+
todos: v4_1.z
|
|
121
|
+
.array(v4_1.z.object({
|
|
120
122
|
id: v4_1.z.string().meta({
|
|
121
|
-
title:
|
|
122
|
-
description:
|
|
123
|
+
title: 'id',
|
|
124
|
+
description: 'The unique identifier for the todo item.',
|
|
123
125
|
}),
|
|
124
126
|
content: v4_1.z.string().max(500).meta({
|
|
125
|
-
title:
|
|
126
|
-
description:
|
|
127
|
+
title: 'content',
|
|
128
|
+
description: 'The content of the todo item.',
|
|
127
129
|
}),
|
|
128
130
|
status: v4_1.z.enum(TodoStatus).meta({
|
|
129
|
-
title:
|
|
130
|
-
description:
|
|
131
|
+
title: 'status',
|
|
132
|
+
description: 'The current status of the todo item.',
|
|
131
133
|
}),
|
|
132
134
|
priority: v4_1.z.enum(TodoPriority).meta({
|
|
133
|
-
title:
|
|
134
|
-
description:
|
|
135
|
+
title: 'priority',
|
|
136
|
+
description: 'The priority level of the todo item.',
|
|
135
137
|
}),
|
|
136
138
|
created_at: v4_1.z.iso.date().meta({
|
|
137
|
-
title:
|
|
138
|
-
description:
|
|
139
|
+
title: 'created_at',
|
|
140
|
+
description: 'The creation date of the todo item.',
|
|
139
141
|
}),
|
|
140
142
|
updated_at: v4_1.z.iso.date().meta({
|
|
141
|
-
title:
|
|
142
|
-
description:
|
|
143
|
+
title: 'updated_at',
|
|
144
|
+
description: 'The last update date of the todo item.',
|
|
143
145
|
}),
|
|
144
146
|
metadata: v4_1.z.record(v4_1.z.string(), v4_1.z.any()).optional().meta({
|
|
145
|
-
description:
|
|
146
|
-
})
|
|
147
|
-
}))
|
|
148
|
-
|
|
149
|
-
|
|
147
|
+
description: 'Additional metadata for the todo item.',
|
|
148
|
+
}),
|
|
149
|
+
}))
|
|
150
|
+
.meta({
|
|
151
|
+
title: 'todos',
|
|
152
|
+
description: 'The list of todos to write.',
|
|
150
153
|
}),
|
|
151
|
-
})
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
154
|
+
})
|
|
155
|
+
.meta({
|
|
156
|
+
title: 'write_todo_request_body',
|
|
157
|
+
description: 'The request body parameters for the write_todo tool.',
|
|
158
|
+
}), { io: 'input' }),
|
|
155
159
|
},
|
|
156
160
|
});
|
|
157
161
|
this.store = options.store || new TaskStore([]);
|
|
@@ -161,7 +165,7 @@ Returns success status and count of todos written.`,
|
|
|
161
165
|
}
|
|
162
166
|
run(input, log) {
|
|
163
167
|
if (!input.todos || !Array.isArray(input.todos)) {
|
|
164
|
-
throw new Error(
|
|
168
|
+
throw new Error('Invalid todos provided.');
|
|
165
169
|
}
|
|
166
170
|
const logger = log || dlog;
|
|
167
171
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -183,7 +187,7 @@ Returns success status and count of todos written.`,
|
|
|
183
187
|
priority: t.priority,
|
|
184
188
|
created_at: t.created_at,
|
|
185
189
|
updated_at: t.updated_at,
|
|
186
|
-
metadata: t.metadata || {}
|
|
190
|
+
metadata: t.metadata || {},
|
|
187
191
|
};
|
|
188
192
|
}
|
|
189
193
|
else {
|
|
@@ -195,15 +199,15 @@ Returns success status and count of todos written.`,
|
|
|
195
199
|
priority: t.priority,
|
|
196
200
|
created_at: t.created_at,
|
|
197
201
|
updated_at: t.updated_at,
|
|
198
|
-
metadata: t.metadata || {}
|
|
202
|
+
metadata: t.metadata || {},
|
|
199
203
|
});
|
|
200
204
|
}
|
|
201
205
|
}
|
|
202
206
|
const output = `📋 Updated task list with ${todos.length} items.`;
|
|
203
207
|
logger.info(output);
|
|
204
|
-
dlog.info(
|
|
208
|
+
dlog.info('Tasks:');
|
|
205
209
|
for (const todo of this.store.Todos) {
|
|
206
|
-
dlog.info(`- [${todo.status === TodoStatus.COMPLETED ? '✅' :
|
|
210
|
+
dlog.info(`- [${todo.status === TodoStatus.COMPLETED ? '✅' : todo.status === TodoStatus.IN_PROGRESS ? '⏳' : ' '}] (${todo.priority}) ${todo.content} (ID: ${todo.id})`);
|
|
207
211
|
}
|
|
208
212
|
return resolve({
|
|
209
213
|
status: 'success',
|
|
@@ -218,5 +222,5 @@ Returns success status and count of todos written.`,
|
|
|
218
222
|
}
|
|
219
223
|
}
|
|
220
224
|
exports.PSTodoWriteTool = PSTodoWriteTool;
|
|
221
|
-
PSTodoWriteTool.toolName =
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
225
|
+
PSTodoWriteTool.toolName = 'write_todo';
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVG9kb1Rvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3Rvb2xzL1RvZG9Ub29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSx1REFBdUQ7Ozs7OztBQUV2RCxzREFBeUI7QUFFekIsK0JBQTJCO0FBRzNCLGdEQUE2QztBQUM3Qyx1RUFBK0M7QUFFL0MsTUFBTSxJQUFJLEdBQUcsSUFBQSxxQkFBVyxFQUFDLGtCQUFrQixDQUFDLENBQUM7QUFFN0MsSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3BCLGlDQUFtQixDQUFBO0lBQ25CLHlDQUEyQixDQUFBO0lBQzNCLHFDQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFKVyxVQUFVLDBCQUFWLFVBQVUsUUFJckI7QUFFRCxJQUFZLFlBSVg7QUFKRCxXQUFZLFlBQVk7SUFDdEIsNkJBQWEsQ0FBQTtJQUNiLGlDQUFpQixDQUFBO0lBQ2pCLDJCQUFXLENBQUE7QUFDYixDQUFDLEVBSlcsWUFBWSw0QkFBWixZQUFZLFFBSXZCO0FBWUQsTUFBYSxTQUFTO0lBSXBCLFlBQVksS0FBYSxFQUFFLFFBQWlCO1FBSHBDLGlCQUFZLEdBQVcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUl0RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUM7Z0JBQ0gsSUFBSSxpQkFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO29CQUM1QixNQUFNLElBQUksR0FBRyxpQkFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7b0JBQ2hELElBQUks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
|
|
@@ -5,7 +5,7 @@ exports.formatFileSize = formatFileSize;
|
|
|
5
5
|
exports.truncateString = truncateString;
|
|
6
6
|
exports.unEscapeHTML = unEscapeHTML;
|
|
7
7
|
async function sleep(ms) {
|
|
8
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
8
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
9
9
|
}
|
|
10
10
|
function formatFileSize(bytes, decimalPoint = 2) {
|
|
11
11
|
if (bytes === 0)
|
|
@@ -30,7 +30,9 @@ function unEscapeHTML(text) {
|
|
|
30
30
|
'"': '"',
|
|
31
31
|
''': "'",
|
|
32
32
|
};
|
|
33
|
-
let result = text.replace(/&|<|>|"|'/g, function (m) {
|
|
33
|
+
let result = text.replace(/&|<|>|"|'/g, function (m) {
|
|
34
|
+
return map[m];
|
|
35
|
+
});
|
|
34
36
|
// Unescape Unicode sequences
|
|
35
37
|
result = result.replace(/\\u[\dA-Fa-f]{4}/g, (unicode) => {
|
|
36
38
|
const codePoint = parseInt(unicode.slice(2), 16);
|
|
@@ -38,4 +40,4 @@ function unEscapeHTML(text) {
|
|
|
38
40
|
});
|
|
39
41
|
return result;
|
|
40
42
|
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNCQUVDO0FBRUQsd0NBT0M7QUFFRCx3Q0FLQztBQUVELG9DQWlCQztBQXJDTSxLQUFLLFVBQVUsS0FBSyxDQUFDLEVBQVU7SUFDcEMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzNELENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsS0FBYSxFQUFFLFlBQVksR0FBRyxDQUFDO0lBQzVELElBQUksS0FBSyxLQUFLLENBQUM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUNsQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDZixNQUFNLEVBQUUsR0FBRyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztJQUMvQyxNQUFNLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRCxPQUFPLFVBQVUsQ0FBQyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDM0UsQ0FBQztBQUVELFNBQWdCLGNBQWMsQ0FBQyxHQUFXLEVBQUUsR0FBVztJQUNyRCxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7UUFDdEIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7QUFDbkMsQ0FBQztBQUVELFNBQWdCLFlBQVksQ0FBQyxJQUFZO0lBQ3ZDLE1BQU0sR0FBRyxHQUEyQjtRQUNsQyxPQUFPLEVBQUUsR0FBRztRQUNaLE1BQU0sRUFBRSxHQUFHO1FBQ1gsTUFBTSxFQUFFLEdBQUc7UUFDWCxRQUFRLEVBQUUsR0FBRztRQUNiLFFBQVEsRUFBRSxHQUFHO0tBQ2QsQ0FBQztJQUNGLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLEVBQUUsVUFBVSxDQUFDO1FBQ3JFLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ0gsNkJBQTZCO0lBQzdCLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDdkQsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakQsT0FBTyxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyJ9
|
|
@@ -22,7 +22,7 @@ export declare class PSAI {
|
|
|
22
22
|
accessToken: string;
|
|
23
23
|
refreshToken: string;
|
|
24
24
|
}>;
|
|
25
|
-
static getLLMproxy({ headers, baseapiurl }?: {
|
|
25
|
+
static getLLMproxy({ headers, baseapiurl, }?: {
|
|
26
26
|
headers?: Record<string, string>;
|
|
27
27
|
baseapiurl?: string;
|
|
28
28
|
}): import("express-serve-static-core").Express;
|