psadk 1.1.0 → 1.1.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.
Files changed (62) hide show
  1. package/README.md +6 -0
  2. package/build/main/index.d.ts +5 -0
  3. package/build/main/index.js +7 -1
  4. package/build/main/lib/PSAI.d.ts +1 -1
  5. package/build/main/lib/PSAgent.d.ts +11 -0
  6. package/build/main/lib/PSAgent.js +59 -30
  7. package/build/main/lib/PSAgentConfig.d.ts +1 -1
  8. package/build/main/lib/PSAgentLogger.d.ts +7 -0
  9. package/build/main/lib/PSAgentLogger.js +19 -4
  10. package/build/main/lib/jwt.js +3 -1
  11. package/build/main/lib/tools/BraveWebSearchTool.d.ts +11 -0
  12. package/build/main/lib/tools/BraveWebSearchTool.js +89 -0
  13. package/build/main/lib/tools/PSCommandLineTool.d.ts +10 -0
  14. package/build/main/lib/tools/PSCommandLineTool.js +74 -0
  15. package/build/main/lib/tools/PSReadFileTool.d.ts +10 -0
  16. package/build/main/lib/tools/PSReadFileTool.js +68 -0
  17. package/build/main/lib/tools/PSSubAgentTool.js +141 -14
  18. package/build/main/lib/tools/PSWriteFileTool.d.ts +10 -0
  19. package/build/main/lib/tools/PSWriteFileTool.js +74 -0
  20. package/build/main/lib/tools/ReadFileTool.d.ts +10 -0
  21. package/build/main/lib/tools/ReadFileTool.js +68 -0
  22. package/build/main/lib/tools/TodoTool.d.ts +57 -0
  23. package/build/main/lib/tools/TodoTool.js +220 -0
  24. package/build/main/lib/tools/WebSearchTool.d.ts +9 -0
  25. package/build/main/lib/tools/WebSearchTool.js +92 -0
  26. package/build/main/lib/tools/WriteFileTool.d.ts +10 -0
  27. package/build/main/lib/tools/WriteFileTool.js +74 -0
  28. package/build/main/lib/utils/helpers.d.ts +4 -0
  29. package/build/main/lib/utils/helpers.js +41 -0
  30. package/build/module/index.d.ts +5 -0
  31. package/build/module/index.js +29 -7
  32. package/build/module/lib/PSAI.d.ts +4 -0
  33. package/build/module/lib/PSAI.js +101 -24
  34. package/build/module/lib/PSAgent.d.ts +21 -10
  35. package/build/module/lib/PSAgent.js +126 -85
  36. package/build/module/lib/PSAgentConfig.d.ts +23 -0
  37. package/build/module/lib/PSAgentConfig.js +3 -0
  38. package/build/module/lib/PSAgentLogger.d.ts +20 -0
  39. package/build/module/lib/PSAgentLogger.js +51 -0
  40. package/build/module/lib/PSAgentTask.d.ts +12 -0
  41. package/build/module/lib/PSAgentTask.js +33 -0
  42. package/build/module/lib/PSAgentTool.d.ts +56 -0
  43. package/build/module/lib/PSAgentTool.js +91 -0
  44. package/build/module/lib/jwt.d.ts +41 -0
  45. package/build/module/lib/jwt.js +75 -0
  46. package/build/module/lib/tools/BraveWebSearchTool.d.ts +11 -0
  47. package/build/module/lib/tools/BraveWebSearchTool.js +90 -0
  48. package/build/module/lib/tools/PSArtifactTool.d.ts +7 -0
  49. package/build/module/lib/tools/PSArtifactTool.js +79 -0
  50. package/build/module/lib/tools/PSCommandLineTool.d.ts +10 -0
  51. package/build/module/lib/tools/PSCommandLineTool.js +75 -0
  52. package/build/module/lib/tools/PSReadFileTool.d.ts +10 -0
  53. package/build/module/lib/tools/PSReadFileTool.js +68 -0
  54. package/build/module/lib/tools/PSSubAgentTool.d.ts +20 -0
  55. package/build/module/lib/tools/PSSubAgentTool.js +289 -0
  56. package/build/module/lib/tools/PSWriteFileTool.d.ts +10 -0
  57. package/build/module/lib/tools/PSWriteFileTool.js +74 -0
  58. package/build/module/lib/tools/TodoTool.d.ts +57 -0
  59. package/build/module/lib/tools/TodoTool.js +224 -0
  60. package/build/module/lib/utils/helpers.d.ts +4 -0
  61. package/build/module/lib/utils/helpers.js +41 -0
  62. package/package.json +1 -1
