@elizaos/cli 1.5.12 → 1.5.13-alpha.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.
- package/dist/commands/agent/utils/validation.d.ts +3 -31
- package/dist/commands/agent/utils/validation.d.ts.map +1 -1
- package/dist/commands/create/actions/setup.d.ts.map +1 -1
- package/dist/commands/create/types.d.ts +7 -8
- package/dist/commands/create/types.d.ts.map +1 -1
- package/dist/commands/create/utils/validation.d.ts +2 -2
- package/dist/commands/create/utils/validation.d.ts.map +1 -1
- package/dist/commands/dev/actions/dev-server.d.ts.map +1 -1
- package/dist/commands/report/src/report-schema.d.ts +11 -167
- package/dist/commands/report/src/report-schema.d.ts.map +1 -1
- package/dist/commands/scenario/src/MockEngine.d.ts +11 -11
- package/dist/commands/scenario/src/matrix-schema.d.ts +5 -70
- package/dist/commands/scenario/src/matrix-schema.d.ts.map +1 -1
- package/dist/commands/scenario/src/plugin-parser.d.ts +6 -31
- package/dist/commands/scenario/src/plugin-parser.d.ts.map +1 -1
- package/dist/commands/scenario/src/runtime-factory.d.ts.map +1 -1
- package/dist/commands/scenario/src/schema.d.ts +175 -2007
- package/dist/commands/scenario/src/schema.d.ts.map +1 -1
- package/dist/commands/start/index.d.ts +0 -5
- package/dist/commands/start/index.d.ts.map +1 -1
- package/dist/commands/test/actions/e2e-tests.d.ts.map +1 -1
- package/dist/index.js +25142 -16759
- package/dist/index.js.map +92 -30
- package/dist/templates/plugin-quick-starter/package.json +4 -4
- package/dist/templates/plugin-starter/package.json +4 -4
- package/dist/templates/project-starter/package.json +7 -7
- package/dist/templates/project-tee-starter/package.json +5 -5
- package/dist/templates/project-tee-starter/src/__tests__/config.test.ts +1 -1
- package/dist/templates/project-tee-starter/src/__tests__/tee-validation.test.ts +60 -4
- package/dist/templates/project-tee-starter/src/plugin.ts +66 -25
- package/dist/utils/get-config.d.ts +27 -194
- package/dist/utils/get-config.d.ts.map +1 -1
- package/dist/utils/local-cli-delegation.d.ts.map +1 -1
- package/dist/version.d.ts +2 -2
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +2 -2
- package/package.json +9 -8
- package/templates/plugin-quick-starter/package.json +4 -4
- package/templates/plugin-starter/package.json +4 -4
- package/templates/project-starter/package.json +7 -7
- package/templates/project-tee-starter/package.json +5 -5
- package/templates/project-tee-starter/src/__tests__/config.test.ts +1 -1
- package/templates/project-tee-starter/src/__tests__/tee-validation.test.ts +60 -4
- package/templates/project-tee-starter/src/plugin.ts +66 -25
- package/dist/commands/start/actions/agent-start.d.ts +0 -14
- package/dist/commands/start/actions/agent-start.d.ts.map +0 -1
- package/dist/commands/start/actions/server-start.d.ts +0 -17
- package/dist/commands/start/actions/server-start.d.ts.map +0 -1
- package/dist/commands/start/utils/config-utils.d.ts +0 -30
- package/dist/commands/start/utils/config-utils.d.ts.map +0 -1
- package/dist/commands/start/utils/dependency-resolver.d.ts +0 -8
- package/dist/commands/start/utils/dependency-resolver.d.ts.map +0 -1
- package/dist/commands/start/utils/loader.d.ts +0 -68
- package/dist/commands/start/utils/loader.d.ts.map +0 -1
- package/dist/commands/start/utils/plugin-utils.d.ts +0 -17
- package/dist/commands/start/utils/plugin-utils.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elizaos/cli",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.13-alpha.1",
|
|
4
4
|
"description": "elizaOS CLI - Manage your AI agents and plugins",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -74,16 +74,17 @@
|
|
|
74
74
|
"typescript": "5.8.3",
|
|
75
75
|
"vite": "^6.3.5"
|
|
76
76
|
},
|
|
77
|
-
"gitHead": "
|
|
77
|
+
"gitHead": "680c57c7696fa53f783083c5fd2f2ffdafc6a3d6",
|
|
78
78
|
"dependencies": {
|
|
79
79
|
"@anthropic-ai/claude-code": "^1.0.35",
|
|
80
80
|
"@anthropic-ai/sdk": "^0.54.0",
|
|
81
81
|
"@clack/prompts": "^0.11.0",
|
|
82
|
-
"@elizaos/api-client": "1.5.
|
|
83
|
-
"@elizaos/core": "1.5.
|
|
84
|
-
"@elizaos/plugin-bootstrap": "1.5.
|
|
85
|
-
"@elizaos/plugin-
|
|
86
|
-
"@elizaos/
|
|
82
|
+
"@elizaos/api-client": "1.5.13-alpha.1",
|
|
83
|
+
"@elizaos/core": "1.5.13-alpha.1",
|
|
84
|
+
"@elizaos/plugin-bootstrap": "1.5.13-alpha.1",
|
|
85
|
+
"@elizaos/plugin-openai": "1.0.11",
|
|
86
|
+
"@elizaos/plugin-sql": "1.5.13-alpha.1",
|
|
87
|
+
"@elizaos/server": "1.5.13-alpha.1",
|
|
87
88
|
"bun": "^1.2.21",
|
|
88
89
|
"chalk": "^5.4.1",
|
|
89
90
|
"chokidar": "^4.0.3",
|
|
@@ -101,6 +102,6 @@
|
|
|
101
102
|
"tsconfig-paths": "^4.2.0",
|
|
102
103
|
"type-fest": "^4.41.0",
|
|
103
104
|
"yoctocolors": "^2.1.1",
|
|
104
|
-
"zod": "
|
|
105
|
+
"zod": "4.1.11"
|
|
105
106
|
}
|
|
106
107
|
}
|
|
@@ -39,11 +39,11 @@
|
|
|
39
39
|
"package.json"
|
|
40
40
|
],
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@elizaos/core": "1.5.
|
|
43
|
-
"zod": "
|
|
42
|
+
"@elizaos/core": "1.5.13-alpha.1",
|
|
43
|
+
"zod": "4.1.11"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@elizaos/cli": "1.5.
|
|
46
|
+
"@elizaos/cli": "1.5.13-alpha.1",
|
|
47
47
|
"dotenv": "16.4.5",
|
|
48
48
|
"prettier": "3.5.3",
|
|
49
49
|
"typescript": "5.8.2"
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
},
|
|
63
63
|
"resolutions": {
|
|
64
64
|
"// Note": "langchain 0.3.30 fixes @langchain/core zod/v3 import issues",
|
|
65
|
-
"zod": "
|
|
65
|
+
"zod": "4.1.11",
|
|
66
66
|
"langchain": "0.3.30",
|
|
67
67
|
"@langchain/core": "0.3.30"
|
|
68
68
|
},
|
|
@@ -39,16 +39,16 @@
|
|
|
39
39
|
"package.json"
|
|
40
40
|
],
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@elizaos/core": "1.5.
|
|
42
|
+
"@elizaos/core": "1.5.13-alpha.1",
|
|
43
43
|
"@tanstack/react-query": "^5.80.7",
|
|
44
44
|
"clsx": "^2.1.1",
|
|
45
45
|
"tailwind-merge": "^3.3.1",
|
|
46
46
|
"tailwindcss": "^4.1.10",
|
|
47
47
|
"vite": "^6.3.5",
|
|
48
|
-
"zod": "
|
|
48
|
+
"zod": "4.1.11"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
|
-
"@elizaos/cli": "1.5.
|
|
51
|
+
"@elizaos/cli": "1.5.13-alpha.1",
|
|
52
52
|
"@tailwindcss/vite": "^4.1.10",
|
|
53
53
|
"@vitejs/plugin-react-swc": "^3.10.2",
|
|
54
54
|
"dotenv": "16.4.5",
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
},
|
|
78
78
|
"resolutions": {
|
|
79
79
|
"// Note": "langchain 0.3.30 fixes @langchain/core zod/v3 import issues",
|
|
80
|
-
"zod": "
|
|
80
|
+
"zod": "4.1.11",
|
|
81
81
|
"langchain": "0.3.30",
|
|
82
82
|
"@langchain/core": "0.3.30"
|
|
83
83
|
},
|
|
@@ -27,19 +27,19 @@
|
|
|
27
27
|
"dist"
|
|
28
28
|
],
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@elizaos/cli": "1.5.
|
|
31
|
-
"@elizaos/client": "1.5.
|
|
32
|
-
"@elizaos/core": "1.5.
|
|
33
|
-
"@elizaos/plugin-bootstrap": "1.5.
|
|
34
|
-
"@elizaos/plugin-sql": "1.5.
|
|
35
|
-
"@elizaos/server": "1.5.
|
|
30
|
+
"@elizaos/cli": "1.5.13-alpha.1",
|
|
31
|
+
"@elizaos/client": "1.5.13-alpha.1",
|
|
32
|
+
"@elizaos/core": "1.5.13-alpha.1",
|
|
33
|
+
"@elizaos/plugin-bootstrap": "1.5.13-alpha.1",
|
|
34
|
+
"@elizaos/plugin-sql": "1.5.13-alpha.1",
|
|
35
|
+
"@elizaos/server": "1.5.13-alpha.1",
|
|
36
36
|
"@tanstack/react-query": "^5.29.0",
|
|
37
37
|
"clsx": "^2.1.1",
|
|
38
38
|
"react": "^18.3.1",
|
|
39
39
|
"react-dom": "^18.3.1",
|
|
40
40
|
"tailwind-merge": "^2.6.0",
|
|
41
41
|
"tailwindcss": "^4.1.10",
|
|
42
|
-
"zod": "
|
|
42
|
+
"zod": "4.1.11"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@types/react": "^18.3.3",
|
|
@@ -32,11 +32,11 @@
|
|
|
32
32
|
"GUIDE.md"
|
|
33
33
|
],
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@elizaos/cli": "1.5.
|
|
36
|
-
"@elizaos/core": "1.5.
|
|
37
|
-
"@elizaos/plugin-bootstrap": "1.5.
|
|
35
|
+
"@elizaos/cli": "1.5.13-alpha.1",
|
|
36
|
+
"@elizaos/core": "1.5.13-alpha.1",
|
|
37
|
+
"@elizaos/plugin-bootstrap": "1.5.13-alpha.1",
|
|
38
38
|
"@elizaos/plugin-redpill": "1.2.1",
|
|
39
|
-
"@elizaos/plugin-sql": "1.5.
|
|
39
|
+
"@elizaos/plugin-sql": "1.5.13-alpha.1",
|
|
40
40
|
"@phala/dstack-sdk": "0.1.11",
|
|
41
41
|
"@solana/web3.js": "1.98.2",
|
|
42
42
|
"@tanstack/react-query": "^5.29.0",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"tailwind-merge": "^2.6.0",
|
|
47
47
|
"tailwindcss": "^4.1.10",
|
|
48
48
|
"viem": "2.30.1",
|
|
49
|
-
"zod": "
|
|
49
|
+
"zod": "4.1.11"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@types/jsdom": "^21.1.7",
|
|
@@ -48,7 +48,7 @@ describe('Plugin Configuration', () => {
|
|
|
48
48
|
// Test with invalid config should fail validation during init
|
|
49
49
|
const invalidConfig = { TEE_MODE: 'INVALID_MODE' };
|
|
50
50
|
await expect(teeStarterPlugin.init(invalidConfig, mockRuntime)).rejects.toThrow(
|
|
51
|
-
'
|
|
51
|
+
'TEE_MODE must be one of: OFF, LOCAL, DOCKER, PRODUCTION'
|
|
52
52
|
);
|
|
53
53
|
} finally {
|
|
54
54
|
// Restore original environment
|
|
@@ -154,7 +154,9 @@ describe('TEE Environment Validation', () => {
|
|
|
154
154
|
try {
|
|
155
155
|
await expect(async () => {
|
|
156
156
|
await teeStarterPlugin.init?.({}, mockRuntime);
|
|
157
|
-
}).toThrow(
|
|
157
|
+
}).toThrow(
|
|
158
|
+
'Wallet secret salt must be at least 8 characters long for security (excluding whitespace)'
|
|
159
|
+
);
|
|
158
160
|
} finally {
|
|
159
161
|
// Restore original argv
|
|
160
162
|
process.argv = originalArgv;
|
|
@@ -189,7 +191,60 @@ describe('TEE Environment Validation', () => {
|
|
|
189
191
|
|
|
190
192
|
await expect(async () => {
|
|
191
193
|
await teeStarterPlugin.init?.({}, mockRuntime);
|
|
192
|
-
}).toThrow('Wallet secret salt must not exceed 128 characters');
|
|
194
|
+
}).toThrow('Wallet secret salt must not exceed 128 characters (excluding whitespace)');
|
|
195
|
+
});
|
|
196
|
+
|
|
197
|
+
test('should reject whitespace-only salt', async () => {
|
|
198
|
+
// Test various whitespace-only values
|
|
199
|
+
const whitespaceSalts = [' ', '\t\t\t\t', ' \t ', '\n\n\n\n\n\n\n\n'];
|
|
200
|
+
|
|
201
|
+
for (const salt of whitespaceSalts) {
|
|
202
|
+
// Remove argv test detection temporarily to test validation
|
|
203
|
+
const originalArgv = process.argv;
|
|
204
|
+
process.argv = ['node', 'script.js']; // Remove test from argv
|
|
205
|
+
|
|
206
|
+
process.env.NODE_ENV = 'production';
|
|
207
|
+
process.env.TEE_MODE = 'OFF';
|
|
208
|
+
process.env.TEE_VENDOR = 'phala';
|
|
209
|
+
process.env.WALLET_SECRET_SALT = salt;
|
|
210
|
+
|
|
211
|
+
try {
|
|
212
|
+
await expect(async () => {
|
|
213
|
+
await teeStarterPlugin.init?.({}, mockRuntime);
|
|
214
|
+
}).toThrow(
|
|
215
|
+
'Wallet secret salt must be at least 8 characters long for security (excluding whitespace)'
|
|
216
|
+
);
|
|
217
|
+
} finally {
|
|
218
|
+
// Restore original argv
|
|
219
|
+
process.argv = originalArgv;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
|
|
224
|
+
test('should trim salt and accept if valid after trimming', async () => {
|
|
225
|
+
// Test values with leading/trailing whitespace that are valid after trimming
|
|
226
|
+
const paddedSalts = [
|
|
227
|
+
' valid_salt_123 ',
|
|
228
|
+
'\tvalid_salt_123\t',
|
|
229
|
+
'\n\nvalid_salt_123\n\n',
|
|
230
|
+
' valid_salt_123 ',
|
|
231
|
+
];
|
|
232
|
+
|
|
233
|
+
for (const salt of paddedSalts) {
|
|
234
|
+
process.env.NODE_ENV = 'production';
|
|
235
|
+
process.env.TEE_MODE = 'OFF';
|
|
236
|
+
process.env.TEE_VENDOR = 'phala';
|
|
237
|
+
process.env.WALLET_SECRET_SALT = salt;
|
|
238
|
+
|
|
239
|
+
let error = null;
|
|
240
|
+
try {
|
|
241
|
+
await teeStarterPlugin.init?.({}, mockRuntime);
|
|
242
|
+
} catch (e) {
|
|
243
|
+
error = e;
|
|
244
|
+
}
|
|
245
|
+
// Should not throw error since trimmed value is valid
|
|
246
|
+
expect(error).toBeNull();
|
|
247
|
+
}
|
|
193
248
|
});
|
|
194
249
|
});
|
|
195
250
|
|
|
@@ -281,10 +336,11 @@ describe('TEE Environment Validation', () => {
|
|
|
281
336
|
process.env.TEE_VENDOR = ' phala '; // Whitespace around valid value
|
|
282
337
|
process.env.WALLET_SECRET_SALT = ' test_salt_123 '; // Whitespace around valid value
|
|
283
338
|
|
|
284
|
-
//
|
|
339
|
+
// TEE_MODE and TEE_VENDOR whitespace should cause validation failure
|
|
340
|
+
// But WALLET_SECRET_SALT is now trimmed and should pass if length is valid after trimming
|
|
285
341
|
await expect(async () => {
|
|
286
342
|
await teeStarterPlugin.init?.({}, mockRuntime);
|
|
287
|
-
}).toThrow();
|
|
343
|
+
}).toThrow(); // Will throw due to TEE_MODE/TEE_VENDOR whitespace
|
|
288
344
|
} finally {
|
|
289
345
|
// Restore original values
|
|
290
346
|
process.argv = originalArgv;
|
|
@@ -28,10 +28,13 @@ const configSchema = z.object({
|
|
|
28
28
|
}
|
|
29
29
|
return val;
|
|
30
30
|
})
|
|
31
|
-
.refine(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
.refine(
|
|
32
|
+
(val) => {
|
|
33
|
+
if (!val) return true; // Allow undefined in non-test environments
|
|
34
|
+
return ['OFF', 'LOCAL', 'DOCKER', 'PRODUCTION'].includes(val);
|
|
35
|
+
},
|
|
36
|
+
{ message: 'TEE_MODE must be one of: OFF, LOCAL, DOCKER, PRODUCTION' }
|
|
37
|
+
),
|
|
35
38
|
|
|
36
39
|
TEE_VENDOR: z
|
|
37
40
|
.string()
|
|
@@ -43,10 +46,13 @@ const configSchema = z.object({
|
|
|
43
46
|
}
|
|
44
47
|
return val;
|
|
45
48
|
})
|
|
46
|
-
.refine(
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
.refine(
|
|
50
|
+
(val) => {
|
|
51
|
+
if (!val) return true; // Allow undefined in non-test environments
|
|
52
|
+
return val === 'phala';
|
|
53
|
+
},
|
|
54
|
+
{ message: 'TEE_VENDOR must be: phala' }
|
|
55
|
+
),
|
|
50
56
|
|
|
51
57
|
WALLET_SECRET_SALT: z
|
|
52
58
|
.string()
|
|
@@ -60,26 +66,33 @@ const configSchema = z.object({
|
|
|
60
66
|
}
|
|
61
67
|
if (!val) {
|
|
62
68
|
logger.warn('Warning: Wallet secret salt is not provided');
|
|
69
|
+
return val;
|
|
63
70
|
}
|
|
64
|
-
|
|
71
|
+
// Trim whitespace to prevent security bypass
|
|
72
|
+
return val.trim();
|
|
65
73
|
})
|
|
66
74
|
.refine(
|
|
67
75
|
(val) => {
|
|
68
|
-
if (
|
|
69
|
-
|
|
70
|
-
|
|
76
|
+
if (val === undefined) return true; // Allow undefined in non-test environments
|
|
77
|
+
// Empty string after trimming is not allowed (reject whitespace-only values)
|
|
78
|
+
if (!val || val.length === 0) return false;
|
|
79
|
+
// Check trimmed length for security (val is already trimmed from transform)
|
|
80
|
+
return val.length >= 8;
|
|
71
81
|
},
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
if (trimmedVal.length < 8) {
|
|
76
|
-
return { message: 'Wallet secret salt must be at least 8 characters long for security' };
|
|
77
|
-
}
|
|
78
|
-
if (trimmedVal.length > 128) {
|
|
79
|
-
return { message: 'Wallet secret salt must not exceed 128 characters' };
|
|
80
|
-
}
|
|
81
|
-
return { message: 'Invalid wallet secret salt' };
|
|
82
|
+
{
|
|
83
|
+
message:
|
|
84
|
+
'Wallet secret salt must be at least 8 characters long for security (excluding whitespace)',
|
|
82
85
|
}
|
|
86
|
+
)
|
|
87
|
+
.refine(
|
|
88
|
+
(val) => {
|
|
89
|
+
if (val === undefined) return true; // Allow undefined in non-test environments
|
|
90
|
+
// Empty strings not allowed (already checked in previous refine, but be consistent)
|
|
91
|
+
if (!val || val.length === 0) return false;
|
|
92
|
+
// Check trimmed length (val is already trimmed from transform)
|
|
93
|
+
return val.length <= 128;
|
|
94
|
+
},
|
|
95
|
+
{ message: 'Wallet secret salt must not exceed 128 characters (excluding whitespace)' }
|
|
83
96
|
),
|
|
84
97
|
});
|
|
85
98
|
|
|
@@ -95,7 +108,8 @@ type TeeServiceConfig = {
|
|
|
95
108
|
*/
|
|
96
109
|
const createTeeServiceConfig = (runtime: IAgentRuntime): TeeServiceConfig => ({
|
|
97
110
|
teeClient: new TappdClient(),
|
|
98
|
-
|
|
111
|
+
// Ensure salt is trimmed to match validation behavior
|
|
112
|
+
secretSalt: (process.env.WALLET_SECRET_SALT || 'secret_salt').trim(),
|
|
99
113
|
runtime,
|
|
100
114
|
});
|
|
101
115
|
|
|
@@ -260,9 +274,36 @@ const teeStarterPlugin: Plugin = {
|
|
|
260
274
|
}
|
|
261
275
|
} catch (error) {
|
|
262
276
|
if (error instanceof z.ZodError) {
|
|
263
|
-
|
|
264
|
-
|
|
277
|
+
// Check if this is validation with an invalid TEE_MODE from the test
|
|
278
|
+
const hasInvalidMode = error.issues.some(
|
|
279
|
+
(e) => e.path[0] === 'TEE_MODE' && e.message.includes('TEE_MODE must be')
|
|
265
280
|
);
|
|
281
|
+
if (hasInvalidMode) {
|
|
282
|
+
// Throw the specific validation error for TEE_MODE
|
|
283
|
+
const teeError = error.issues.find((e) => e.path[0] === 'TEE_MODE');
|
|
284
|
+
throw new Error(
|
|
285
|
+
teeError?.message || 'TEE_MODE must be one of: OFF, LOCAL, DOCKER, PRODUCTION'
|
|
286
|
+
);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
// Check if this is validation with an invalid TEE_VENDOR from the test
|
|
290
|
+
const hasInvalidVendor = error.issues.some(
|
|
291
|
+
(e) => e.path[0] === 'TEE_VENDOR' && e.message.includes('TEE_VENDOR must be')
|
|
292
|
+
);
|
|
293
|
+
if (hasInvalidVendor) {
|
|
294
|
+
const vendorError = error.issues.find((e) => e.path[0] === 'TEE_VENDOR');
|
|
295
|
+
throw new Error(vendorError?.message || 'TEE_VENDOR must be: phala');
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
// Check if this is validation with an invalid WALLET_SECRET_SALT from the test
|
|
299
|
+
const hasSaltError = error.issues.some((e) => e.path[0] === 'WALLET_SECRET_SALT');
|
|
300
|
+
if (hasSaltError) {
|
|
301
|
+
const saltError = error.issues.find((e) => e.path[0] === 'WALLET_SECRET_SALT');
|
|
302
|
+
throw new Error(saltError?.message || 'Invalid wallet secret salt');
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
// Generic invalid configuration error
|
|
306
|
+
throw new Error('Invalid plugin configuration');
|
|
266
307
|
}
|
|
267
308
|
throw error;
|
|
268
309
|
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { type Character, type IAgentRuntime, type Plugin } from '@elizaos/core';
|
|
2
|
-
import { AgentServer } from '@elizaos/server';
|
|
3
|
-
import { AgentStartOptions } from '../types';
|
|
4
|
-
/**
|
|
5
|
-
* Start an agent with the given configuration
|
|
6
|
-
*
|
|
7
|
-
* Creates and initializes an agent runtime with plugins, handles dependency resolution, runs database migrations, and registers the agent with the server.
|
|
8
|
-
*/
|
|
9
|
-
export declare function startAgent(character: Character, server: AgentServer, init?: (runtime: IAgentRuntime) => Promise<void>, plugins?: (Plugin | string)[], options?: AgentStartOptions): Promise<IAgentRuntime>;
|
|
10
|
-
/**
|
|
11
|
-
* Stop an agent and unregister it from the server
|
|
12
|
-
*/
|
|
13
|
-
export declare function stopAgent(runtime: IAgentRuntime, server: AgentServer): Promise<void>;
|
|
14
|
-
//# sourceMappingURL=agent-start.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-start.d.ts","sourceRoot":"","sources":["../../../../src/commands/start/actions/agent-start.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAS7C;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,WAAW,EACnB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,EAChD,OAAO,GAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAO,EACjC,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,aAAa,CAAC,CA8ExB;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1F"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { type Character, type ProjectAgent } from '@elizaos/core';
|
|
2
|
-
/**
|
|
3
|
-
* Server start options
|
|
4
|
-
*/
|
|
5
|
-
export interface ServerStartOptions {
|
|
6
|
-
configure?: boolean;
|
|
7
|
-
port?: number;
|
|
8
|
-
characters?: Character[];
|
|
9
|
-
projectAgents?: ProjectAgent[];
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Start the agents and server
|
|
13
|
-
*
|
|
14
|
-
* Initializes the database, creates the server instance, configures port settings, and starts the specified agents or default Eliza character.
|
|
15
|
-
*/
|
|
16
|
-
export declare function startAgents(options: ServerStartOptions): Promise<void>;
|
|
17
|
-
//# sourceMappingURL=server-start.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-start.d.ts","sourceRoot":"","sources":["../../../../src/commands/start/actions/server-start.ts"],"names":[],"mappings":"AAGA,OAAO,EAAU,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAM1E;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;CAChC;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8F5E"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { RuntimeSettings } from '@elizaos/core';
|
|
2
|
-
/**
|
|
3
|
-
* Load environment configuration for runtime
|
|
4
|
-
*
|
|
5
|
-
* Loads environment variables from the project's .env file and returns them as runtime settings.
|
|
6
|
-
*/
|
|
7
|
-
export declare function loadEnvConfig(): Promise<RuntimeSettings>;
|
|
8
|
-
/**
|
|
9
|
-
* Validates if a character has secrets configured
|
|
10
|
-
* @param character - Character configuration object
|
|
11
|
-
* @returns boolean - true if character has secrets, false otherwise
|
|
12
|
-
*/
|
|
13
|
-
export declare function hasCharacterSecrets(character: any): boolean;
|
|
14
|
-
/**
|
|
15
|
-
* Ensures character has a settings object
|
|
16
|
-
* @param character - Character configuration object
|
|
17
|
-
*/
|
|
18
|
-
export declare function ensureCharacterSettings(character: any): void;
|
|
19
|
-
/**
|
|
20
|
-
* Loads secrets from local .env file
|
|
21
|
-
* @returns Promise<Record<string, string> | null> - env vars or null if no .env found
|
|
22
|
-
*/
|
|
23
|
-
export declare function loadLocalEnvSecrets(): Promise<Record<string, string> | null>;
|
|
24
|
-
/**
|
|
25
|
-
* Sets default secrets from local .env if character doesn't have any
|
|
26
|
-
* @param character - Character configuration object
|
|
27
|
-
* @returns Promise<boolean> - true if secrets were added, false otherwise
|
|
28
|
-
*/
|
|
29
|
-
export declare function setDefaultSecretsFromEnv(character: any): Promise<boolean>;
|
|
30
|
-
//# sourceMappingURL=config-utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config-utils.d.ts","sourceRoot":"","sources":["../../../../src/commands/start/utils/config-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIhD;;;;GAIG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,eAAe,CAAC,CAM9D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAE3D;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI,CAI5D;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,CAMlF;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAkB/E"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { type Plugin } from '@elizaos/core';
|
|
2
|
-
/**
|
|
3
|
-
* Resolve plugin dependencies with circular dependency detection
|
|
4
|
-
*
|
|
5
|
-
* Performs topological sorting of plugins to ensure dependencies are loaded in the correct order, with support for test dependencies.
|
|
6
|
-
*/
|
|
7
|
-
export declare function resolvePluginDependencies(availablePlugins: Map<string, Plugin>, isTestMode?: boolean): Plugin[];
|
|
8
|
-
//# sourceMappingURL=dependency-resolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-resolver.d.ts","sourceRoot":"","sources":["../../../../src/commands/start/utils/dependency-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAEpD;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACrC,UAAU,GAAE,OAAe,GAC1B,MAAM,EAAE,CA6CV"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { type Character } from '@elizaos/core';
|
|
2
|
-
/**
|
|
3
|
-
* Attempts to load a file from the given file path.
|
|
4
|
-
*
|
|
5
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
6
|
-
* @param {string} filePath - The path to the file to load.
|
|
7
|
-
* @returns {string | null} The contents of the file as a string, or null if an error occurred.
|
|
8
|
-
* @throws {Error} If an error occurs while loading the file.
|
|
9
|
-
*/
|
|
10
|
-
export declare function tryLoadFile(filePath: string): string | null;
|
|
11
|
-
/**
|
|
12
|
-
* Attempts to load a file from the given file path asynchronously.
|
|
13
|
-
*
|
|
14
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
15
|
-
* @param {string} filePath - The path to the file to load.
|
|
16
|
-
* @returns {Promise<string | null>} The contents of the file as a string, or null if an error occurred.
|
|
17
|
-
* @throws {Error} If an error occurs while loading the file.
|
|
18
|
-
*/
|
|
19
|
-
export declare function tryLoadFileAsync(filePath: string): Promise<string | null>;
|
|
20
|
-
/**
|
|
21
|
-
* Load characters from a specified URL and return them as an array of Character objects.
|
|
22
|
-
*
|
|
23
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
24
|
-
* @param {string} url - The URL from which to load character data.
|
|
25
|
-
* @returns {Promise<Character[]>} - A promise that resolves with an array of Character objects.
|
|
26
|
-
*/
|
|
27
|
-
export declare function loadCharactersFromUrl(url: string): Promise<Character[]>;
|
|
28
|
-
/**
|
|
29
|
-
* Converts a JSON object representing a character into a validated Character object with additional settings and secrets.
|
|
30
|
-
*
|
|
31
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
32
|
-
* @param {unknown} character - The input data representing a character.
|
|
33
|
-
* @returns {Promise<Character>} - A Promise that resolves to a validated Character object.
|
|
34
|
-
* @throws {Error} If character validation fails.
|
|
35
|
-
*/
|
|
36
|
-
export declare function jsonToCharacter(character: unknown): Promise<Character>;
|
|
37
|
-
/**
|
|
38
|
-
* Loads a character from the specified file path with safe JSON parsing and validation.
|
|
39
|
-
*
|
|
40
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
41
|
-
* @param {string} filePath - The path to the character file.
|
|
42
|
-
* @returns {Promise<Character>} A Promise that resolves to the validated Character object.
|
|
43
|
-
* @throws {Error} If the character file is not found, has invalid JSON, or fails validation.
|
|
44
|
-
*/
|
|
45
|
-
export declare function loadCharacter(filePath: string): Promise<Character>;
|
|
46
|
-
/**
|
|
47
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
48
|
-
*/
|
|
49
|
-
export declare function loadCharacterTryPath(characterPath: string): Promise<Character>;
|
|
50
|
-
/**
|
|
51
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
52
|
-
* @returns {boolean} true if valid remote URLs exist, false otherwise.
|
|
53
|
-
*/
|
|
54
|
-
export declare function hasValidRemoteUrls(): boolean;
|
|
55
|
-
/**
|
|
56
|
-
* @deprecated Use @elizaos/server implementation. This function delegates to server.
|
|
57
|
-
* @returns {Promise<boolean>} A promise that resolves to true if valid remote URLs exist, false otherwise.
|
|
58
|
-
*/
|
|
59
|
-
export declare function hasValidRemoteUrlsAsync(): Promise<boolean>;
|
|
60
|
-
/**
|
|
61
|
-
* Load characters from local paths or remote URLs based on configuration.
|
|
62
|
-
* CLI-specific version that falls back to default character when no characters are found.
|
|
63
|
-
*
|
|
64
|
-
* @param charactersArg - A comma-separated list of local file paths or remote URLs to load characters from.
|
|
65
|
-
* @returns A promise that resolves to an array of loaded characters.
|
|
66
|
-
*/
|
|
67
|
-
export declare function loadCharacters(charactersArg: string): Promise<Character[]>;
|
|
68
|
-
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../src/commands/start/utils/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAU,MAAM,eAAe,CAAC;AAIvD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI3D;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAK/E;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAG7E;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAG5E;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAGxE;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAGpF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAI5C;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC,CAKhE;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAYhF"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { type Plugin } from '@elizaos/core';
|
|
2
|
-
import { PluginValidation } from '../types';
|
|
3
|
-
/**
|
|
4
|
-
* Check if an object has a valid plugin shape
|
|
5
|
-
*/
|
|
6
|
-
export declare function isValidPluginShape(obj: any): obj is Plugin;
|
|
7
|
-
/**
|
|
8
|
-
* Load and prepare a plugin for use
|
|
9
|
-
*
|
|
10
|
-
* Handles both local development plugins and published plugins, with automatic installation if needed.
|
|
11
|
-
*/
|
|
12
|
-
export declare function loadAndPreparePlugin(pluginName: string): Promise<Plugin | null>;
|
|
13
|
-
/**
|
|
14
|
-
* Validate a plugin object
|
|
15
|
-
*/
|
|
16
|
-
export declare function validatePlugin(plugin: any): PluginValidation;
|
|
17
|
-
//# sourceMappingURL=plugin-utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-utils.d.ts","sourceRoot":"","sources":["../../../../src/commands/start/utils/plugin-utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAU,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,MAAM,CAY1D;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAwDrF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,GAAG,GAAG,gBAAgB,CAU5D"}
|