@elizaos/core 1.5.4 → 1.5.5
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/README.md +0 -15
- package/dist/index.d.ts +4886 -3
- package/dist/index.js +5287 -4
- package/package.json +21 -39
- package/dist/browser/index.browser.js +0 -1109
- package/dist/browser/index.browser.js.map +0 -707
- package/dist/browser/index.d.ts +0 -3
- package/dist/node/index.d.ts +0 -3
- package/dist/node/index.node.js +0 -74530
- package/dist/node/index.node.js.map +0 -1027
- package/src/__tests__/action-chaining-simple.test.ts +0 -203
- package/src/__tests__/actions.test.ts +0 -218
- package/src/__tests__/buffer.test.ts +0 -337
- package/src/__tests__/character-validation.test.ts +0 -309
- package/src/__tests__/database.test.ts +0 -750
- package/src/__tests__/entities.test.ts +0 -727
- package/src/__tests__/env.test.ts +0 -23
- package/src/__tests__/environment.test.ts +0 -285
- package/src/__tests__/logger-browser-node.test.ts +0 -716
- package/src/__tests__/logger.test.ts +0 -403
- package/src/__tests__/messages.test.ts +0 -196
- package/src/__tests__/mockCharacter.ts +0 -544
- package/src/__tests__/parsing.test.ts +0 -58
- package/src/__tests__/prompts.test.ts +0 -159
- package/src/__tests__/roles.test.ts +0 -331
- package/src/__tests__/runtime-embedding.test.ts +0 -343
- package/src/__tests__/runtime.test.ts +0 -978
- package/src/__tests__/search.test.ts +0 -15
- package/src/__tests__/services-by-type.test.ts +0 -204
- package/src/__tests__/services.test.ts +0 -136
- package/src/__tests__/settings.test.ts +0 -810
- package/src/__tests__/utils.test.ts +0 -1105
- package/src/__tests__/uuid.test.ts +0 -94
- package/src/actions.ts +0 -122
- package/src/database.ts +0 -579
- package/src/entities.ts +0 -406
- package/src/index.browser.ts +0 -48
- package/src/index.node.ts +0 -39
- package/src/index.ts +0 -50
- package/src/logger.ts +0 -527
- package/src/prompts.ts +0 -243
- package/src/roles.ts +0 -85
- package/src/runtime.ts +0 -2514
- package/src/schemas/character.ts +0 -149
- package/src/search.ts +0 -1543
- package/src/sentry/instrument.browser.ts +0 -65
- package/src/sentry/instrument.node.ts +0 -57
- package/src/sentry/instrument.ts +0 -82
- package/src/services.ts +0 -105
- package/src/settings.ts +0 -409
- package/src/test_resources/constants.ts +0 -12
- package/src/test_resources/testSetup.ts +0 -21
- package/src/test_resources/types.ts +0 -22
- package/src/types/agent.ts +0 -112
- package/src/types/browser.ts +0 -145
- package/src/types/components.ts +0 -184
- package/src/types/database.ts +0 -348
- package/src/types/email.ts +0 -162
- package/src/types/environment.ts +0 -129
- package/src/types/events.ts +0 -249
- package/src/types/index.ts +0 -29
- package/src/types/knowledge.ts +0 -65
- package/src/types/lp.ts +0 -124
- package/src/types/memory.ts +0 -228
- package/src/types/message.ts +0 -233
- package/src/types/messaging.ts +0 -57
- package/src/types/model.ts +0 -359
- package/src/types/pdf.ts +0 -77
- package/src/types/plugin.ts +0 -78
- package/src/types/post.ts +0 -271
- package/src/types/primitives.ts +0 -97
- package/src/types/runtime.ts +0 -190
- package/src/types/service.ts +0 -198
- package/src/types/settings.ts +0 -30
- package/src/types/state.ts +0 -60
- package/src/types/task.ts +0 -72
- package/src/types/tee.ts +0 -107
- package/src/types/testing.ts +0 -30
- package/src/types/token.ts +0 -96
- package/src/types/transcription.ts +0 -133
- package/src/types/video.ts +0 -108
- package/src/types/wallet.ts +0 -56
- package/src/types/web-search.ts +0 -146
- package/src/utils/__tests__/buffer.test.ts +0 -80
- package/src/utils/__tests__/environment.test.ts +0 -58
- package/src/utils/__tests__/stringToUuid.test.ts +0 -88
- package/src/utils/buffer.ts +0 -312
- package/src/utils/environment.ts +0 -316
- package/src/utils/server-health.ts +0 -117
- package/src/utils.ts +0 -1076
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import fs from 'node:fs';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import { describe, expect, it } from 'bun:test';
|
|
4
|
-
|
|
5
|
-
describe('Environment Setup', () => {
|
|
6
|
-
it('should verify .env.test file exists', () => {
|
|
7
|
-
const possiblePaths = [
|
|
8
|
-
path.join(process.cwd(), '.env.test'),
|
|
9
|
-
path.join(process.cwd(), 'packages/core/.env.test'),
|
|
10
|
-
path.join(__dirname, '../../.env.test'),
|
|
11
|
-
path.join(__dirname, '../.env.test'),
|
|
12
|
-
path.join(__dirname, '.env.test'),
|
|
13
|
-
];
|
|
14
|
-
|
|
15
|
-
const existingPaths = possiblePaths.filter((p) => {
|
|
16
|
-
const exists = fs.existsSync(p);
|
|
17
|
-
console.log(`Path ${p} exists: ${exists}`);
|
|
18
|
-
return exists;
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
expect(existingPaths.length).toBeGreaterThan(0);
|
|
22
|
-
});
|
|
23
|
-
});
|
|
@@ -1,285 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it, beforeEach, afterEach } from 'bun:test';
|
|
2
|
-
import {
|
|
3
|
-
detectEnvironment,
|
|
4
|
-
getEnvironment,
|
|
5
|
-
getEnv,
|
|
6
|
-
setEnv,
|
|
7
|
-
hasEnv,
|
|
8
|
-
getBooleanEnv,
|
|
9
|
-
getNumberEnv,
|
|
10
|
-
initBrowserEnvironment,
|
|
11
|
-
} from '../utils/environment';
|
|
12
|
-
|
|
13
|
-
describe('Environment Abstraction', () => {
|
|
14
|
-
let originalProcess: any;
|
|
15
|
-
let originalWindow: any;
|
|
16
|
-
let originalGlobalThis: any;
|
|
17
|
-
|
|
18
|
-
beforeEach(() => {
|
|
19
|
-
// Store original values
|
|
20
|
-
originalProcess = (global as any).process;
|
|
21
|
-
originalWindow = (global as any).window;
|
|
22
|
-
originalGlobalThis = (global as any).globalThis;
|
|
23
|
-
|
|
24
|
-
// Clear environment cache
|
|
25
|
-
getEnvironment().clearCache();
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
afterEach(() => {
|
|
29
|
-
// Restore original values
|
|
30
|
-
if (originalProcess !== undefined) {
|
|
31
|
-
(global as any).process = originalProcess;
|
|
32
|
-
} else {
|
|
33
|
-
delete (global as any).process;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
if (originalWindow !== undefined) {
|
|
37
|
-
(global as any).window = originalWindow;
|
|
38
|
-
} else {
|
|
39
|
-
delete (global as any).window;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
if (originalGlobalThis !== undefined) {
|
|
43
|
-
(global as any).globalThis = originalGlobalThis;
|
|
44
|
-
} else {
|
|
45
|
-
delete (global as any).globalThis;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// Clear cache after each test
|
|
49
|
-
getEnvironment().clearCache();
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
describe('detectEnvironment', () => {
|
|
53
|
-
it('should detect Node.js environment', () => {
|
|
54
|
-
// Current test environment is Node.js
|
|
55
|
-
const env = detectEnvironment();
|
|
56
|
-
expect(env).toBe('node');
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
it('should detect browser environment when window is present', () => {
|
|
60
|
-
// Save original values
|
|
61
|
-
const originalProcess = (global as any).process;
|
|
62
|
-
const originalWindow = (global as any).window;
|
|
63
|
-
|
|
64
|
-
// Mock browser environment
|
|
65
|
-
delete (global as any).process;
|
|
66
|
-
(global as any).window = {
|
|
67
|
-
document: {},
|
|
68
|
-
};
|
|
69
|
-
(global as any).globalThis = global;
|
|
70
|
-
|
|
71
|
-
// Test detection directly
|
|
72
|
-
const detectedEnv = detectEnvironment();
|
|
73
|
-
expect(detectedEnv).toBe('browser');
|
|
74
|
-
|
|
75
|
-
// Restore original values
|
|
76
|
-
(global as any).process = originalProcess;
|
|
77
|
-
(global as any).window = originalWindow;
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
|
|
81
|
-
describe('getEnv', () => {
|
|
82
|
-
it('should get environment variable in Node.js', () => {
|
|
83
|
-
process.env.TEST_VAR = 'test_value';
|
|
84
|
-
const value = getEnv('TEST_VAR');
|
|
85
|
-
expect(value).toBe('test_value');
|
|
86
|
-
delete process.env.TEST_VAR;
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
it('should return default value when variable is not set', () => {
|
|
90
|
-
const value = getEnv('NON_EXISTENT_VAR', 'default');
|
|
91
|
-
expect(value).toBe('default');
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
it('should cache environment variable values', () => {
|
|
95
|
-
process.env.CACHE_TEST = 'initial';
|
|
96
|
-
const value1 = getEnv('CACHE_TEST');
|
|
97
|
-
expect(value1).toBe('initial');
|
|
98
|
-
|
|
99
|
-
// Change the actual env var
|
|
100
|
-
process.env.CACHE_TEST = 'changed';
|
|
101
|
-
|
|
102
|
-
// Should still get cached value
|
|
103
|
-
const value2 = getEnv('CACHE_TEST');
|
|
104
|
-
expect(value2).toBe('initial');
|
|
105
|
-
|
|
106
|
-
// Clear cache and get new value
|
|
107
|
-
getEnvironment().clearCache();
|
|
108
|
-
const value3 = getEnv('CACHE_TEST');
|
|
109
|
-
expect(value3).toBe('changed');
|
|
110
|
-
|
|
111
|
-
delete process.env.CACHE_TEST;
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
|
|
115
|
-
describe('setEnv', () => {
|
|
116
|
-
it('should set environment variable', () => {
|
|
117
|
-
setEnv('SET_TEST_VAR', 'test_value');
|
|
118
|
-
const value = getEnv('SET_TEST_VAR');
|
|
119
|
-
expect(value).toBe('test_value');
|
|
120
|
-
delete process.env.SET_TEST_VAR;
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
it('should convert non-string values to strings', () => {
|
|
124
|
-
setEnv('NUMBER_VAR', 123);
|
|
125
|
-
const value = getEnv('NUMBER_VAR');
|
|
126
|
-
expect(value).toBe('123');
|
|
127
|
-
delete process.env.NUMBER_VAR;
|
|
128
|
-
|
|
129
|
-
setEnv('BOOL_VAR', true);
|
|
130
|
-
const value2 = getEnv('BOOL_VAR');
|
|
131
|
-
expect(value2).toBe('true');
|
|
132
|
-
delete process.env.BOOL_VAR;
|
|
133
|
-
});
|
|
134
|
-
});
|
|
135
|
-
|
|
136
|
-
describe('hasEnv', () => {
|
|
137
|
-
it('should return true for existing variables', () => {
|
|
138
|
-
process.env.EXISTS = 'yes';
|
|
139
|
-
expect(hasEnv('EXISTS')).toBe(true);
|
|
140
|
-
delete process.env.EXISTS;
|
|
141
|
-
});
|
|
142
|
-
|
|
143
|
-
it('should return false for non-existing variables', () => {
|
|
144
|
-
expect(hasEnv('DOES_NOT_EXIST')).toBe(false);
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
|
|
148
|
-
describe('getBooleanEnv', () => {
|
|
149
|
-
it('should parse true values correctly', () => {
|
|
150
|
-
const trueValues = ['true', '1', 'yes', 'on'];
|
|
151
|
-
|
|
152
|
-
trueValues.forEach((value) => {
|
|
153
|
-
process.env.BOOL_TEST = value;
|
|
154
|
-
expect(getBooleanEnv('BOOL_TEST')).toBe(true);
|
|
155
|
-
});
|
|
156
|
-
|
|
157
|
-
delete process.env.BOOL_TEST;
|
|
158
|
-
});
|
|
159
|
-
|
|
160
|
-
it('should parse false values correctly', () => {
|
|
161
|
-
const falseValues = ['false', '0', 'no', 'off', 'anything', ''];
|
|
162
|
-
|
|
163
|
-
falseValues.forEach((value) => {
|
|
164
|
-
process.env.BOOL_TEST = value;
|
|
165
|
-
expect(getBooleanEnv('BOOL_TEST')).toBe(false);
|
|
166
|
-
});
|
|
167
|
-
|
|
168
|
-
delete process.env.BOOL_TEST;
|
|
169
|
-
});
|
|
170
|
-
|
|
171
|
-
it('should return default value when not set', () => {
|
|
172
|
-
expect(getBooleanEnv('NOT_SET', true)).toBe(true);
|
|
173
|
-
expect(getBooleanEnv('NOT_SET', false)).toBe(false);
|
|
174
|
-
});
|
|
175
|
-
});
|
|
176
|
-
|
|
177
|
-
describe('getNumberEnv', () => {
|
|
178
|
-
it('should parse valid numbers', () => {
|
|
179
|
-
process.env.NUM_TEST = '42';
|
|
180
|
-
getEnvironment().clearCache(); // Clear cache after setting env var
|
|
181
|
-
expect(getNumberEnv('NUM_TEST')).toBe(42);
|
|
182
|
-
|
|
183
|
-
process.env.NUM_TEST = '3.14';
|
|
184
|
-
getEnvironment().clearCache(); // Clear cache after setting env var
|
|
185
|
-
expect(getNumberEnv('NUM_TEST')).toBe(3.14);
|
|
186
|
-
|
|
187
|
-
process.env.NUM_TEST = '-100';
|
|
188
|
-
getEnvironment().clearCache(); // Clear cache after setting env var
|
|
189
|
-
expect(getNumberEnv('NUM_TEST')).toBe(-100);
|
|
190
|
-
|
|
191
|
-
delete process.env.NUM_TEST;
|
|
192
|
-
});
|
|
193
|
-
|
|
194
|
-
it('should return undefined for invalid numbers', () => {
|
|
195
|
-
process.env.NUM_TEST = 'not a number';
|
|
196
|
-
expect(getNumberEnv('NUM_TEST')).toBeUndefined();
|
|
197
|
-
delete process.env.NUM_TEST;
|
|
198
|
-
});
|
|
199
|
-
|
|
200
|
-
it('should return default value when not set or invalid', () => {
|
|
201
|
-
expect(getNumberEnv('NOT_SET', 100)).toBe(100);
|
|
202
|
-
|
|
203
|
-
process.env.INVALID_NUM = 'abc';
|
|
204
|
-
expect(getNumberEnv('INVALID_NUM', 200)).toBe(200);
|
|
205
|
-
delete process.env.INVALID_NUM;
|
|
206
|
-
});
|
|
207
|
-
});
|
|
208
|
-
|
|
209
|
-
describe('Browser Environment', () => {
|
|
210
|
-
it.skip('should initialize browser environment with config', () => {
|
|
211
|
-
// Mock browser environment
|
|
212
|
-
delete (global as any).process;
|
|
213
|
-
(global as any).window = { document: {} };
|
|
214
|
-
|
|
215
|
-
const { Environment, initBrowserEnvironment: init } = require('../environment');
|
|
216
|
-
const env = new Environment();
|
|
217
|
-
|
|
218
|
-
// Initialize with config
|
|
219
|
-
init({
|
|
220
|
-
API_KEY: 'test-key',
|
|
221
|
-
DEBUG: true,
|
|
222
|
-
MAX_RETRIES: 3,
|
|
223
|
-
});
|
|
224
|
-
|
|
225
|
-
// Check values were set
|
|
226
|
-
expect(env.get('API_KEY')).toBe('test-key');
|
|
227
|
-
expect(env.get('DEBUG')).toBe('true');
|
|
228
|
-
expect(env.get('MAX_RETRIES')).toBe('3');
|
|
229
|
-
});
|
|
230
|
-
|
|
231
|
-
it.skip('should read from window.ENV in browser', () => {
|
|
232
|
-
// Mock browser with window.ENV
|
|
233
|
-
delete (global as any).process;
|
|
234
|
-
(global as any).window = {
|
|
235
|
-
document: {},
|
|
236
|
-
ENV: {
|
|
237
|
-
PRESET_VAR: 'preset_value',
|
|
238
|
-
},
|
|
239
|
-
};
|
|
240
|
-
|
|
241
|
-
const { Environment } = require('../environment');
|
|
242
|
-
const env = new Environment();
|
|
243
|
-
|
|
244
|
-
expect(env.get('PRESET_VAR')).toBe('preset_value');
|
|
245
|
-
});
|
|
246
|
-
|
|
247
|
-
it.skip('should read from globalThis.__ENV__ in browser', () => {
|
|
248
|
-
// Mock browser with globalThis.__ENV__
|
|
249
|
-
delete (global as any).process;
|
|
250
|
-
(global as any).window = { document: {} };
|
|
251
|
-
(global as any).globalThis = {
|
|
252
|
-
__ENV__: {
|
|
253
|
-
GLOBAL_VAR: 'global_value',
|
|
254
|
-
},
|
|
255
|
-
};
|
|
256
|
-
|
|
257
|
-
const { Environment } = require('../environment');
|
|
258
|
-
const env = new Environment();
|
|
259
|
-
|
|
260
|
-
expect(env.get('GLOBAL_VAR')).toBe('global_value');
|
|
261
|
-
});
|
|
262
|
-
});
|
|
263
|
-
|
|
264
|
-
describe('getEnvironment singleton', () => {
|
|
265
|
-
it('should return the same instance', () => {
|
|
266
|
-
const env1 = getEnvironment();
|
|
267
|
-
const env2 = getEnvironment();
|
|
268
|
-
expect(env1).toBe(env2);
|
|
269
|
-
});
|
|
270
|
-
});
|
|
271
|
-
|
|
272
|
-
describe('getAll', () => {
|
|
273
|
-
it('should return all environment variables', () => {
|
|
274
|
-
process.env.TEST1 = 'value1';
|
|
275
|
-
process.env.TEST2 = 'value2';
|
|
276
|
-
|
|
277
|
-
const allVars = getEnvironment().getAll();
|
|
278
|
-
expect(allVars.TEST1).toBe('value1');
|
|
279
|
-
expect(allVars.TEST2).toBe('value2');
|
|
280
|
-
|
|
281
|
-
delete process.env.TEST1;
|
|
282
|
-
delete process.env.TEST2;
|
|
283
|
-
});
|
|
284
|
-
});
|
|
285
|
-
});
|