@@ -0,0 +1,224 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.PSTodoWriteTool = exports.PSTodoReadTool = exports.TaskStore = exports.TodoPriority = exports.TodoStatus = void 0;
8
+ const node_fs_1 = __importDefault(require("node:fs"));
9
+ const v4_1 = require("zod/v4");
10
+ const PSAgentTool_1 = require("../PSAgentTool");
11
+ var TodoStatus;
12
+ (function (TodoStatus) {
13
+ TodoStatus["PENDING"] = "pending";
14
+ TodoStatus["IN_PROGRESS"] = "in_progress";
15
+ TodoStatus["COMPLETED"] = "completed";
16
+ })(TodoStatus || (exports.TodoStatus = TodoStatus = {}));
17
+ var TodoPriority;
18
+ (function (TodoPriority) {
19
+ TodoPriority["HIGH"] = "high";
20
+ TodoPriority["MEDIUM"] = "medium";
21
+ TodoPriority["LOW"] = "low";
22
+ })(TodoPriority || (exports.TodoPriority = TodoPriority = {}));
23
+ class TaskStore {
24
+ lastModified = new Date().toISOString();
25
+ todos;
26
+ filename;
27
+ constructor(todos, filename) {
28
+ this.lastModified = new Date().toISOString();
29
+ this.todos = todos || [];
30
+ this.filename = filename;
31
+ if (filename) {
32
+ try {
33
+ if (node_fs_1.default.existsSync(filename)) {
34
+ const data = node_fs_1.default.readFileSync(filename, 'utf-8');
35
+ this.todos = JSON.parse(data);
36
+ this.lastModified = new Date().toISOString();
37
+ }
38
+ }
39
+ catch (error) {
40
+ console.error("Error loading todos from file:", error);
41
+ }
42
+ }
43
+ }
44
+ get LastModified() {
45
+ return this.lastModified;
46
+ }
47
+ get Todos() {
48
+ return this.todos;
49
+ }
50
+ set Todos(todos) {
51
+ this.todos = todos;
52
+ this.lastModified = new Date().toISOString();
53
+ if (this.filename) {
54
+ node_fs_1.default.writeFileSync(this.filename, JSON.stringify(this.todos, null, 2));
55
+ }
56
+ }
57
+ }
58
+ exports.TaskStore = TaskStore;
59
+ class PSTodoReadTool extends PSAgentTool_1.PSAgentTool {
60
+ static toolName = "read_todo";
61
+ store;
62
+ constructor(options) {
63
+ super({
64
+ name: PSTodoReadTool.toolName,
65
+ description: `Read the current task list.\nReturns a list of todos with their current state.`,
66
+ type: "API",
67
+ local_execution: true,
68
+ hitl: true,
69
+ inputschema: {
70
+ url: "http://localhost/read_todo",
71
+ method: "POST",
72
+ requestBody: v4_1.z.toJSONSchema(v4_1.z.null().meta({
73
+ title: "read_todo_request_body",
74
+ description: "The request body parameters for the read_todo tool.",
75
+ }), { "io": "input" }),
76
+ },
77
+ });
78
+ this.store = options.store || new TaskStore([]);
79
+ }
80
+ run(_input, log) {
81
+ const logger = log || console;
82
+ return new Promise((resolve, reject) => {
83
+ try {
84
+ logger.info(`📋 Referring to tasks list.`);
85
+ const output = this.store.Todos;
86
+ return resolve({
87
+ status: 'success',
88
+ output,
89
+ });
90
+ }
91
+ catch (error) {
92
+ logger.error('Error reading todos:', error);
93
+ reject(error);
94
+ }
95
+ });
96
+ }
97
+ }
98
+ exports.PSTodoReadTool = PSTodoReadTool;
99
+ class PSTodoWriteTool extends PSAgentTool_1.PSAgentTool {
100
+ static toolName = "write_todo";
101
+ store;
102
+ constructor(options) {
103
+ super({
104
+ name: PSTodoWriteTool.toolName,
105
+ description: `Update the entire task list (complete replacement).
106
+ Parameters:
107
+ todos: List of todo items, each containing:
108
+ - id: Unique identifier for the task
109
+ - content: Task description
110
+ - status: Current status (pending, in_progress, completed)
111
+ - priority: Task priority (high, medium, low)
112
+ - metadata: Optional additional data
113
+
114
+ Returns success status and count of todos written.`,
115
+ type: "API",
116
+ local_execution: true,
117
+ hitl: true,
118
+ inputschema: {
119
+ url: "http://localhost/write_todo",
120
+ method: "POST",
121
+ requestBody: v4_1.z.toJSONSchema(v4_1.z.object({
122
+ todos: v4_1.z.array(v4_1.z.object({
123
+ id: v4_1.z.string().meta({
124
+ title: "id",
125
+ description: "The unique identifier for the todo item."
126
+ }),
127
+ content: v4_1.z.string().max(500).meta({
128
+ title: "content",
129
+ description: "The content of the todo item.",
130
+ }),
131
+ status: v4_1.z.enum(TodoStatus).meta({
132
+ title: "status",
133
+ description: "The current status of the todo item."
134
+ }),
135
+ priority: v4_1.z.enum(TodoPriority).meta({
136
+ title: "priority",
137
+ description: "The priority level of the todo item."
138
+ }),
139
+ created_at: v4_1.z.iso.date().meta({
140
+ title: "created_at",
141
+ description: "The creation date of the todo item."
142
+ }),
143
+ updated_at: v4_1.z.iso.date().meta({
144
+ title: "updated_at",
145
+ description: "The last update date of the todo item."
146
+ }),
147
+ metadata: v4_1.z.record(v4_1.z.string(), v4_1.z.any()).optional().meta({
148
+ description: "Additional metadata for the todo item."
149
+ })
150
+ })).meta({
151
+ title: "todos",
152
+ description: "The list of todos to write."
153
+ }),
154
+ }).meta({
155
+ title: "write_todo_request_body",
156
+ description: "The request body parameters for the write_todo tool.",
157
+ }), { "io": "input" }),
158
+ },
159
+ });
160
+ this.store = options.store || new TaskStore([]);
161
+ }
162
+ get Todos() {
163
+ return this.store.Todos;
164
+ }
165
+ run(input, log) {
166
+ if (!input.todos || !Array.isArray(input.todos)) {
167
+ throw new Error("Invalid todos provided.");
168
+ }
169
+ const logger = log || console;
170
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
171
+ let updateCount = 0;
172
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
173
+ let addCount = 0;
174
+ return new Promise((resolve, reject) => {
175
+ const todos = input.todos;
176
+ try {
177
+ //logger.info(`🛠️ Writing \`${todos.length}\` todos.`);
178
+ for (const t of todos) {
179
+ const idx = this.store.Todos.findIndex((todo) => todo.id === t.id);
180
+ if (idx >= 0) {
181
+ updateCount++;
182
+ this.store.Todos[idx] = {
183
+ id: t.id,
184
+ content: t.content,
185
+ status: t.status,
186
+ priority: t.priority,
187
+ created_at: t.created_at,
188
+ updated_at: t.updated_at,
189
+ metadata: t.metadata || {}
190
+ };
191
+ }
192
+ else {
193
+ addCount++;
194
+ this.store.Todos.push({
195
+ id: t.id,
196
+ content: t.content,
197
+ status: t.status,
198
+ priority: t.priority,
199
+ created_at: t.created_at,
200
+ updated_at: t.updated_at,
201
+ metadata: t.metadata || {}
202
+ });
203
+ }
204
+ }
205
+ const output = `📋 Updated task list with ${todos.length} items.`;
206
+ logger.info(output);
207
+ console.info("Tasks:");
208
+ for (const todo of this.store.Todos) {
209
+ console.info(`- [${todo.status === TodoStatus.COMPLETED ? '✅' : (todo.status === TodoStatus.IN_PROGRESS ? '⏳' : ' ')}] (${todo.priority}) ${todo.content} (ID: ${todo.id})`);
210
+ }
211
+ return resolve({
212
+ status: 'success',
213
+ output,
214
+ });
215
+ }
216
+ catch (error) {
217
+ logger.error('Error writing todos:', error);
218
+ reject(error);
219
+ }
220
+ });
221
+ }
222
+ }
223
+ exports.PSTodoWriteTool = PSTodoWriteTool;
224
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVG9kb1Rvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3Rvb2xzL1RvZG9Ub29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSx1REFBdUQ7Ozs7OztBQUV2RCxzREFBeUI7QUFFekIsK0JBQTJCO0FBRzNCLGdEQUE2QztBQUU3QyxJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDbEIsaUNBQW1CLENBQUE7SUFDbkIseUNBQTJCLENBQUE7SUFDM0IscUNBQXVCLENBQUE7QUFDM0IsQ0FBQyxFQUpXLFVBQVUsMEJBQVYsVUFBVSxRQUlyQjtBQUVELElBQVksWUFJWDtBQUpELFdBQVksWUFBWTtJQUNwQiw2QkFBYSxDQUFBO0lBQ2IsaUNBQWlCLENBQUE7SUFDakIsMkJBQVcsQ0FBQTtBQUNmLENBQUMsRUFKVyxZQUFZLDRCQUFaLFlBQVksUUFJdkI7QUFZRCxNQUFhLFNBQVM7SUFDVixZQUFZLEdBQVcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNoRCxLQUFLLENBQVM7SUFDZCxRQUFRLENBQVM7SUFDekIsWUFBWSxLQUFhLEVBQUUsUUFBZ0I7UUFDdkMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDO2dCQUNILElBQUksaUJBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztvQkFDNUIsTUFBTSxJQUFJLEdBQUcsaUJBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO29CQUNoRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFB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
@@ -0,0 +1,4 @@
1
+ export declare function sleep(ms: number): Promise<unknown>;
2
+ export declare function formatFileSize(bytes: number, decimalPoint?: number): string;
3
+ export declare function truncateString(str: string, num: number): string;
4
+ export declare function unEscapeHTML(text: string): string;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sleep = sleep;
4
+ exports.formatFileSize = formatFileSize;
5
+ exports.truncateString = truncateString;
6
+ exports.unEscapeHTML = unEscapeHTML;
7
+ async function sleep(ms) {
8
+ return new Promise(resolve => setTimeout(resolve, ms));
9
+ }
10
+ function formatFileSize(bytes, decimalPoint = 2) {
11
+ if (bytes === 0)
12
+ return '0 Bytes';
13
+ const k = 1024;
14
+ const dm = decimalPoint < 0 ? 0 : decimalPoint;
15
+ const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
16
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
17
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
18
+ }
19
+ function truncateString(str, num) {
20
+ if (str.length <= num) {
21
+ return str;
22
+ }
23
+ return str.slice(0, num) + '...';
24
+ }
25
+ function unEscapeHTML(text) {
26
+ const map = {
27
+ '&amp;': '&',
28
+ '&lt;': '<',
29
+ '&gt;': '>',
30
+ '&quot;': '"',
31
+ '&#039;': "'",
32
+ };
33
+ let result = text.replace(/&amp;|&lt;|&gt;|&quot;|&#039;/g, function (m) { return map[m]; });
34
+ // Unescape Unicode sequences
35
+ result = result.replace(/\\u[\dA-Fa-f]{4}/g, (unicode) => {
36
+ const codePoint = parseInt(unicode.slice(2), 16);
37
+ return String.fromCharCode(codePoint);
38
+ });
39
+ return result;
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNCQUVDO0FBR0Qsd0NBT0M7QUFFRCx3Q0FLQztBQUVELG9DQWdCQztBQXJDTSxLQUFLLFVBQVUsS0FBSyxDQUFDLEVBQVU7SUFDcEMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUN6RCxDQUFDO0FBR0QsU0FBZ0IsY0FBYyxDQUFDLEtBQWEsRUFBRSxZQUFZLEdBQUcsQ0FBQztJQUM1RCxJQUFJLEtBQUssS0FBSyxDQUFDO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDbEMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO0lBQ2YsTUFBTSxFQUFFLEdBQUcsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7SUFDL0MsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hFLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEQsT0FBTyxVQUFVLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzNFLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsR0FBVyxFQUFFLEdBQVc7SUFDckQsSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUNELE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO0FBQ25DLENBQUM7QUFFRCxTQUFnQixZQUFZLENBQUMsSUFBWTtJQUV2QyxNQUFNLEdBQUcsR0FBMkI7UUFDbEMsT0FBTyxFQUFFLEdBQUc7UUFDWixNQUFNLEVBQUUsR0FBRztRQUNYLE1BQU0sRUFBRSxHQUFHO1FBQ1gsUUFBUSxFQUFFLEdBQUc7UUFDYixRQUFRLEVBQUUsR0FBRztLQUNkLENBQUM7SUFDRixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGdDQUFnQyxFQUFFLFVBQVMsQ0FBQyxJQUFJLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUYsNkJBQTZCO0lBQzdCLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDckQsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakQsT0FBTyxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "psadk",
3
3
  "email": "rakesh.ravuri@publicissapient.com",
4
- "version": "1.1.0",
4
+ "version": "1.1.1",
5
5
  "description": "ps adk adapter",
6
6
  "main": "build/main/index.js",
7
7
  "typings": "build/main/index.d.ts",