@cogitator-ai/sandbox 0.2.24 → 0.2.28
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/LICENSE +21 -0
- package/README.md +5 -7
- package/dist/executors/docker.d.ts +1 -1
- package/dist/executors/docker.js +3 -3
- package/dist/executors/index.d.ts +4 -4
- package/dist/executors/index.js +4 -4
- package/dist/executors/native.d.ts +1 -1
- package/dist/executors/native.js +1 -1
- package/dist/executors/wasm.d.ts +1 -1
- package/dist/executors/wasm.d.ts.map +1 -1
- package/dist/executors/wasm.js +13 -4
- package/dist/executors/wasm.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/pool/container-pool.d.ts +1 -1
- package/dist/pool/index.d.ts +1 -1
- package/dist/pool/index.js +1 -1
- package/dist/sandbox-manager.js +3 -3
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.js +1 -1
- package/package.json +14 -15
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Cogitator Contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -216,9 +216,8 @@ import { WasmSandboxExecutor } from '@cogitator-ai/sandbox';
|
|
|
216
216
|
|
|
217
217
|
const wasm = new WasmSandboxExecutor({
|
|
218
218
|
wasm: {
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
memoryLimit: 64,
|
|
219
|
+
cacheSize: 10,
|
|
220
|
+
wasi: true,
|
|
222
221
|
},
|
|
223
222
|
});
|
|
224
223
|
|
|
@@ -231,10 +230,9 @@ const result = await wasm.execute(
|
|
|
231
230
|
},
|
|
232
231
|
{
|
|
233
232
|
type: 'wasm',
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
},
|
|
233
|
+
wasmModule: 'https://example.com/plugin.wasm',
|
|
234
|
+
wasmFunction: 'run',
|
|
235
|
+
wasi: true,
|
|
238
236
|
timeout: 5000,
|
|
239
237
|
}
|
|
240
238
|
);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Docker sandbox executor - isolated execution in containers
|
|
3
3
|
*/
|
|
4
4
|
import type { SandboxConfig, SandboxExecutionRequest, SandboxExecutionResult, SandboxResult, SandboxDockerConfig, SandboxPoolConfig } from '@cogitator-ai/types';
|
|
5
|
-
import { BaseSandboxExecutor } from './base';
|
|
5
|
+
import { BaseSandboxExecutor } from './base.js';
|
|
6
6
|
export interface DockerExecutorOptions {
|
|
7
7
|
docker?: SandboxDockerConfig;
|
|
8
8
|
pool?: SandboxPoolConfig;
|
package/dist/executors/docker.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Docker sandbox executor - isolated execution in containers
|
|
3
3
|
*/
|
|
4
|
-
import { BaseSandboxExecutor } from './base';
|
|
5
|
-
import { ContainerPool } from '../pool/container-pool';
|
|
6
|
-
import { parseMemory } from '../utils/parse-resources';
|
|
4
|
+
import { BaseSandboxExecutor } from './base.js';
|
|
5
|
+
import { ContainerPool } from '../pool/container-pool.js';
|
|
6
|
+
import { parseMemory } from '../utils/parse-resources.js';
|
|
7
7
|
const MAX_OUTPUT_SIZE = 50_000;
|
|
8
8
|
const DEFAULT_TIMEOUT = 30_000;
|
|
9
9
|
const DEFAULT_IMAGE = 'alpine:3.19';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { BaseSandboxExecutor } from './base';
|
|
2
|
-
export { NativeSandboxExecutor } from './native';
|
|
3
|
-
export { DockerSandboxExecutor, type DockerExecutorOptions } from './docker';
|
|
4
|
-
export { WasmSandboxExecutor, type WasmExecutorOptions } from './wasm';
|
|
1
|
+
export { BaseSandboxExecutor } from './base.js';
|
|
2
|
+
export { NativeSandboxExecutor } from './native.js';
|
|
3
|
+
export { DockerSandboxExecutor, type DockerExecutorOptions } from './docker.js';
|
|
4
|
+
export { WasmSandboxExecutor, type WasmExecutorOptions } from './wasm.js';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/executors/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { BaseSandboxExecutor } from './base';
|
|
2
|
-
export { NativeSandboxExecutor } from './native';
|
|
3
|
-
export { DockerSandboxExecutor } from './docker';
|
|
4
|
-
export { WasmSandboxExecutor } from './wasm';
|
|
1
|
+
export { BaseSandboxExecutor } from './base.js';
|
|
2
|
+
export { NativeSandboxExecutor } from './native.js';
|
|
3
|
+
export { DockerSandboxExecutor } from './docker.js';
|
|
4
|
+
export { WasmSandboxExecutor } from './wasm.js';
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Used as fallback when Docker is unavailable.
|
|
4
4
|
*/
|
|
5
5
|
import type { SandboxConfig, SandboxExecutionRequest, SandboxExecutionResult, SandboxResult } from '@cogitator-ai/types';
|
|
6
|
-
import { BaseSandboxExecutor } from './base';
|
|
6
|
+
import { BaseSandboxExecutor } from './base.js';
|
|
7
7
|
export declare class NativeSandboxExecutor extends BaseSandboxExecutor {
|
|
8
8
|
readonly type = "native";
|
|
9
9
|
connect(): Promise<SandboxResult<void>>;
|
package/dist/executors/native.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { exec as execCallback } from 'node:child_process';
|
|
6
6
|
import { promisify } from 'node:util';
|
|
7
|
-
import { BaseSandboxExecutor } from './base';
|
|
7
|
+
import { BaseSandboxExecutor } from './base.js';
|
|
8
8
|
const execPromise = promisify(execCallback);
|
|
9
9
|
const MAX_OUTPUT_SIZE = 50_000;
|
|
10
10
|
const MAX_BUFFER = 10 * 1024 * 1024;
|
package/dist/executors/wasm.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Memory: 1-10MB per plugin (vs Docker 50-200MB)
|
|
7
7
|
*/
|
|
8
8
|
import type { SandboxConfig, SandboxExecutionRequest, SandboxExecutionResult, SandboxResult, SandboxWasmConfig } from '@cogitator-ai/types';
|
|
9
|
-
import { BaseSandboxExecutor } from './base';
|
|
9
|
+
import { BaseSandboxExecutor } from './base.js';
|
|
10
10
|
export interface WasmExecutorOptions {
|
|
11
11
|
wasm?: SandboxWasmConfig;
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasm.d.ts","sourceRoot":"","sources":["../../src/executors/wasm.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,uBAAuB,EACvB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"wasm.d.ts","sourceRoot":"","sources":["../../src/executors/wasm.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,uBAAuB,EACvB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAK7C,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAiBD,qBAAa,mBAAoB,SAAQ,mBAAmB;IAC1D,QAAQ,CAAC,IAAI,UAAU;IACvB,OAAO,CAAC,YAAY,CAAC,CAAiB;IACtC,OAAO,CAAC,WAAW,CAAmC;IACtD,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,UAAU,CAAgB;gBAEtB,OAAO,GAAE,mBAAwB;IAKvC,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAYvC,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAgB1C,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ/B,OAAO,CACX,OAAO,EAAE,uBAAuB,EAChC,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;YAkCnC,iBAAiB;YAkCjB,cAAc;IAoB5B,OAAO,CAAC,UAAU;YAWJ,kBAAkB;CA+DjC"}
|
package/dist/executors/wasm.js
CHANGED
|
@@ -5,9 +5,10 @@
|
|
|
5
5
|
* Cold start: 1-10ms (vs Docker 1-5s)
|
|
6
6
|
* Memory: 1-10MB per plugin (vs Docker 50-200MB)
|
|
7
7
|
*/
|
|
8
|
-
import { BaseSandboxExecutor } from './base';
|
|
8
|
+
import { BaseSandboxExecutor } from './base.js';
|
|
9
9
|
import { readFile } from 'node:fs/promises';
|
|
10
10
|
import { existsSync } from 'node:fs';
|
|
11
|
+
import { createRequire } from 'node:module';
|
|
11
12
|
const DEFAULT_TIMEOUT = 30_000;
|
|
12
13
|
const DEFAULT_FUNCTION = 'run';
|
|
13
14
|
const MAX_OUTPUT_SIZE = 50_000;
|
|
@@ -114,7 +115,8 @@ export class WasmSandboxExecutor extends BaseSandboxExecutor {
|
|
|
114
115
|
return await readFile(wasmModule);
|
|
115
116
|
}
|
|
116
117
|
try {
|
|
117
|
-
const
|
|
118
|
+
const req = createRequire(import.meta.url);
|
|
119
|
+
const resolved = req.resolve(wasmModule);
|
|
118
120
|
return await readFile(resolved);
|
|
119
121
|
}
|
|
120
122
|
catch {
|
|
@@ -163,8 +165,9 @@ export class WasmSandboxExecutor extends BaseSandboxExecutor {
|
|
|
163
165
|
};
|
|
164
166
|
}
|
|
165
167
|
})();
|
|
168
|
+
let timer = null;
|
|
166
169
|
const timeoutPromise = new Promise((resolve) => {
|
|
167
|
-
setTimeout(() => {
|
|
170
|
+
timer = setTimeout(() => {
|
|
168
171
|
resolve({
|
|
169
172
|
stdout: '',
|
|
170
173
|
stderr: 'Execution timed out',
|
|
@@ -173,7 +176,13 @@ export class WasmSandboxExecutor extends BaseSandboxExecutor {
|
|
|
173
176
|
});
|
|
174
177
|
}, timeoutMs);
|
|
175
178
|
});
|
|
176
|
-
|
|
179
|
+
try {
|
|
180
|
+
return await Promise.race([executePromise, timeoutPromise]);
|
|
181
|
+
}
|
|
182
|
+
finally {
|
|
183
|
+
if (timer)
|
|
184
|
+
clearTimeout(timer);
|
|
185
|
+
}
|
|
177
186
|
}
|
|
178
187
|
}
|
|
179
188
|
//# sourceMappingURL=wasm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasm.js","sourceRoot":"","sources":["../../src/executors/wasm.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"wasm.js","sourceRoot":"","sources":["../../src/executors/wasm.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Docker-based sandbox execution for Cogitator agents
|
|
5
5
|
*/
|
|
6
|
-
export { SandboxManager } from './sandbox-manager';
|
|
7
|
-
export { BaseSandboxExecutor, NativeSandboxExecutor, DockerSandboxExecutor, type DockerExecutorOptions, } from './executors/index';
|
|
8
|
-
export { ContainerPool, type ContainerPoolOptions, type ContainerCreateOptions, } from './pool/index';
|
|
9
|
-
export { parseMemory, cpusToNanoCpus } from './utils/index';
|
|
6
|
+
export { SandboxManager } from './sandbox-manager.js';
|
|
7
|
+
export { BaseSandboxExecutor, NativeSandboxExecutor, DockerSandboxExecutor, type DockerExecutorOptions, WasmSandboxExecutor, type WasmExecutorOptions, } from './executors/index.js';
|
|
8
|
+
export { ContainerPool, type ContainerPoolOptions, type ContainerCreateOptions, } from './pool/index.js';
|
|
9
|
+
export { parseMemory, cpusToNanoCpus } from './utils/index.js';
|
|
10
10
|
export type { SandboxType, SandboxConfig, SandboxResourceLimits, SandboxNetworkConfig, SandboxMount, SandboxExecutionRequest, SandboxExecutionResult, SandboxManagerConfig, SandboxPoolConfig, SandboxDockerConfig, SandboxResult, } from '@cogitator-ai/types';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,qBAAqB,EAC1B,mBAAmB,EACnB,KAAK,mBAAmB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,GAC5B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE5D,YAAY,EACV,WAAW,EACX,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,GACd,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Docker-based sandbox execution for Cogitator agents
|
|
5
5
|
*/
|
|
6
|
-
export { SandboxManager } from './sandbox-manager';
|
|
7
|
-
export { BaseSandboxExecutor, NativeSandboxExecutor, DockerSandboxExecutor, } from './executors/index';
|
|
8
|
-
export { ContainerPool, } from './pool/index';
|
|
9
|
-
export { parseMemory, cpusToNanoCpus } from './utils/index';
|
|
6
|
+
export { SandboxManager } from './sandbox-manager.js';
|
|
7
|
+
export { BaseSandboxExecutor, NativeSandboxExecutor, DockerSandboxExecutor, WasmSandboxExecutor, } from './executors/index.js';
|
|
8
|
+
export { ContainerPool, } from './pool/index.js';
|
|
9
|
+
export { parseMemory, cpusToNanoCpus } from './utils/index.js';
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EAErB,mBAAmB,GAEpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,aAAa,GAGd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Container pool for reusing Docker containers
|
|
3
3
|
*/
|
|
4
4
|
import type { SandboxMount } from '@cogitator-ai/types';
|
|
5
|
-
import type { Docker, DockerContainer } from '../docker-types';
|
|
5
|
+
import type { Docker, DockerContainer } from '../docker-types.js';
|
|
6
6
|
export interface ContainerCreateOptions {
|
|
7
7
|
memory?: number;
|
|
8
8
|
cpus?: number;
|
package/dist/pool/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './container-pool';
|
|
1
|
+
export * from './container-pool.js';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/pool/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './container-pool';
|
|
1
|
+
export * from './container-pool.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/sandbox-manager.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Sandbox manager - orchestrates sandbox execution
|
|
3
3
|
*/
|
|
4
|
-
import { DockerSandboxExecutor } from './executors/docker';
|
|
5
|
-
import { NativeSandboxExecutor } from './executors/native';
|
|
6
|
-
import { WasmSandboxExecutor } from './executors/wasm';
|
|
4
|
+
import { DockerSandboxExecutor } from './executors/docker.js';
|
|
5
|
+
import { NativeSandboxExecutor } from './executors/native.js';
|
|
6
|
+
import { WasmSandboxExecutor } from './executors/wasm.js';
|
|
7
7
|
export class SandboxManager {
|
|
8
8
|
executors = new Map();
|
|
9
9
|
config;
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './parse-resources';
|
|
1
|
+
export * from './parse-resources.js';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/utils/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './parse-resources';
|
|
1
|
+
export * from './parse-resources.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cogitator-ai/sandbox",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.28",
|
|
4
4
|
"description": "Sandbox execution for Cogitator agents (Docker and WASM)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -14,25 +14,16 @@
|
|
|
14
14
|
"files": [
|
|
15
15
|
"dist"
|
|
16
16
|
],
|
|
17
|
-
"scripts": {
|
|
18
|
-
"build": "tsc",
|
|
19
|
-
"dev": "tsc --watch",
|
|
20
|
-
"clean": "rm -rf dist",
|
|
21
|
-
"typecheck": "tsc --noEmit",
|
|
22
|
-
"test": "vitest run",
|
|
23
|
-
"test:watch": "vitest"
|
|
24
|
-
},
|
|
25
17
|
"dependencies": {
|
|
26
|
-
"@cogitator-ai/types": "
|
|
27
|
-
"@types/dockerode": "^3.3.31",
|
|
28
|
-
"@types/node": "^25.0.10",
|
|
29
|
-
"nanoid": "^5.0.4"
|
|
18
|
+
"@cogitator-ai/types": "0.22.2"
|
|
30
19
|
},
|
|
31
20
|
"optionalDependencies": {
|
|
32
21
|
"@extism/extism": "^1.0.3",
|
|
33
22
|
"dockerode": "^4.0.2"
|
|
34
23
|
},
|
|
35
24
|
"devDependencies": {
|
|
25
|
+
"@types/dockerode": "^3.3.31",
|
|
26
|
+
"@types/node": "^25.0.10",
|
|
36
27
|
"typescript": "^5.3.0",
|
|
37
28
|
"vitest": "^4.0.18"
|
|
38
29
|
},
|
|
@@ -57,5 +48,13 @@
|
|
|
57
48
|
"access": "public",
|
|
58
49
|
"registry": "https://npm.pkg.github.com"
|
|
59
50
|
},
|
|
60
|
-
"license": "MIT"
|
|
61
|
-
|
|
51
|
+
"license": "MIT",
|
|
52
|
+
"scripts": {
|
|
53
|
+
"build": "tsc",
|
|
54
|
+
"dev": "tsc --watch",
|
|
55
|
+
"clean": "rm -rf dist",
|
|
56
|
+
"typecheck": "tsc --noEmit",
|
|
57
|
+
"test": "vitest run",
|
|
58
|
+
"test:watch": "vitest"
|
|
59
|
+
}
|
|
60
|
+
}
|