agenticpool 1.0.6 → 1.0.7
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/commands/conversations.js +109 -71
- package/dist/commands/messages.js +51 -25
- package/dist/commands/networks.js +89 -58
- package/dist/datamodel/toon/index.js +153 -7
- package/package.json +2 -1
|
@@ -6,19 +6,165 @@ exports.isToonFormat = isToonFormat;
|
|
|
6
6
|
exports.safeEncode = safeEncode;
|
|
7
7
|
exports.safeDecode = safeDecode;
|
|
8
8
|
function encode(data) {
|
|
9
|
-
|
|
9
|
+
if (data === null || data === undefined) {
|
|
10
|
+
return "null";
|
|
11
|
+
}
|
|
12
|
+
if (typeof data === "boolean") {
|
|
13
|
+
return data ? "true" : "false";
|
|
14
|
+
}
|
|
15
|
+
if (typeof data === "number") {
|
|
16
|
+
return String(data);
|
|
17
|
+
}
|
|
18
|
+
if (typeof data === "string") {
|
|
19
|
+
if (/^[a-zA-Z0-9_-]+$/.test(data) && data.length < 50) {
|
|
20
|
+
return data;
|
|
21
|
+
}
|
|
22
|
+
return `"${data}"`;
|
|
23
|
+
}
|
|
24
|
+
if (Array.isArray(data)) {
|
|
25
|
+
if (data.length === 0) {
|
|
26
|
+
return "[]";
|
|
27
|
+
}
|
|
28
|
+
const firstItem = data[0];
|
|
29
|
+
if (typeof firstItem === "object" && firstItem !== null && !Array.isArray(firstItem)) {
|
|
30
|
+
const keys = Object.keys(firstItem);
|
|
31
|
+
const header = `[${data.length}]{${keys.join(",")}}:`;
|
|
32
|
+
const lines = data.map((item) => {
|
|
33
|
+
const values = keys.map((key) => encode(item[key]));
|
|
34
|
+
return values.join(",");
|
|
35
|
+
});
|
|
36
|
+
return header + "\n" + lines.map((line) => ` ${line}`).join("\n");
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
return `[${data.length}]:` + data.map((item) => encode(item)).join(",");
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (typeof data === "object") {
|
|
43
|
+
const obj = data;
|
|
44
|
+
const keys = Object.keys(obj);
|
|
45
|
+
if (keys.length === 0) {
|
|
46
|
+
return "{}";
|
|
47
|
+
}
|
|
48
|
+
const lines = keys.map((key) => {
|
|
49
|
+
const val = encode(obj[key]);
|
|
50
|
+
return `${key}:${val}`;
|
|
51
|
+
});
|
|
52
|
+
return lines.join("\n");
|
|
53
|
+
}
|
|
54
|
+
return String(data);
|
|
10
55
|
}
|
|
11
56
|
function decode(str) {
|
|
12
|
-
|
|
57
|
+
if (!str)
|
|
58
|
+
return null;
|
|
59
|
+
const trimmed = str.trim();
|
|
60
|
+
// Try JSON first if it looks like JSON
|
|
61
|
+
if (trimmed.startsWith('{') || trimmed.startsWith('[')) {
|
|
62
|
+
try {
|
|
63
|
+
return JSON.parse(trimmed);
|
|
64
|
+
}
|
|
65
|
+
catch (e) {
|
|
66
|
+
// Not JSON, continue to TOON
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const lines = trimmed.split("\n");
|
|
70
|
+
const firstLine = lines[0].trim();
|
|
71
|
+
// Tabular array [count]{key1,key2}:
|
|
72
|
+
if (firstLine.startsWith("[") && firstLine.includes("]{")) {
|
|
73
|
+
const headerMatch = firstLine.match(/^\[(\d+)\]\{([^}]+)\}:$/);
|
|
74
|
+
if (headerMatch) {
|
|
75
|
+
const keys = headerMatch[2].split(",").map((k) => k.trim());
|
|
76
|
+
const result = [];
|
|
77
|
+
for (let i = 1; i < lines.length; i++) {
|
|
78
|
+
const line = lines[i].trim();
|
|
79
|
+
if (!line)
|
|
80
|
+
continue;
|
|
81
|
+
const values = parseCommaSeparated(line);
|
|
82
|
+
const item = {};
|
|
83
|
+
keys.forEach((key, j) => {
|
|
84
|
+
if (j < values.length) {
|
|
85
|
+
item[key] = parseValue(values[j]);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
result.push(item);
|
|
89
|
+
}
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// Simple array [count]:val1,val2
|
|
94
|
+
if (firstLine.startsWith("[") && firstLine.includes("]:")) {
|
|
95
|
+
const headerMatch = firstLine.match(/^\[(\d+)\]:(.*)$/);
|
|
96
|
+
if (headerMatch) {
|
|
97
|
+
const remaining = headerMatch[2] + (lines.length > 1 ? lines.slice(1).join("\n") : "");
|
|
98
|
+
const values = parseCommaSeparated(remaining.trim());
|
|
99
|
+
return values.map(parseValue);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// Object key:value
|
|
103
|
+
if (lines.some(l => l.includes(':'))) {
|
|
104
|
+
const result = {};
|
|
105
|
+
let hasKeys = false;
|
|
106
|
+
for (const line of lines) {
|
|
107
|
+
const part = line.trim();
|
|
108
|
+
if (!part)
|
|
109
|
+
continue;
|
|
110
|
+
const colonIndex = part.indexOf(":");
|
|
111
|
+
if (colonIndex > 0) {
|
|
112
|
+
const key = part.substring(0, colonIndex).trim();
|
|
113
|
+
const value = part.substring(colonIndex + 1).trim();
|
|
114
|
+
result[key] = parseValue(value);
|
|
115
|
+
hasKeys = true;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
if (hasKeys)
|
|
119
|
+
return result;
|
|
120
|
+
}
|
|
121
|
+
return parseValue(trimmed);
|
|
122
|
+
}
|
|
123
|
+
function parseValue(val) {
|
|
124
|
+
const v = val.trim();
|
|
125
|
+
if (v === "null")
|
|
126
|
+
return null;
|
|
127
|
+
if (v === "true")
|
|
128
|
+
return true;
|
|
129
|
+
if (v === "false")
|
|
130
|
+
return false;
|
|
131
|
+
if (!isNaN(Number(v)) && v !== "")
|
|
132
|
+
return Number(v);
|
|
133
|
+
if (v.startsWith('"') && v.endsWith('"')) {
|
|
134
|
+
return v.substring(1, v.length - 1);
|
|
135
|
+
}
|
|
136
|
+
return v;
|
|
137
|
+
}
|
|
138
|
+
function parseCommaSeparated(str) {
|
|
139
|
+
const result = [];
|
|
140
|
+
let current = "";
|
|
141
|
+
let inQuotes = false;
|
|
142
|
+
for (let i = 0; i < str.length; i++) {
|
|
143
|
+
const char = str[i];
|
|
144
|
+
if (char === '"') {
|
|
145
|
+
inQuotes = !inQuotes;
|
|
146
|
+
current += char;
|
|
147
|
+
}
|
|
148
|
+
else if (char === "," && !inQuotes) {
|
|
149
|
+
result.push(current.trim());
|
|
150
|
+
current = "";
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
current += char;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
result.push(current.trim());
|
|
157
|
+
return result;
|
|
13
158
|
}
|
|
14
159
|
function isToonFormat(content) {
|
|
15
|
-
|
|
16
|
-
|
|
160
|
+
const trimmed = content.trim();
|
|
161
|
+
if (trimmed.startsWith("[") && (trimmed.includes("]{") || trimmed.includes("]:"))) {
|
|
17
162
|
return true;
|
|
18
163
|
}
|
|
19
|
-
|
|
20
|
-
return
|
|
164
|
+
if (trimmed.includes(":") && !trimmed.startsWith("{")) {
|
|
165
|
+
return true;
|
|
21
166
|
}
|
|
167
|
+
return false;
|
|
22
168
|
}
|
|
23
169
|
function safeEncode(data) {
|
|
24
170
|
try {
|
|
@@ -36,4 +182,4 @@ function safeDecode(str) {
|
|
|
36
182
|
return null;
|
|
37
183
|
}
|
|
38
184
|
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGF0YW1vZGVsL3Rvb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3QkFFQztBQUVELHdCQUVDO0FBRUQsb0NBT0M7QUFFRCxnQ0FNQztBQUVELGdDQU1DO0FBL0JELFNBQWdCLE1BQU0sQ0FBQyxJQUFhO0lBQ2xDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUM5QixDQUFDO0FBRUQsU0FBZ0IsTUFBTSxDQUFjLEdBQVc7SUFDN0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBTSxDQUFDO0FBQzlCLENBQUM7QUFFRCxTQUFnQixZQUFZLENBQUMsT0FBZTtJQUMxQyxJQUFJLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFnQixVQUFVLENBQUMsSUFBYTtJQUN0QyxJQUFJLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QixDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQWdCLFVBQVUsQ0FBYyxHQUFXO0lBQ2pELElBQUksQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGVuY29kZShkYXRhOiB1bmtub3duKTogc3RyaW5nIHtcbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGRhdGEpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlPFQgPSB1bmtub3duPihzdHI6IHN0cmluZyk6IFQge1xuICByZXR1cm4gSlNPTi5wYXJzZShzdHIpIGFzIFQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Rvb25Gb3JtYXQoY29udGVudDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgSlNPTi5wYXJzZShjb250ZW50KTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzYWZlRW5jb2RlKGRhdGE6IHVua25vd24pOiBzdHJpbmcgfCBudWxsIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZW5jb2RlKGRhdGEpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc2FmZURlY29kZTxUID0gdW5rbm93bj4oc3RyOiBzdHJpbmcpOiBUIHwgbnVsbCB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGRlY29kZTxUPihzdHIpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGF0YW1vZGVsL3Rvb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx3QkFzREM7QUFFRCx3QkF5RUM7QUFzQ0Qsb0NBU0M7QUFFRCxnQ0FNQztBQUVELGdDQU1DO0FBaE1ELFNBQWdCLE1BQU0sQ0FBQyxJQUFhO0lBQ2xDLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDeEMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELElBQUksT0FBTyxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDOUIsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzdCLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzdCLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxFQUFFLENBQUM7WUFDdEQsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQ0QsT0FBTyxJQUFJLElBQUksR0FBRyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN4QixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdEIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxJQUFJLFNB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LFNBQWdCLFVBQVUsQ0FBQyxJQUFhO0lBQ3RDLElBQUksQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBZ0IsVUFBVSxDQUFjLEdBQVc7SUFDakQsSUFBSSxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUksR0FBRyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZW5jb2RlKGRhdGE6IHVua25vd24pOiBzdHJpbmcge1xuICBpZiAoZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gXCJudWxsXCI7XG4gIH1cblxuICBpZiAodHlwZW9mIGRhdGEgPT09IFwiYm9vbGVhblwiKSB7XG4gICAgcmV0dXJuIGRhdGEgPyBcInRydWVcIiA6IFwiZmFsc2VcIjtcbiAgfVxuXG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gXCJudW1iZXJcIikge1xuICAgIHJldHVybiBTdHJpbmcoZGF0YSk7XG4gIH1cblxuICBpZiAodHlwZW9mIGRhdGEgPT09IFwic3RyaW5nXCIpIHtcbiAgICBpZiAoL15bYS16QS1aMC05Xy1dKyQvLnRlc3QoZGF0YSkgJiYgZGF0YS5sZW5ndGggPCA1MCkge1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuICAgIHJldHVybiBgXCIke2RhdGF9XCJgO1xuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICBpZiAoZGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBcIltdXCI7XG4gICAgfVxuXG4gICAgY29uc3QgZmlyc3RJdGVtID0gZGF0YVswXTtcbiAgICBpZiAodHlwZW9mIGZpcnN0SXRlbSA9PT0gXCJvYmplY3RcIiAmJiBmaXJzdEl0ZW0gIT09IG51bGwgJiYgIUFycmF5LmlzQXJyYXkoZmlyc3RJdGVtKSkge1xuICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGZpcnN0SXRlbSk7XG4gICAgICBjb25zdCBoZWFkZXIgPSBgWyR7ZGF0YS5sZW5ndGh9XXske2tleXMuam9pbihcIixcIil9fTpgO1xuICAgICAgY29uc3QgbGluZXMgPSBkYXRhLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZXMgPSBrZXlzLm1hcCgoa2V5KSA9PiBlbmNvZGUoaXRlbVtrZXldKSk7XG4gICAgICAgIHJldHVybiB2YWx1ZXMuam9pbihcIixcIik7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBoZWFkZXIgKyBcIlxcblwiICsgbGluZXMubWFwKChsaW5lKSA9PiBgICAke2xpbmV9YCkuam9pbihcIlxcblwiKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGBbJHtkYXRhLmxlbmd0aH1dOmAgKyBkYXRhLm1hcCgoaXRlbSkgPT4gZW5jb2RlKGl0ZW0pKS5qb2luKFwiLFwiKTtcbiAgICB9XG4gIH1cblxuICBpZiAodHlwZW9mIGRhdGEgPT09IFwib2JqZWN0XCIpIHtcbiAgICBjb25zdCBvYmogPSBkYXRhIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhvYmopO1xuICAgIGlmIChrZXlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIFwie31cIjtcbiAgICB9XG5cbiAgICBjb25zdCBsaW5lcyA9IGtleXMubWFwKChrZXkpID0+IHtcbiAgICAgIGNvbnN0IHZhbCA9IGVuY29kZShvYmpba2V5XSk7XG4gICAgICByZXR1cm4gYCR7a2V5fToke3ZhbH1gO1xuICAgIH0pO1xuICAgIHJldHVybiBsaW5lcy5qb2luKFwiXFxuXCIpO1xuICB9XG5cbiAgcmV0dXJuIFN0cmluZyhkYXRhKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZTxUID0gdW5rbm93bj4oc3RyOiBzdHJpbmcpOiBUIHtcbiAgaWYgKCFzdHIpIHJldHVybiBudWxsIGFzIHVua25vd24gYXMgVDtcbiAgXG4gIGNvbnN0IHRyaW1tZWQgPSBzdHIudHJpbSgpO1xuICBcbiAgLy8gVHJ5IEpTT04gZmlyc3QgaWYgaXQgbG9va3MgbGlrZSBKU09OXG4gIGlmICh0cmltbWVkLnN0YXJ0c1dpdGgoJ3snKSB8fCB0cmltbWVkLnN0YXJ0c1dpdGgoJ1snKSkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZSh0cmltbWVkKSBhcyBUO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8vIE5vdCBKU09OLCBjb250aW51ZSB0byBUT09OXG4gICAgfVxuICB9XG5cbiAgY29uc3QgbGluZXMgPSB0cmltbWVkLnNwbGl0KFwiXFxuXCIpO1xuICBjb25zdCBmaXJzdExpbmUgPSBsaW5lc1swXS50cmltKCk7XG5cbiAgLy8gVGFidWxhciBhcnJheSBbY291bnRde2tleTEsa2V5Mn06XG4gIGlmIChmaXJzdExpbmUuc3RhcnRzV2l0aChcIltcIikgJiYgZmlyc3RMaW5lLmluY2x1ZGVzKFwiXXtcIikpIHtcbiAgICBjb25zdCBoZWFkZXJNYXRjaCA9IGZpcnN0TGluZS5tYXRjaCgvXlxcWyhcXGQrKVxcXVxceyhbXn1dKylcXH06JC8pO1xuICAgIGlmIChoZWFkZXJNYXRjaCkge1xuICAgICAgY29uc3Qga2V5cyA9IGhlYWRlck1hdGNoWzJdLnNwbGl0KFwiLFwiKS5tYXAoKGspID0+IGsudHJpbSgpKTtcbiAgICAgIGNvbnN0IHJlc3VsdDogYW55W10gPSBbXTtcbiAgICAgIFxuICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCBsaW5lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBsaW5lID0gbGluZXNbaV0udHJpbSgpO1xuICAgICAgICBpZiAoIWxpbmUpIGNvbnRpbnVlO1xuICAgICAgICBcbiAgICAgICAgY29uc3QgdmFsdWVzID0gcGFyc2VDb21tYVNlcGFyYXRlZChsaW5lKTtcbiAgICAgICAgY29uc3QgaXRlbTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgICAgICBrZXlzLmZvckVhY2goKGtleSwgaikgPT4ge1xuICAgICAgICAgIGlmIChqIDwgdmFsdWVzLmxlbmd0aCkge1xuICAgICAgICAgICAgaXRlbVtrZXldID0gcGFyc2VWYWx1ZSh2YWx1ZXNbal0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJlc3VsdC5wdXNoKGl0ZW0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc3VsdCBhcyB1bmtub3duIGFzIFQ7XG4gICAgfVxuICB9XG5cbiAgLy8gU2ltcGxlIGFycmF5IFtjb3VudF06dmFsMSx2YWwyXG4gIGlmIChmaXJzdExpbmUuc3RhcnRzV2l0aChcIltcIikgJiYgZmlyc3RMaW5lLmluY2x1ZGVzKFwiXTpcIikpIHtcbiAgICBjb25zdCBoZWFkZXJNYXRjaCA9IGZpcnN0TGluZS5tYXRjaCgvXlxcWyhcXGQrKVxcXTooLiopJC8pO1xuICAgIGlmIChoZWFkZXJNYXRjaCkge1xuICAgICAgY29uc3QgcmVtYWluaW5nID0gaGVhZGVyTWF0Y2hbMl0gKyAobGluZXMubGVuZ3RoID4gMSA/IGxpbmVzLnNsaWNlKDEpLmpvaW4oXCJcXG5cIikgOiBcIlwiKTtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IHBhcnNlQ29tbWFTZXBhcmF0ZWQocmVtYWluaW5nLnRyaW0oKSk7XG4gICAgICByZXR1cm4gdmFsdWVzLm1hcChwYXJzZVZhbHVlKSBhcyB1bmtub3duIGFzIFQ7XG4gICAgfVxuICB9XG5cbiAgLy8gT2JqZWN0IGtleTp2YWx1ZVxuICBpZiAobGluZXMuc29tZShsID0+IGwuaW5jbHVkZXMoJzonKSkpIHtcbiAgICBjb25zdCByZXN1bHQ6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICBsZXQgaGFzS2V5cyA9IGZhbHNlO1xuICAgIFxuICAgIGZvciAoY29uc3QgbGluZSBvZiBsaW5lcykge1xuICAgICAgY29uc3QgcGFydCA9IGxpbmUudHJpbSgpO1xuICAgICAgaWYgKCFwYXJ0KSBjb250aW51ZTtcbiAgICAgIFxuICAgICAgY29uc3QgY29sb25JbmRleCA9IHBhcnQuaW5kZXhPZihcIjpcIik7XG4gICAgICBpZiAoY29sb25JbmRleCA+IDApIHtcbiAgICAgICAgY29uc3Qga2V5ID0gcGFydC5zdWJzdHJpbmcoMCwgY29sb25JbmRleCkudHJpbSgpO1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHBhcnQuc3Vic3RyaW5nKGNvbG9uSW5kZXggKyAxKS50cmltKCk7XG4gICAgICAgIHJlc3VsdFtrZXldID0gcGFyc2VWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIGhhc0tleXMgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBpZiAoaGFzS2V5cykgcmV0dXJuIHJlc3VsdCBhcyB1bmtub3duIGFzIFQ7XG4gIH1cblxuICByZXR1cm4gcGFyc2VWYWx1ZSh0cmltbWVkKSBhcyB1bmtub3duIGFzIFQ7XG59XG5cbmZ1bmN0aW9uIHBhcnNlVmFsdWUodmFsOiBzdHJpbmcpOiBhbnkge1xuICBjb25zdCB2ID0gdmFsLnRyaW0oKTtcbiAgaWYgKHYgPT09IFwibnVsbFwiKSByZXR1cm4gbnVsbDtcbiAgaWYgKHYgPT09IFwidHJ1ZVwiKSByZXR1cm4gdHJ1ZTtcbiAgaWYgKHYgPT09IFwiZmFsc2VcIikgcmV0dXJuIGZhbHNlO1xuICBcbiAgaWYgKCFpc05hTihOdW1iZXIodikpICYmIHYgIT09IFwiXCIpIHJldHVybiBOdW1iZXIodik7XG4gIFxuICBpZiAodi5zdGFydHNXaXRoKCdcIicpICYmIHYuZW5kc1dpdGgoJ1wiJykpIHtcbiAgICByZXR1cm4gdi5zdWJzdHJpbmcoMSwgdi5sZW5ndGggLSAxKTtcbiAgfVxuICBcbiAgcmV0dXJuIHY7XG59XG5cbmZ1bmN0aW9uIHBhcnNlQ29tbWFTZXBhcmF0ZWQoc3RyOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gIGNvbnN0IHJlc3VsdDogc3RyaW5nW10gPSBbXTtcbiAgbGV0IGN1cnJlbnQgPSBcIlwiO1xuICBsZXQgaW5RdW90ZXMgPSBmYWxzZTtcbiAgXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgY2hhciA9IHN0cltpXTtcbiAgICBpZiAoY2hhciA9PT0gJ1wiJykge1xuICAgICAgaW5RdW90ZXMgPSAhaW5RdW90ZXM7XG4gICAgICBjdXJyZW50ICs9IGNoYXI7XG4gICAgfSBlbHNlIGlmIChjaGFyID09PSBcIixcIiAmJiAhaW5RdW90ZXMpIHtcbiAgICAgIHJlc3VsdC5wdXNoKGN1cnJlbnQudHJpbSgpKTtcbiAgICAgIGN1cnJlbnQgPSBcIlwiO1xuICAgIH0gZWxzZSB7XG4gICAgICBjdXJyZW50ICs9IGNoYXI7XG4gICAgfVxuICB9XG4gIHJlc3VsdC5wdXNoKGN1cnJlbnQudHJpbSgpKTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVG9vbkZvcm1hdChjb250ZW50OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgY29uc3QgdHJpbW1lZCA9IGNvbnRlbnQudHJpbSgpO1xuICBpZiAodHJpbW1lZC5zdGFydHNXaXRoKFwiW1wiKSAmJiAodHJpbW1lZC5pbmNsdWRlcyhcIl17XCIpIHx8IHRyaW1tZWQuaW5jbHVkZXMoXCJdOlwiKSkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBpZiAodHJpbW1lZC5pbmNsdWRlcyhcIjpcIikgJiYgIXRyaW1tZWQuc3RhcnRzV2l0aChcIntcIikpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzYWZlRW5jb2RlKGRhdGE6IHVua25vd24pOiBzdHJpbmcgfCBudWxsIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZW5jb2RlKGRhdGEpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc2FmZURlY29kZTxUID0gdW5rbm93bj4oc3RyOiBzdHJpbmcpOiBUIHwgbnVsbCB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGRlY29kZTxUPihzdHIpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agenticpool",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "CLI for AgenticPool - Social Network for Agents",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
"@toon-format/toon": "^1.0.0",
|
|
38
38
|
"axios": "^1.6.5",
|
|
39
39
|
"chalk": "^4.1.2",
|
|
40
|
+
"cli-table3": "^0.6.5",
|
|
40
41
|
"commander": "^11.1.0",
|
|
41
42
|
"fs-extra": "^11.2.0"
|
|
42
43
|
},
|