psadk 1.2.4 → 1.3.0
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/PSAgent.js +2 -1
- package/build/main/lib/PSAgentLogger.js +3 -3
- package/build/main/lib/skills/constants.d.ts +12 -0
- package/build/main/lib/skills/constants.js +24 -0
- package/build/main/lib/skills/skillParser.d.ts +10 -0
- package/build/main/lib/skills/skillParser.js +40 -0
- package/build/main/lib/skills/skillsXMLMetaDataGenerator.d.ts +9 -0
- package/build/main/lib/skills/skillsXMLMetaDataGenerator.js +80 -0
- package/build/main/lib/skills/utils.d.ts +10 -0
- package/build/main/lib/skills/utils.js +48 -0
- package/build/main/lib/tools/PSClarifyTool.js +3 -1
- package/build/module/lib/PSAgent.js +2 -1
- package/build/module/lib/PSAgentLogger.js +3 -3
- package/build/module/lib/skills/constants.d.ts +12 -0
- package/build/module/lib/skills/constants.js +26 -0
- package/build/module/lib/skills/skillParser.d.ts +10 -0
- package/build/module/lib/skills/skillParser.js +40 -0
- package/build/module/lib/skills/skillsXMLMetaDataGenerator.d.ts +9 -0
- package/build/module/lib/skills/skillsXMLMetaDataGenerator.js +80 -0
- package/build/module/lib/skills/utils.d.ts +10 -0
- package/build/module/lib/skills/utils.js +48 -0
- package/build/module/lib/tools/PSClarifyTool.js +3 -1
- package/package.json +17 -17
- package/build/main/lib/ILogger.d.ts +0 -9
- package/build/main/lib/ILogger.js +0 -25
- package/build/main/lib/ai.d.ts +0 -11
- package/build/main/lib/ai.js +0 -127
- package/build/main/lib/async.d.ts +0 -20
- package/build/main/lib/async.js +0 -36
- package/build/main/lib/getServiceToken.d.ts +0 -1
- package/build/main/lib/getServiceToken.js +0 -3
- package/build/main/lib/number.d.ts +0 -43
- package/build/main/lib/number.js +0 -56
- package/build/main/lib/tests/PSAgent.spec copy.d.ts +0 -1
- package/build/main/lib/tests/PSAgent.spec copy.js +0 -53
- package/build/main/lib/tests/PSReadFileTool.spec copy.d.ts +0 -1
- package/build/main/lib/tests/PSReadFileTool.spec copy.js +0 -92
- package/build/main/lib/tools/PSAentTool.d.ts +0 -7
- package/build/main/lib/tools/PSAentTool.js +0 -78
- package/build/main/lib/tools/PSArtifactTool copy.d.ts +0 -7
- package/build/main/lib/tools/PSArtifactTool copy.js +0 -78
- package/build/main/lib/tools/ReadFileTool.d.ts +0 -10
- package/build/main/lib/tools/ReadFileTool.js +0 -68
- package/build/main/lib/tools/WebSearchTool.d.ts +0 -9
- package/build/main/lib/tools/WebSearchTool.js +0 -92
- package/build/main/lib/tools/WriteFileTool.d.ts +0 -10
- package/build/main/lib/tools/WriteFileTool.js +0 -74
- package/build/module/lib/async.d.ts +0 -20
- package/build/module/lib/async.js +0 -32
- package/build/module/lib/number.d.ts +0 -43
- package/build/module/lib/number.js +0 -51
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
console.log;
|
|
4
|
-
class PSAgentLogger {
|
|
5
|
-
log(type, message, ...optionalParams) {
|
|
6
|
-
console.log(`[${new Date().toISOString()}] [${type.toUpperCase()}] ${message}`, ...optionalParams);
|
|
7
|
-
}
|
|
8
|
-
debug(message, ...optionalParams) {
|
|
9
|
-
this.log('debug', message, ...optionalParams);
|
|
10
|
-
}
|
|
11
|
-
info(message, ...optionalParams) {
|
|
12
|
-
this.log('info', message, ...optionalParams);
|
|
13
|
-
}
|
|
14
|
-
error(message, ...optionalParams) {
|
|
15
|
-
this.log('error', message, ...optionalParams);
|
|
16
|
-
}
|
|
17
|
-
warn(message, ...optionalParams) {
|
|
18
|
-
this.log('warn', message, ...optionalParams);
|
|
19
|
-
}
|
|
20
|
-
done(message = '', ...optionalParams) {
|
|
21
|
-
this.log('done', message, ...optionalParams);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
exports.default = PSAgentLogger;
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvSUxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLE9BQU8sQ0FBQyxHQUFHLENBQUE7QUFFWCxNQUFxQixhQUFhO0lBQ2hDLEdBQUcsQ0FBQyxJQUFZLEVBQUUsT0FBVyxFQUFFLEdBQUcsY0FBb0I7UUFDcEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLE9BQU8sRUFBRSxFQUFFLEdBQUcsY0FBYyxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUNNLEtBQUssQ0FBQyxPQUFlLEVBQUUsR0FBRyxjQUFvQjtRQUNuRCxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBQ00sSUFBSSxDQUFDLE9BQWUsRUFBRSxHQUFHLGNBQW9CO1FBQ2xELElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLGNBQWMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDTSxLQUFLLENBQUMsT0FBZSxFQUFFLEdBQUcsY0FBb0I7UUFDbkQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsY0FBYyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUNNLElBQUksQ0FBQyxPQUFlLEVBQUUsR0FBRyxjQUFvQjtRQUNsRCxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBQ00sSUFBSSxDQUFDLFVBQWtCLEVBQUUsRUFBRSxHQUFHLGNBQW9CO1FBQ3ZELElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLGNBQWMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDRjtBQW5CRCxnQ0FtQkMifQ==
|
package/build/main/lib/ai.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { EmbeddingsInterface } from '@langchain/core/embeddings';
|
|
2
|
-
export default class AIHelper implements EmbeddingsInterface {
|
|
3
|
-
private readonly token;
|
|
4
|
-
private dimensions;
|
|
5
|
-
constructor(token: string);
|
|
6
|
-
getDimensions(embeddingModel?: string): number;
|
|
7
|
-
embedQuery(text: string, embeddingModel?: string): Promise<number[]>;
|
|
8
|
-
embedDocuments(text: string[], embeddingModel?: string): Promise<number[][]>;
|
|
9
|
-
getModels(): Promise<any>;
|
|
10
|
-
llm(prompt: string, model?: string, systemmsg?: string): Promise<any>;
|
|
11
|
-
}
|
package/build/main/lib/ai.js
DELETED
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const logger_1 = __importDefault(require("../utils/logger"));
|
|
7
|
-
const log = (0, logger_1.default)('sapi:ai:');
|
|
8
|
-
// fetch-retry can also wrap Node.js's native fetch API implementation:
|
|
9
|
-
const fetch = require('fetch-retry')(global.fetch);
|
|
10
|
-
class AIHelper {
|
|
11
|
-
constructor(token) {
|
|
12
|
-
this.token = token;
|
|
13
|
-
this.dimensions = 1536; // default to 1536 dimensions (for text-embedding-3-small)
|
|
14
|
-
}
|
|
15
|
-
getDimensions(embeddingModel = 'text-embedding-3-small') {
|
|
16
|
-
if (embeddingModel === 'text-embedding-3-small') {
|
|
17
|
-
return 1536;
|
|
18
|
-
}
|
|
19
|
-
else if (embeddingModel === 'text-embedding-3-large') {
|
|
20
|
-
return 3072;
|
|
21
|
-
}
|
|
22
|
-
else if (embeddingModel === 'text-embedding-ada-002') {
|
|
23
|
-
return 1536;
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
return this.dimensions;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
async embedQuery(text, embeddingModel = 'text-embedding-3-small') {
|
|
30
|
-
//return this.model.embedQuery(text);
|
|
31
|
-
const response = await fetch(`${process.env.EAPI_BASE}/api/v1/vectors/embeddings`, {
|
|
32
|
-
method: 'POST',
|
|
33
|
-
headers: {
|
|
34
|
-
'Content-Type': 'application/json',
|
|
35
|
-
'Authorization': `Bearer ${this.token}`,
|
|
36
|
-
'x-client-id': process.env.CLIENT_ID || '',
|
|
37
|
-
},
|
|
38
|
-
body: JSON.stringify({
|
|
39
|
-
input: text,
|
|
40
|
-
model: embeddingModel,
|
|
41
|
-
"dimensions": this.getDimensions(embeddingModel),
|
|
42
|
-
}),
|
|
43
|
-
});
|
|
44
|
-
const data = await response.json();
|
|
45
|
-
if (!response.ok) {
|
|
46
|
-
console.error(`Failed to fetch embedding: ${response.status} ${response.statusText}`, data);
|
|
47
|
-
throw new Error(`HTTP error! status: ${response.status}`);
|
|
48
|
-
}
|
|
49
|
-
return data.data[0].embedding;
|
|
50
|
-
}
|
|
51
|
-
async embedDocuments(text, embeddingModel = 'text-embedding-3-small') {
|
|
52
|
-
const response = await fetch(`${process.env.EAPI_BASE}/api/v1/vectors/embeddings`, {
|
|
53
|
-
method: 'POST',
|
|
54
|
-
headers: {
|
|
55
|
-
'Content-Type': 'application/json',
|
|
56
|
-
'Authorization': `Bearer ${this.token}`,
|
|
57
|
-
'x-client-id': process.env.CLIENT_ID || '',
|
|
58
|
-
},
|
|
59
|
-
body: JSON.stringify({
|
|
60
|
-
input: text,
|
|
61
|
-
model: embeddingModel,
|
|
62
|
-
"dimensions": this.getDimensions(embeddingModel),
|
|
63
|
-
}),
|
|
64
|
-
});
|
|
65
|
-
const data = await response.json();
|
|
66
|
-
if (!response.ok) {
|
|
67
|
-
console.error(`Failed to fetch embedding: ${response.status} ${response.statusText}`, data);
|
|
68
|
-
throw new Error(`HTTP error! status: ${response.status}`);
|
|
69
|
-
}
|
|
70
|
-
return data.data.map((item) => item.embedding);
|
|
71
|
-
}
|
|
72
|
-
async getModels() {
|
|
73
|
-
const lres = await fetch(`${process.env.EAPI_BASE}/api/v1/llm/models`, {
|
|
74
|
-
headers: {
|
|
75
|
-
'Authorization': `Bearer ${this.token}`,
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
if (!lres.ok) {
|
|
79
|
-
console.error(`Failed to fetch LLM models: ${lres.status} ${lres.statusText}`);
|
|
80
|
-
}
|
|
81
|
-
const { data: models } = await lres.json();
|
|
82
|
-
return models;
|
|
83
|
-
}
|
|
84
|
-
async llm(prompt, model = "o3-mini", systemmsg = "You are a helpful assistant. Answer as concisely as possible.") {
|
|
85
|
-
try {
|
|
86
|
-
const res = await fetch(`${process.env.EAPI_BASE}/api/v1/llm/chat/completions`, {
|
|
87
|
-
method: "POST",
|
|
88
|
-
headers: {
|
|
89
|
-
"Content-Type": "application/json",
|
|
90
|
-
"Authorization": `Bearer ${this.token}`,
|
|
91
|
-
},
|
|
92
|
-
body: JSON.stringify({
|
|
93
|
-
model,
|
|
94
|
-
messages: [
|
|
95
|
-
{ role: "system", content: systemmsg },
|
|
96
|
-
{ role: "user", content: prompt }
|
|
97
|
-
]
|
|
98
|
-
}),
|
|
99
|
-
retries: 3,
|
|
100
|
-
retryOn: function (attempt, error, response) {
|
|
101
|
-
// retry on any network error, or 4xx or 5xx status codes
|
|
102
|
-
if (error !== null || response.status >= 400 && attempt < 4) {
|
|
103
|
-
log.warn(`retrying execute agent, attempt number ${attempt + 1}`);
|
|
104
|
-
return true;
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
retryDelay: function (attempt, error, response) {
|
|
108
|
-
return Math.pow(2, attempt) * 1000; // 1000, 2000, 4000
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
if (!res.ok) {
|
|
112
|
-
log.debug(`Failed to fetch LLM completion: ${res.status} ${res.statusText}`);
|
|
113
|
-
const errorData = (await res.json());
|
|
114
|
-
log.debug(errorData);
|
|
115
|
-
throw new Error(`LLM call failed.\n\n status: ${res.status}, details: ${errorData}`);
|
|
116
|
-
}
|
|
117
|
-
const data = await res.json();
|
|
118
|
-
return data;
|
|
119
|
-
}
|
|
120
|
-
catch (error) {
|
|
121
|
-
log.debug('Error in llm call:', error);
|
|
122
|
-
throw error;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
exports.default = AIHelper;
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2FpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsNkRBQXFDO0FBQ3JDLE1BQU0sR0FBRyxHQUFHLElBQUEsZ0JBQU0sRUFBQyxVQUFVLENBQUMsQ0FBQztBQUUvQix1RUFBdUU7QUFDdkUsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUNuRCxNQUFxQixRQUFRO0lBSTNCLFlBQVksS0FBYTtRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDLDBEQUEwRDtJQUNwRixDQUFDO0lBRU0sYUFBYSxDQUFDLGNBQWMsR0FBQyx3QkFBd0I7UUFDMUQsSUFBSSxjQUFjLEtBQUssd0JBQXdCLEVBQUUsQ0FBQztZQUM5QyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7YUFBTSxJQUFJLGNBQWMsS0FBSyx3QkFBd0IsRUFBRSxDQUFDO1lBQ3ZELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQzthQUFNLElBQUksY0FBYyxLQUFLLHdCQUF3QixFQUFFLENBQUM7WUFDdkQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO2FBQUssQ0FBQztZQUNMLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUN6QixDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBWSxFQUFFLGNBQWMsR0FBQyx3QkFBd0I7UUFDcEUscUNBQXFDO1FBQ3JDLE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLDRCQUE0QixFQUFFO1lBQ2pGLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFO2dCQUNQLGNBQWMsRUFBRSxrQkFBa0I7Z0JBQ2xDLGVBQWUsRUFBRSxVQUFVLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ3ZDLGFBQWEsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsSUFBRSxFQUFFO2FBQ3pDO1lBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ25CLEtBQUssRUFBRSxJQUFJO2dCQUNYLEtBQUssRUFBRSxjQUFjO2dCQUNyQixZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUM7YUFDakQsQ0FBQztTQUNILENBQUMsQ0FBQztRQUNILE1BQU0sSUFBSSxHQUFDLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsUUFBUSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDNUYsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFxQixDQUFDO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYyxDQUFDLElBQWMsRUFBRSxjQUFjLEdBQUMsd0JBQXdCO1FBQzFFLE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLDRCQUE0QixFQUFFO1lBQ2pGLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFO2dCQUNQLGNBQWMsRUFBRSxrQkFBa0I7Z0JBQ2xDLGVBQWUsRUFBRSxVQUFVLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ3ZDLGFBQWEsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsSUFBRSxFQUFFO2FBQ3pDO1lBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ25CLEtBQUssRUFBRSxJQUFJO2dCQUNYLEtBQUssRUFBRSxjQUFjO2dCQUNyQixZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUM7YUFDakQsQ0FBQztTQUNILENBQUMsQ0FBQztRQUNILE1BQU0sSUFBSSxHQUFDLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsUUFBUSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDNUYsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQWUsQ0FBQztJQUNwRSxDQUFDO0lBR0QsS0FBSyxDQUFDLFNBQVM7UUFDYixNQUFNLElBQUksR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxvQkFBb0IsRUFBRTtZQUNuRSxPQUFPLEVBQUU7Z0JBQ1AsZUFBZSxFQUFFLFVBQVUsSUFBSSxDQUFDLEtBQUssRUFBRTthQUN4QztTQUNGLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDYixPQUFPLENBQUMsS0FBSyxDQUFDLCtCQUErQixJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLENBQUM7UUFDRCxNQUFNLEVBQUMsSUFBSSxFQUFDLE1BQU0sRUFBQyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hDLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQWEsRUFBRSxLQUFLLEdBQUcsU0FBUyxFQUFFLFNBQVMsR0FBQywrREFBK0Q7UUFDbkgsSUFBSSxDQUFDO1lBQ0gsTUFBTSxHQUFHLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsOEJBQThCLEVBQUU7Z0JBQzlFLE1BQU0sRUFBRSxNQUFNO2dCQUNkLE9BQU8sRUFBRTtvQkFDUCxjQUFjLEVBQUUsa0JBQWtCO29CQUNsQyxlQUFlLEVBQUUsVUFBVSxJQUFJLENBQUMsS0FBSyxFQUFFO2lCQUN4QztnQkFDRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztvQkFDbkIsS0FBSztvQkFDTCxRQUFRLEVBQUU7d0JBQ1IsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUU7d0JBQ3RDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFO3FCQUNsQztpQkFDRixDQUFDO2dCQUNGLE9BQU8sRUFBRSxDQUFDO2dCQUNWLE9BQU8sRUFBRSxVQUFTLE9BQVcsRUFBRSxLQUFTLEVBQUUsUUFBWTtvQkFDcEQseURBQXlEO29CQUN6RCxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksUUFBUSxDQUFDLE1BQU0sSUFBSSxHQUFHLElBQUksT0FBTyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUM1RCxHQUFHLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxPQUFPLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQzt3QkFDbEUsT0FBTyxJQUFJLENBQUM7b0JBQ2QsQ0FBQztnQkFDSCxDQUFDO2dCQUNELFVBQVUsRUFBRSxVQUFTLE9BQVcsRUFBRSxLQUFTLEVBQUUsUUFBWTtvQkFDdkQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxtQkFBbUI7Z0JBQ3pELENBQUM7YUFDRixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNaLEdBQUcsQ0FBQyxLQUFLLENBQUMsbUNBQW1DLEdBQUcsQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQzdFLE1BQU0sU0FBUyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDckMsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsR0FBRyxDQUFDLE1BQU0sY0FBYyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZGLENBQUM7WUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM5QixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsR0FBRyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN2QyxNQUFNLEtBQUssQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUF4SEQsMkJBd0hDIn0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A sample async function (to demo Typescript's es7 async/await down-leveling).
|
|
3
|
-
*
|
|
4
|
-
* ### Example (es imports)
|
|
5
|
-
* ```js
|
|
6
|
-
* import { asyncABC } from 'typescript-starter'
|
|
7
|
-
* console.log(await asyncABC())
|
|
8
|
-
* // => ['a','b','c']
|
|
9
|
-
* ```
|
|
10
|
-
*
|
|
11
|
-
* ### Example (commonjs)
|
|
12
|
-
* ```js
|
|
13
|
-
* var double = require('typescript-starter').asyncABC;
|
|
14
|
-
* asyncABC().then(console.log);
|
|
15
|
-
* // => ['a','b','c']
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* @returns a Promise which should contain `['a','b','c']`
|
|
19
|
-
*/
|
|
20
|
-
export declare const asyncABC: () => Promise<string[]>;
|
package/build/main/lib/async.js
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.asyncABC = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* A sample async function (to demo Typescript's es7 async/await down-leveling).
|
|
6
|
-
*
|
|
7
|
-
* ### Example (es imports)
|
|
8
|
-
* ```js
|
|
9
|
-
* import { asyncABC } from 'typescript-starter'
|
|
10
|
-
* console.log(await asyncABC())
|
|
11
|
-
* // => ['a','b','c']
|
|
12
|
-
* ```
|
|
13
|
-
*
|
|
14
|
-
* ### Example (commonjs)
|
|
15
|
-
* ```js
|
|
16
|
-
* var double = require('typescript-starter').asyncABC;
|
|
17
|
-
* asyncABC().then(console.log);
|
|
18
|
-
* // => ['a','b','c']
|
|
19
|
-
* ```
|
|
20
|
-
*
|
|
21
|
-
* @returns a Promise which should contain `['a','b','c']`
|
|
22
|
-
*/
|
|
23
|
-
const asyncABC = async () => {
|
|
24
|
-
const somethingSlow = (index) => {
|
|
25
|
-
const storage = 'abc'.charAt(index);
|
|
26
|
-
return new Promise((resolve) =>
|
|
27
|
-
// later...
|
|
28
|
-
resolve(storage));
|
|
29
|
-
};
|
|
30
|
-
const a = await somethingSlow(0);
|
|
31
|
-
const b = await somethingSlow(1);
|
|
32
|
-
const c = await somethingSlow(2);
|
|
33
|
-
return [a, b, c];
|
|
34
|
-
};
|
|
35
|
-
exports.asyncABC = asyncABC;
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2FzeW5jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSSxNQUFNLFFBQVEsR0FBRyxLQUFLLElBQUksRUFBRTtJQUNqQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWdCLEVBQUUsRUFBRTtRQUN6QyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sSUFBSSxPQUFPLENBQVMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUNyQyxXQUFXO1FBQ1gsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUNqQixDQUFDO0lBQ0osQ0FBQyxDQUFDO0lBQ0YsTUFBTSxDQUFDLEdBQUcsTUFBTSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakMsTUFBTSxDQUFDLEdBQUcsTUFBTSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakMsTUFBTSxDQUFDLEdBQUcsTUFBTSxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBWlcsUUFBQSxRQUFRLFlBWW5CIn0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0U2VydmljZVRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9nZXRTZXJ2aWNlVG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Multiplies a value by 2. (Also a full example of TypeDoc's functionality.)
|
|
3
|
-
*
|
|
4
|
-
* ### Example (es module)
|
|
5
|
-
* ```js
|
|
6
|
-
* import { double } from 'typescript-starter'
|
|
7
|
-
* console.log(double(4))
|
|
8
|
-
* // => 8
|
|
9
|
-
* ```
|
|
10
|
-
*
|
|
11
|
-
* ### Example (commonjs)
|
|
12
|
-
* ```js
|
|
13
|
-
* var double = require('typescript-starter').double;
|
|
14
|
-
* console.log(double(4))
|
|
15
|
-
* // => 8
|
|
16
|
-
* ```
|
|
17
|
-
*
|
|
18
|
-
* @param value - Comment describing the `value` parameter.
|
|
19
|
-
* @returns Comment describing the return type.
|
|
20
|
-
* @anotherNote Some other value.
|
|
21
|
-
*/
|
|
22
|
-
export declare const double: (value: number) => number;
|
|
23
|
-
/**
|
|
24
|
-
* Raise the value of the first parameter to the power of the second using the
|
|
25
|
-
* es7 exponentiation operator (`**`).
|
|
26
|
-
*
|
|
27
|
-
* ### Example (es module)
|
|
28
|
-
* ```js
|
|
29
|
-
* import { power } from 'typescript-starter'
|
|
30
|
-
* console.log(power(2,3))
|
|
31
|
-
* // => 8
|
|
32
|
-
* ```
|
|
33
|
-
*
|
|
34
|
-
* ### Example (commonjs)
|
|
35
|
-
* ```js
|
|
36
|
-
* var power = require('typescript-starter').power;
|
|
37
|
-
* console.log(power(2,3))
|
|
38
|
-
* // => 8
|
|
39
|
-
* ```
|
|
40
|
-
* @param base - the base to exponentiate
|
|
41
|
-
* @param exponent - the power to which to raise the base
|
|
42
|
-
*/
|
|
43
|
-
export declare const power: (base: number, exponent: number) => number;
|
package/build/main/lib/number.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.power = exports.double = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Multiplies a value by 2. (Also a full example of TypeDoc's functionality.)
|
|
6
|
-
*
|
|
7
|
-
* ### Example (es module)
|
|
8
|
-
* ```js
|
|
9
|
-
* import { double } from 'typescript-starter'
|
|
10
|
-
* console.log(double(4))
|
|
11
|
-
* // => 8
|
|
12
|
-
* ```
|
|
13
|
-
*
|
|
14
|
-
* ### Example (commonjs)
|
|
15
|
-
* ```js
|
|
16
|
-
* var double = require('typescript-starter').double;
|
|
17
|
-
* console.log(double(4))
|
|
18
|
-
* // => 8
|
|
19
|
-
* ```
|
|
20
|
-
*
|
|
21
|
-
* @param value - Comment describing the `value` parameter.
|
|
22
|
-
* @returns Comment describing the return type.
|
|
23
|
-
* @anotherNote Some other value.
|
|
24
|
-
*/
|
|
25
|
-
const double = (value) => {
|
|
26
|
-
return value * 2;
|
|
27
|
-
};
|
|
28
|
-
exports.double = double;
|
|
29
|
-
/**
|
|
30
|
-
* Raise the value of the first parameter to the power of the second using the
|
|
31
|
-
* es7 exponentiation operator (`**`).
|
|
32
|
-
*
|
|
33
|
-
* ### Example (es module)
|
|
34
|
-
* ```js
|
|
35
|
-
* import { power } from 'typescript-starter'
|
|
36
|
-
* console.log(power(2,3))
|
|
37
|
-
* // => 8
|
|
38
|
-
* ```
|
|
39
|
-
*
|
|
40
|
-
* ### Example (commonjs)
|
|
41
|
-
* ```js
|
|
42
|
-
* var power = require('typescript-starter').power;
|
|
43
|
-
* console.log(power(2,3))
|
|
44
|
-
* // => 8
|
|
45
|
-
* ```
|
|
46
|
-
* @param base - the base to exponentiate
|
|
47
|
-
* @param exponent - the power to which to raise the base
|
|
48
|
-
*/
|
|
49
|
-
const power = (base, exponent) => {
|
|
50
|
-
/**
|
|
51
|
-
* This es7 exponentiation operator is transpiled by TypeScript
|
|
52
|
-
*/
|
|
53
|
-
return base ** exponent;
|
|
54
|
-
};
|
|
55
|
-
exports.power = power;
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9udW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBQ0ksTUFBTSxNQUFNLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRTtJQUN0QyxPQUFPLEtBQUssR0FBRyxDQUFDLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBRlcsUUFBQSxNQUFNLFVBRWpCO0FBRUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFDSSxNQUFNLEtBQUssR0FBRyxDQUFDLElBQVksRUFBRSxRQUFnQixFQUFFLEVBQUU7SUFDdEQ7O09BRUc7SUFDSCxPQUFPLElBQUksSUFBSSxRQUFRLENBQUM7QUFDMUIsQ0FBQyxDQUFDO0FBTFcsUUFBQSxLQUFLLFNBS2hCIn0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
7
|
-
const ava_1 = __importDefault(require("ava"));
|
|
8
|
-
const PSAgent_1 = require("../PSAgent");
|
|
9
|
-
const PSAgentTool_1 = require("../PSAgentTool");
|
|
10
|
-
(0, ava_1.default)('basic construct', (t) => {
|
|
11
|
-
const agent = new PSAgent_1.PSAgent({
|
|
12
|
-
name: "TestAgent",
|
|
13
|
-
description: "Test Agent",
|
|
14
|
-
instruction: "You are a test agent",
|
|
15
|
-
tools: []
|
|
16
|
-
});
|
|
17
|
-
t.is(agent.Name, "TestAgent");
|
|
18
|
-
t.is(agent.Description, "Test Agent");
|
|
19
|
-
t.is(agent.Instruction, "You are a test agent");
|
|
20
|
-
t.is(agent.Tools.length, 0);
|
|
21
|
-
t.pass();
|
|
22
|
-
});
|
|
23
|
-
(0, ava_1.default)('add tool', (t) => {
|
|
24
|
-
const agent = new PSAgent_1.PSAgent({
|
|
25
|
-
name: "TestAgent",
|
|
26
|
-
description: "Test Agent",
|
|
27
|
-
instruction: "You are a test agent",
|
|
28
|
-
tools: []
|
|
29
|
-
});
|
|
30
|
-
const tool = new PSAgentTool_1.PSAgentTool({
|
|
31
|
-
name: "TestTool",
|
|
32
|
-
description: "Test Tool",
|
|
33
|
-
inputschema: {
|
|
34
|
-
//title: "Test Tool Input",
|
|
35
|
-
//description: "Input for Test Tool",
|
|
36
|
-
requestBody: {
|
|
37
|
-
type: "object",
|
|
38
|
-
properties: {
|
|
39
|
-
query: { type: "string", description: "user query" },
|
|
40
|
-
},
|
|
41
|
-
required: ["query",]
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
runCallback: async (_input) => {
|
|
45
|
-
return { result: "Test Tool Executed ", output: _input.query };
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
agent.addTool(tool);
|
|
49
|
-
t.is(agent.Tools.length, 1);
|
|
50
|
-
t.is(agent.Tools[0].Name, "TestTool");
|
|
51
|
-
t.pass();
|
|
52
|
-
});
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUFNBZ2VudC5zcGVjIGNvcHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3Rlc3RzL1BTQWdlbnQuc3BlYyBjb3B5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsdURBQXVEO0FBQ3ZELDhDQUF1QjtBQUV2Qix3Q0FBcUM7QUFDckMsZ0RBQTZDO0FBRzdDLElBQUEsYUFBSSxFQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDNUIsTUFBTSxLQUFLLEdBQUUsSUFBSSxpQkFBTyxDQUFDO1FBQ3ZCLElBQUksRUFBRSxXQUFXO1FBQ2pCLFdBQVcsRUFBRSxZQUFZO1FBQ3pCLFdBQVcsRUFBRSxzQkFBc0I7UUFDbkMsS0FBSyxFQUFFLEVBQUU7S0FDVixDQUFDLENBQUM7SUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDOUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO0lBQ2hELENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDNUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ1gsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFBLGFBQUksRUFBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUNyQixNQUFNLEtBQUssR0FBRSxJQUFJLGlCQUFPLENBQUM7UUFDdkIsSUFBSSxFQUFFLFdBQVc7UUFDakIsV0FBVyxFQUFFLFlBQVk7UUFDekIsV0FBVyxFQUFFLHNCQUFzQjtRQUNuQyxLQUFLLEVBQUUsRUFBRTtLQUNWLENBQUMsQ0FBQztJQUNILE1BQU0sSUFBSSxHQUFDLElBQUkseUJBQVcsQ0FBQztRQUN6QixJQUFJLEVBQUUsVUFBVTtRQUNoQixXQUFXLEVBQUUsV0FBVztRQUN4QixXQUFXLEVBQUU7WUFDWCwyQkFBMkI7WUFDM0IscUNBQXFDO1lBQ3JDLFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsUUFBUTtnQkFDZCxVQUFVLEVBQUU7b0JBQ1YsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFO2lCQUNyRDtnQkFDRCxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUU7YUFDckI7U0FDRjtRQUNELFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBMkIsRUFBRSxFQUFFO1lBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUMsQ0FBQztRQUNoRSxDQUFDO0tBQ0YsQ0FBQyxDQUFDO0lBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVCLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDdEMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ1gsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
7
|
-
const node_fs_1 = __importDefault(require("node:fs"));
|
|
8
|
-
const node_os_1 = __importDefault(require("node:os"));
|
|
9
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
10
|
-
const ava_1 = __importDefault(require("ava"));
|
|
11
|
-
const uuid_1 = require("uuid");
|
|
12
|
-
const PSReadFileTool_1 = require("../tools/PSReadFileTool");
|
|
13
|
-
(0, ava_1.default)('basic construct', async (t) => {
|
|
14
|
-
const td = node_path_1.default.join(node_os_1.default.tmpdir(), (0, uuid_1.v4)());
|
|
15
|
-
const readTool = new PSReadFileTool_1.PSReadFileTool({
|
|
16
|
-
paths: [td],
|
|
17
|
-
});
|
|
18
|
-
t.not(readTool, null);
|
|
19
|
-
t.pass();
|
|
20
|
-
});
|
|
21
|
-
(0, ava_1.default)('read invalid file', async (t) => {
|
|
22
|
-
const td = node_path_1.default.join(node_os_1.default.tmpdir(), (0, uuid_1.v4)());
|
|
23
|
-
const readTool = new PSReadFileTool_1.PSReadFileTool({
|
|
24
|
-
paths: [td],
|
|
25
|
-
});
|
|
26
|
-
try {
|
|
27
|
-
await readTool.run({
|
|
28
|
-
'path': 'file1.txt',
|
|
29
|
-
});
|
|
30
|
-
t.fail('Should have failed as file does not exist');
|
|
31
|
-
}
|
|
32
|
-
catch (err) {
|
|
33
|
-
t.is(err.message, 'File not found at path: file1.txt');
|
|
34
|
-
}
|
|
35
|
-
t.pass();
|
|
36
|
-
});
|
|
37
|
-
(0, ava_1.default)('read valid file', async (t) => {
|
|
38
|
-
const td = node_path_1.default.join(node_os_1.default.tmpdir(), (0, uuid_1.v4)());
|
|
39
|
-
node_fs_1.default.mkdirSync(td, { recursive: true });
|
|
40
|
-
const filePath = node_path_1.default.join(td, 'file1.txt');
|
|
41
|
-
node_fs_1.default.writeFileSync(filePath, 'This is a test file.', 'utf-8');
|
|
42
|
-
const readTool = new PSReadFileTool_1.PSReadFileTool({
|
|
43
|
-
paths: [td],
|
|
44
|
-
});
|
|
45
|
-
try {
|
|
46
|
-
const res = await readTool.run({
|
|
47
|
-
'path': 'file1.txt',
|
|
48
|
-
});
|
|
49
|
-
t.is(res.status, 'success');
|
|
50
|
-
t.is(res.size, 20);
|
|
51
|
-
t.is(res.content, 'This is a test file.');
|
|
52
|
-
}
|
|
53
|
-
catch (err) {
|
|
54
|
-
console.error(err);
|
|
55
|
-
t.fail('Failed to read file');
|
|
56
|
-
}
|
|
57
|
-
finally {
|
|
58
|
-
node_fs_1.default.rmSync(td, { recursive: true, force: true });
|
|
59
|
-
}
|
|
60
|
-
t.pass();
|
|
61
|
-
});
|
|
62
|
-
// test('add tool', (t) => {
|
|
63
|
-
// const agent =new PSAgent({
|
|
64
|
-
// name: "TestAgent",
|
|
65
|
-
// description: "Test Agent",
|
|
66
|
-
// instruction: "You are a test agent",
|
|
67
|
-
// tools: []
|
|
68
|
-
// });
|
|
69
|
-
// const tool=new PSAgentTool({
|
|
70
|
-
// name: "TestTool",
|
|
71
|
-
// description: "Test Tool",
|
|
72
|
-
// inputschema: {
|
|
73
|
-
// //title: "Test Tool Input",
|
|
74
|
-
// //description: "Input for Test Tool",
|
|
75
|
-
// requestBody: {
|
|
76
|
-
// type: "object",
|
|
77
|
-
// properties: {
|
|
78
|
-
// query: { type: "string", description: "user query" },
|
|
79
|
-
// },
|
|
80
|
-
// required: ["query",]
|
|
81
|
-
// }
|
|
82
|
-
// },
|
|
83
|
-
// runCallback: async (_input: Record<string, any>) => {
|
|
84
|
-
// return { result: "Test Tool Executed ", output: _input.query};
|
|
85
|
-
// }
|
|
86
|
-
// });
|
|
87
|
-
// agent.addTool(tool);
|
|
88
|
-
// t.is(agent.Tools.length, 1);
|
|
89
|
-
// t.is(agent.Tools[0].Name, "TestTool");
|
|
90
|
-
// t.pass();
|
|
91
|
-
// });
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUFNSZWFkRmlsZVRvb2wuc3BlYyBjb3B5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90ZXN0cy9QU1JlYWRGaWxlVG9vbC5zcGVjIGNvcHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1REFBdUQ7QUFDdkQsc0RBQXlCO0FBQ3pCLHNEQUF5QjtBQUN6QiwwREFBNkI7QUFFN0IsOENBQXVCO0FBQ3ZCLCtCQUFvQztBQUVwQyw0REFBeUQ7QUFFekQsSUFBQSxhQUFJLEVBQUMsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFO0lBQ2xDLE1BQU0sRUFBRSxHQUFHLG1CQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBQSxTQUFNLEdBQUUsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sUUFBUSxHQUFFLElBQUksK0JBQWMsQ0FBQztRQUNqQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7S0FDWixDQUFDLENBQUM7SUFDSCxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN0QixDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDWCxDQUFDLENBQUMsQ0FBQztBQUNILElBQUEsYUFBSSxFQUFDLG1CQUFtQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTtJQUNwQyxNQUFNLEVBQUUsR0FBRyxtQkFBSSxDQUFDLElBQUksQ0FBQyxpQkFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLElBQUEsU0FBTSxHQUFFLENBQUMsQ0FBQztJQUM1QyxNQUFNLFFBQVEsR0FBRSxJQUFJLCtCQUFjLENBQUM7UUFDakMsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDO0tBQ1osQ0FBQyxDQUFDO0lBQ0gsSUFBSSxDQUFDO1FBQ0gsTUFBTSxRQUFRLENBQUMsR0FBRyxDQUFDO1lBQ2pCLE1BQU0sRUFBRSxXQUFXO1NBQ3BCLENBQUMsQ0FB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
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { PSAgentTool } from "../PSAgentTool";
|
|
2
|
-
export declare class PSArtifactTool extends PSAgentTool {
|
|
3
|
-
static TOOL_NAME: string;
|
|
4
|
-
private readonly artifacts;
|
|
5
|
-
constructor(artifactsStore?: Record<string, string>);
|
|
6
|
-
run(input: Record<string, any>): Promise<Record<string, any>>;
|
|
7
|
-
}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PSArtifactTool = void 0;
|
|
4
|
-
const PSAgentTool_1 = require("../PSAgentTool");
|
|
5
|
-
class PSArtifactTool extends PSAgentTool_1.PSAgentTool {
|
|
6
|
-
constructor(artifactsStore) {
|
|
7
|
-
super({
|
|
8
|
-
name: PSArtifactTool.TOOL_NAME,
|
|
9
|
-
description: `Use this ${PSArtifactTool.TOOL_NAME} tool to read or write text artifacts based on the content provided.
|
|
10
|
-
The input is a JSON object with the following properties:
|
|
11
|
-
- 'name' (string) - the name of the artifact to be created or modified,
|
|
12
|
-
- 'content' (string) - the text content to be processed, this is not required for read action,
|
|
13
|
-
- 'action' (string) - the action to perform on the content, either 'read' or 'write'.
|
|
14
|
-
The output will be a JSON object with the status and outout result of the action.`,
|
|
15
|
-
inputschema: {
|
|
16
|
-
url: `http://localhost/${PSArtifactTool.TOOL_NAME}`,
|
|
17
|
-
method: "POST",
|
|
18
|
-
title: `${PSArtifactTool.TOOL_NAME}_inputs`,
|
|
19
|
-
description: "Input for Artifact Tool",
|
|
20
|
-
requestBody: {
|
|
21
|
-
type: "object",
|
|
22
|
-
properties: {
|
|
23
|
-
name: {
|
|
24
|
-
type: "string",
|
|
25
|
-
title: "name",
|
|
26
|
-
description: "The name of the artifact",
|
|
27
|
-
},
|
|
28
|
-
content: {
|
|
29
|
-
type: "string",
|
|
30
|
-
title: "content",
|
|
31
|
-
description: "The content of the artifact",
|
|
32
|
-
},
|
|
33
|
-
action: {
|
|
34
|
-
type: "string",
|
|
35
|
-
title: "action",
|
|
36
|
-
description: "the action to perform on the content, either 'read' or 'write'",
|
|
37
|
-
enum: ["read", "write"],
|
|
38
|
-
}
|
|
39
|
-
},
|
|
40
|
-
required: ["name", "action"]
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
this.artifacts = {};
|
|
45
|
-
if (artifactsStore) {
|
|
46
|
-
this.artifacts = artifactsStore;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
async run(input) {
|
|
50
|
-
const name = input.name;
|
|
51
|
-
const action = input.action;
|
|
52
|
-
if (!name || name.trim().length === 0) {
|
|
53
|
-
throw new Error("name should not be empty");
|
|
54
|
-
}
|
|
55
|
-
const isExisting = this.artifacts[name];
|
|
56
|
-
if (action === "read") {
|
|
57
|
-
return {
|
|
58
|
-
status: "success",
|
|
59
|
-
output: this.artifacts[name],
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
else if (action == "write") {
|
|
63
|
-
const content = input.content || '';
|
|
64
|
-
this.artifacts[name] = content;
|
|
65
|
-
return {
|
|
66
|
-
status: "success",
|
|
67
|
-
output: `Artifact ${name} ${isExisting ? 'modified' : 'created'} with content length ${content.length}`
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
return {
|
|
71
|
-
status: "error",
|
|
72
|
-
output: `Invalid action ${input.action}, must be either 'read' or 'write'`
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
exports.PSArtifactTool = PSArtifactTool;
|
|
77
|
-
PSArtifactTool.TOOL_NAME = "artifact_tool";
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUFNBZW50VG9vbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdG9vbHMvUFNBZW50VG9vbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBNkM7QUFHN0MsTUFBYSxjQUFlLFNBQVEseUJBQVc7SUFHN0MsWUFBWSxjQUF1QztRQUNqRCxLQUFLLENBQUM7WUFDSixJQUFJLEVBQUUsY0FBYyxDQUFDLFNBQVM7WUFDOUIsV0FBVyxFQUFFLFlBQVksY0FBYyxDQUFDLFNBQVM7Ozs7O2tGQUsyQjtZQUM1RSxXQUFXLEVBQUU7Z0JBQ1gsR0FBRyxFQUFFLG9CQUFvQixjQUFjLENBQUMsU0FBUyxFQUFFO2dCQUNuRCxNQUFNLEVBQUUsTUFBTTtnQkFDZCxLQUFLLEVBQUUsR0FBRyxjQUFjLENBQUMsU0FBUyxTQUFTO2dCQUMzQyxXQUFXLEVBQUUseUJBQXlCO2dCQUN0QyxXQUFXLEVBQUU7b0JBQ1gsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsVUFBVSxFQUFFO3dCQUNWLElBQUksRUFBRTs0QkFDSixJQUFJLEVBQUUsUUFBUTs0QkFDZCxLQUFLLEVBQUUsTUFBTTs0QkFDYixXQUFXLEVBQUUsMEJBQTBCO3lCQUN4Qzt3QkFDRCxPQUFPLEVBQUU7NEJBQ1AsSUFBSSxFQUFFLFFBQVE7NEJBQ2QsS0FBSyxFQUFFLFNBQVM7NEJBQ2hCLFdBQVcsRUFBRSw2QkFBNkI7eUJBQzNDO3dCQUNELE1BQU0sRUFBRTs0QkFDTixJQUFJLEVBQUUsUUFBUTs0QkFDZCxLQUFLLEVBQUUsUUFBUTs0QkFDZixXQUFXLEVBQUUsZ0VBQWdFOzRCQUM3RSxJQUFJLEVBQUUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDO3lCQUN4QjtxQkFDRjtvQkFDRCxRQUFRLEVBQUUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDO2lCQUM3QjthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBdENZLGNBQVMsR0FBMkIsRUFBRSxDQUFDO1FBdUN0RCxJQUFJLGNBQWMsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsY0FBYyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRWUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUEwQjtRQUNsRCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3hCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDNUIsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUN0QixPQUFPO2dCQUNMLE1BQU0sRUFBQyxTQUFTO2dCQUNoQixNQUFNLEVBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7YUFDNUIsQ0FBQTtRQUNILENBQUM7YUFBTSxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUM3QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQTtZQUM5QixPQUFPO2dCQUNMLE1BQU0sRUFBRSxTQUFTO2dCQUNqQixNQUFNLEVBQUUsWUFBWSxJQUFJLElBQUksVUFBVSxDQUFBLENBQUMsQ0FBQSxVQUFVLENBQUEsQ0FBQyxDQUFBLFNBQVMsd0JBQXdCLE9BQU8sQ0FBQyxNQUFNLEVBQUU7YUFDcEcsQ0FBQTtRQUNILENBQUM7UUFFRCxPQUFPO1lBQ0wsTUFBTSxFQUFFLE9BQU87WUFDZixNQUFNLEVBQUUsa0JBQWtCLEtBQUssQ0FBQyxNQUFNLG9DQUFvQztTQUMzRSxDQUFBO0lBQ0gsQ0FBQzs7QUF2RUgsd0NBd0VDO0FBdkVRLHdCQUFTLEdBQUcsZUFBZSxBQUFsQixDQUFtQiJ9
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { PSAgentTool } from "../PSAgentTool";
|
|
2
|
-
export declare class PSArtifactTool extends PSAgentTool {
|
|
3
|
-
static TOOL_NAME: string;
|
|
4
|
-
private readonly artifacts;
|
|
5
|
-
constructor(artifactsStore?: Record<string, string>);
|
|
6
|
-
run(input: Record<string, any>): Promise<Record<string, any>>;
|
|
7
|
-
}
|