@loopstack/sandbox-filesystem 0.6.0 → 0.7.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/README.md +16 -13
- package/dist/tools/sandbox-create-directory.tool.d.ts +6 -3
- package/dist/tools/sandbox-create-directory.tool.d.ts.map +1 -1
- package/dist/tools/sandbox-create-directory.tool.js +11 -11
- package/dist/tools/sandbox-create-directory.tool.js.map +1 -1
- package/dist/tools/sandbox-delete.tool.d.ts +6 -3
- package/dist/tools/sandbox-delete.tool.d.ts.map +1 -1
- package/dist/tools/sandbox-delete.tool.js +11 -11
- package/dist/tools/sandbox-delete.tool.js.map +1 -1
- package/dist/tools/sandbox-exists.tool.d.ts +6 -3
- package/dist/tools/sandbox-exists.tool.d.ts.map +1 -1
- package/dist/tools/sandbox-exists.tool.js +11 -11
- package/dist/tools/sandbox-exists.tool.js.map +1 -1
- package/dist/tools/sandbox-file-info.tool.d.ts +6 -3
- package/dist/tools/sandbox-file-info.tool.d.ts.map +1 -1
- package/dist/tools/sandbox-file-info.tool.js +11 -11
- package/dist/tools/sandbox-file-info.tool.js.map +1 -1
- package/dist/tools/sandbox-list-directory.tool.d.ts +6 -3
- package/dist/tools/sandbox-list-directory.tool.d.ts.map +1 -1
- package/dist/tools/sandbox-list-directory.tool.js +11 -11
- package/dist/tools/sandbox-list-directory.tool.js.map +1 -1
- package/dist/tools/sandbox-read-file.tool.d.ts +6 -3
- package/dist/tools/sandbox-read-file.tool.d.ts.map +1 -1
- package/dist/tools/sandbox-read-file.tool.js +11 -11
- package/dist/tools/sandbox-read-file.tool.js.map +1 -1
- package/dist/tools/sandbox-write-file.tool.d.ts +6 -3
- package/dist/tools/sandbox-write-file.tool.d.ts.map +1 -1
- package/dist/tools/sandbox-write-file.tool.js +11 -11
- package/dist/tools/sandbox-write-file.tool.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ See [SETUP.md](./SETUP.md) for installation and setup instructions.
|
|
|
30
30
|
|
|
31
31
|
## Usage
|
|
32
32
|
|
|
33
|
-
Inject the tools in your workflow class
|
|
33
|
+
Inject the tools in your workflow class via the constructor:
|
|
34
34
|
|
|
35
35
|
```typescript
|
|
36
36
|
import { z } from 'zod';
|
|
@@ -53,18 +53,21 @@ import { SandboxDestroy, SandboxInit } from '@loopstack/sandbox-tool';
|
|
|
53
53
|
}),
|
|
54
54
|
})
|
|
55
55
|
export class MyWorkflow extends BaseWorkflow<{ outputDir: string }> {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
56
|
+
constructor(
|
|
57
|
+
// Sandbox lifecycle tools (from @loopstack/sandbox-tool)
|
|
58
|
+
private readonly sandboxInit: SandboxInit,
|
|
59
|
+
private readonly sandboxDestroy: SandboxDestroy,
|
|
60
|
+
// Filesystem tools (from @loopstack/sandbox-filesystem)
|
|
61
|
+
private readonly sandboxWriteFile: SandboxWriteFile,
|
|
62
|
+
private readonly sandboxReadFile: SandboxReadFile,
|
|
63
|
+
private readonly sandboxListDirectory: SandboxListDirectory,
|
|
64
|
+
private readonly sandboxCreateDirectory: SandboxCreateDirectory,
|
|
65
|
+
private readonly sandboxDelete: SandboxDelete,
|
|
66
|
+
private readonly sandboxExists: SandboxExists,
|
|
67
|
+
private readonly sandboxFileInfo: SandboxFileInfo,
|
|
68
|
+
) {
|
|
69
|
+
super();
|
|
70
|
+
}
|
|
68
71
|
|
|
69
72
|
containerId?: string;
|
|
70
73
|
fileContent?: string;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { BaseTool, ToolResult } from '@loopstack/common';
|
|
3
|
+
import type { LoopstackContext } from '@loopstack/common';
|
|
4
|
+
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
3
5
|
declare const inputSchema: z.ZodObject<{
|
|
4
6
|
containerId: z.ZodString;
|
|
5
7
|
path: z.ZodString;
|
|
@@ -10,10 +12,11 @@ interface SandboxCreateDirectoryResult {
|
|
|
10
12
|
path: string;
|
|
11
13
|
created: boolean;
|
|
12
14
|
}
|
|
13
|
-
export declare class SandboxCreateDirectory extends BaseTool {
|
|
15
|
+
export declare class SandboxCreateDirectory extends BaseTool<SandboxCreateDirectoryArgs, object, SandboxCreateDirectoryResult> {
|
|
16
|
+
private readonly sandboxCommand;
|
|
14
17
|
private readonly logger;
|
|
15
|
-
|
|
16
|
-
|
|
18
|
+
constructor(sandboxCommand: SandboxCommand);
|
|
19
|
+
protected handle(args: SandboxCreateDirectoryArgs, _ctx: LoopstackContext): Promise<ToolResult<SandboxCreateDirectoryResult>>;
|
|
17
20
|
}
|
|
18
21
|
export {};
|
|
19
22
|
//# sourceMappingURL=sandbox-create-directory.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-create-directory.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-create-directory.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"sandbox-create-directory.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-create-directory.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAQ,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;;kBAMN,CAAC;AAEZ,KAAK,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAE9D,UAAU,4BAA4B;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qBAKa,sBAAuB,SAAQ,QAAQ,CAAC,0BAA0B,EAAE,MAAM,EAAE,4BAA4B,CAAC;IAGxG,OAAO,CAAC,QAAQ,CAAC,cAAc;IAF3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;gBAErC,cAAc,EAAE,cAAc;cAI3C,MAAM,CACpB,IAAI,EAAE,0BAA0B,EAChC,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,UAAU,CAAC,4BAA4B,CAAC,CAAC;CAyCrD"}
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var SandboxCreateDirectory_1;
|
|
11
11
|
import { Logger } from '@nestjs/common';
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { BaseTool,
|
|
13
|
+
import { BaseTool, Tool } from '@loopstack/common';
|
|
14
14
|
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
15
15
|
const inputSchema = z
|
|
16
16
|
.object({
|
|
@@ -20,9 +20,13 @@ const inputSchema = z
|
|
|
20
20
|
})
|
|
21
21
|
.strict();
|
|
22
22
|
let SandboxCreateDirectory = SandboxCreateDirectory_1 = class SandboxCreateDirectory extends BaseTool {
|
|
23
|
-
logger = new Logger(SandboxCreateDirectory_1.name);
|
|
24
23
|
sandboxCommand;
|
|
25
|
-
|
|
24
|
+
logger = new Logger(SandboxCreateDirectory_1.name);
|
|
25
|
+
constructor(sandboxCommand) {
|
|
26
|
+
super();
|
|
27
|
+
this.sandboxCommand = sandboxCommand;
|
|
28
|
+
}
|
|
29
|
+
async handle(args, _ctx) {
|
|
26
30
|
const { containerId, path: dirPath, recursive } = args;
|
|
27
31
|
this.logger.debug(`Creating directory ${dirPath} in container ${containerId} (recursive: ${recursive})`);
|
|
28
32
|
const mkdirArgs = recursive ? ['-p', dirPath] : [dirPath];
|
|
@@ -56,17 +60,13 @@ let SandboxCreateDirectory = SandboxCreateDirectory_1 = class SandboxCreateDirec
|
|
|
56
60
|
};
|
|
57
61
|
}
|
|
58
62
|
};
|
|
59
|
-
__decorate([
|
|
60
|
-
InjectTool(),
|
|
61
|
-
__metadata("design:type", SandboxCommand)
|
|
62
|
-
], SandboxCreateDirectory.prototype, "sandboxCommand", void 0);
|
|
63
63
|
SandboxCreateDirectory = SandboxCreateDirectory_1 = __decorate([
|
|
64
64
|
Tool({
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
},
|
|
65
|
+
name: 'sandbox_create_directory',
|
|
66
|
+
description: 'Create a directory in a sandbox container',
|
|
68
67
|
schema: inputSchema,
|
|
69
|
-
})
|
|
68
|
+
}),
|
|
69
|
+
__metadata("design:paramtypes", [SandboxCommand])
|
|
70
70
|
], SandboxCreateDirectory);
|
|
71
71
|
export { SandboxCreateDirectory };
|
|
72
72
|
//# sourceMappingURL=sandbox-create-directory.tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-create-directory.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-create-directory.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"sandbox-create-directory.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-create-directory.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { BaseTool, ToolResult } from '@loopstack/common';
|
|
3
|
+
import type { LoopstackContext } from '@loopstack/common';
|
|
4
|
+
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
3
5
|
declare const inputSchema: z.ZodObject<{
|
|
4
6
|
containerId: z.ZodString;
|
|
5
7
|
path: z.ZodString;
|
|
@@ -11,10 +13,11 @@ interface SandboxDeleteResult {
|
|
|
11
13
|
path: string;
|
|
12
14
|
deleted: boolean;
|
|
13
15
|
}
|
|
14
|
-
export declare class SandboxDelete extends BaseTool {
|
|
16
|
+
export declare class SandboxDelete extends BaseTool<SandboxDeleteArgs, object, SandboxDeleteResult> {
|
|
17
|
+
private readonly sandboxCommand;
|
|
15
18
|
private readonly logger;
|
|
16
|
-
|
|
17
|
-
|
|
19
|
+
constructor(sandboxCommand: SandboxCommand);
|
|
20
|
+
protected handle(args: SandboxDeleteArgs, _ctx: LoopstackContext): Promise<ToolResult<SandboxDeleteResult>>;
|
|
18
21
|
}
|
|
19
22
|
export {};
|
|
20
23
|
//# sourceMappingURL=sandbox-delete.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-delete.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-delete.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"sandbox-delete.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-delete.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAQ,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;;;kBAON,CAAC;AAEZ,KAAK,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAErD,UAAU,mBAAmB;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qBAKa,aAAc,SAAQ,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,CAAC;IAG7E,OAAO,CAAC,QAAQ,CAAC,cAAc;IAF3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;gBAE5B,cAAc,EAAE,cAAc;cAI3C,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;CAqClH"}
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var SandboxDelete_1;
|
|
11
11
|
import { Logger } from '@nestjs/common';
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { BaseTool,
|
|
13
|
+
import { BaseTool, Tool } from '@loopstack/common';
|
|
14
14
|
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
15
15
|
const inputSchema = z
|
|
16
16
|
.object({
|
|
@@ -21,9 +21,13 @@ const inputSchema = z
|
|
|
21
21
|
})
|
|
22
22
|
.strict();
|
|
23
23
|
let SandboxDelete = SandboxDelete_1 = class SandboxDelete extends BaseTool {
|
|
24
|
-
logger = new Logger(SandboxDelete_1.name);
|
|
25
24
|
sandboxCommand;
|
|
26
|
-
|
|
25
|
+
logger = new Logger(SandboxDelete_1.name);
|
|
26
|
+
constructor(sandboxCommand) {
|
|
27
|
+
super();
|
|
28
|
+
this.sandboxCommand = sandboxCommand;
|
|
29
|
+
}
|
|
30
|
+
async handle(args, _ctx) {
|
|
27
31
|
const { containerId, path: targetPath, recursive, force } = args;
|
|
28
32
|
this.logger.debug(`Deleting ${targetPath} in container ${containerId} (recursive: ${recursive}, force: ${force})`);
|
|
29
33
|
const rmArgs = [];
|
|
@@ -56,17 +60,13 @@ let SandboxDelete = SandboxDelete_1 = class SandboxDelete extends BaseTool {
|
|
|
56
60
|
};
|
|
57
61
|
}
|
|
58
62
|
};
|
|
59
|
-
__decorate([
|
|
60
|
-
InjectTool(),
|
|
61
|
-
__metadata("design:type", SandboxCommand)
|
|
62
|
-
], SandboxDelete.prototype, "sandboxCommand", void 0);
|
|
63
63
|
SandboxDelete = SandboxDelete_1 = __decorate([
|
|
64
64
|
Tool({
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
},
|
|
65
|
+
name: 'sandbox_delete',
|
|
66
|
+
description: 'Delete a file or directory in a sandbox container',
|
|
68
67
|
schema: inputSchema,
|
|
69
|
-
})
|
|
68
|
+
}),
|
|
69
|
+
__metadata("design:paramtypes", [SandboxCommand])
|
|
70
70
|
], SandboxDelete);
|
|
71
71
|
export { SandboxDelete };
|
|
72
72
|
//# sourceMappingURL=sandbox-delete.tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-delete.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-delete.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"sandbox-delete.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-delete.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { BaseTool, ToolResult } from '@loopstack/common';
|
|
3
|
+
import type { LoopstackContext } from '@loopstack/common';
|
|
4
|
+
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
3
5
|
declare const inputSchema: z.ZodObject<{
|
|
4
6
|
containerId: z.ZodString;
|
|
5
7
|
path: z.ZodString;
|
|
@@ -10,10 +12,11 @@ interface SandboxExistsResult {
|
|
|
10
12
|
exists: boolean;
|
|
11
13
|
type: 'file' | 'directory' | 'symlink' | 'other' | null;
|
|
12
14
|
}
|
|
13
|
-
export declare class SandboxExists extends BaseTool {
|
|
15
|
+
export declare class SandboxExists extends BaseTool<SandboxExistsArgs, object, SandboxExistsResult> {
|
|
16
|
+
private readonly sandboxCommand;
|
|
14
17
|
private readonly logger;
|
|
15
|
-
|
|
16
|
-
|
|
18
|
+
constructor(sandboxCommand: SandboxCommand);
|
|
19
|
+
protected handle(args: SandboxExistsArgs, _ctx: LoopstackContext): Promise<ToolResult<SandboxExistsResult>>;
|
|
17
20
|
private parseFileType;
|
|
18
21
|
}
|
|
19
22
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-exists.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-exists.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"sandbox-exists.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-exists.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAQ,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;kBAKN,CAAC;AAEZ,KAAK,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAErD,UAAU,mBAAmB;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC;CACzD;AAED,qBAKa,aAAc,SAAQ,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,CAAC;IAG7E,OAAO,CAAC,QAAQ,CAAC,cAAc;IAF3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;gBAE5B,cAAc,EAAE,cAAc;cAI3C,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;IA8CjH,OAAO,CAAC,aAAa;CAOtB"}
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var SandboxExists_1;
|
|
11
11
|
import { Logger } from '@nestjs/common';
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { BaseTool,
|
|
13
|
+
import { BaseTool, Tool } from '@loopstack/common';
|
|
14
14
|
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
15
15
|
const inputSchema = z
|
|
16
16
|
.object({
|
|
@@ -19,9 +19,13 @@ const inputSchema = z
|
|
|
19
19
|
})
|
|
20
20
|
.strict();
|
|
21
21
|
let SandboxExists = SandboxExists_1 = class SandboxExists extends BaseTool {
|
|
22
|
-
logger = new Logger(SandboxExists_1.name);
|
|
23
22
|
sandboxCommand;
|
|
24
|
-
|
|
23
|
+
logger = new Logger(SandboxExists_1.name);
|
|
24
|
+
constructor(sandboxCommand) {
|
|
25
|
+
super();
|
|
26
|
+
this.sandboxCommand = sandboxCommand;
|
|
27
|
+
}
|
|
28
|
+
async handle(args, _ctx) {
|
|
25
29
|
const { containerId, path: targetPath } = args;
|
|
26
30
|
this.logger.debug(`Checking existence of ${targetPath} in container ${containerId}`);
|
|
27
31
|
const result = await this.sandboxCommand.call({
|
|
@@ -68,17 +72,13 @@ let SandboxExists = SandboxExists_1 = class SandboxExists extends BaseTool {
|
|
|
68
72
|
return 'other';
|
|
69
73
|
}
|
|
70
74
|
};
|
|
71
|
-
__decorate([
|
|
72
|
-
InjectTool(),
|
|
73
|
-
__metadata("design:type", SandboxCommand)
|
|
74
|
-
], SandboxExists.prototype, "sandboxCommand", void 0);
|
|
75
75
|
SandboxExists = SandboxExists_1 = __decorate([
|
|
76
76
|
Tool({
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
},
|
|
77
|
+
name: 'sandbox_exists',
|
|
78
|
+
description: 'Check if a file or directory exists in a sandbox container',
|
|
80
79
|
schema: inputSchema,
|
|
81
|
-
})
|
|
80
|
+
}),
|
|
81
|
+
__metadata("design:paramtypes", [SandboxCommand])
|
|
82
82
|
], SandboxExists);
|
|
83
83
|
export { SandboxExists };
|
|
84
84
|
//# sourceMappingURL=sandbox-exists.tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-exists.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-exists.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"sandbox-exists.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-exists.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { BaseTool, ToolResult } from '@loopstack/common';
|
|
3
|
+
import type { LoopstackContext } from '@loopstack/common';
|
|
4
|
+
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
3
5
|
declare const inputSchema: z.ZodObject<{
|
|
4
6
|
containerId: z.ZodString;
|
|
5
7
|
path: z.ZodString;
|
|
@@ -17,10 +19,11 @@ interface SandboxFileInfoResult {
|
|
|
17
19
|
accessedAt: string;
|
|
18
20
|
createdAt: string;
|
|
19
21
|
}
|
|
20
|
-
export declare class SandboxFileInfo extends BaseTool {
|
|
22
|
+
export declare class SandboxFileInfo extends BaseTool<SandboxFileInfoArgs, object, SandboxFileInfoResult> {
|
|
23
|
+
private readonly sandboxCommand;
|
|
21
24
|
private readonly logger;
|
|
22
|
-
|
|
23
|
-
|
|
25
|
+
constructor(sandboxCommand: SandboxCommand);
|
|
26
|
+
protected handle(args: SandboxFileInfoArgs, _ctx: LoopstackContext): Promise<ToolResult<SandboxFileInfoResult>>;
|
|
24
27
|
private parseFileType;
|
|
25
28
|
}
|
|
26
29
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-file-info.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-file-info.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"sandbox-file-info.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-file-info.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAQ,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;kBAKN,CAAC;AAEZ,KAAK,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEvD,UAAU,qBAAqB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAKa,eAAgB,SAAQ,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,qBAAqB,CAAC;IAGnF,OAAO,CAAC,QAAQ,CAAC,cAAc;IAF3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;gBAE9B,cAAc,EAAE,cAAc;cAI3C,MAAM,CACpB,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAwD7C,OAAO,CAAC,aAAa;CAOtB"}
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var SandboxFileInfo_1;
|
|
11
11
|
import { Logger } from '@nestjs/common';
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { BaseTool,
|
|
13
|
+
import { BaseTool, Tool } from '@loopstack/common';
|
|
14
14
|
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
15
15
|
const inputSchema = z
|
|
16
16
|
.object({
|
|
@@ -19,9 +19,13 @@ const inputSchema = z
|
|
|
19
19
|
})
|
|
20
20
|
.strict();
|
|
21
21
|
let SandboxFileInfo = SandboxFileInfo_1 = class SandboxFileInfo extends BaseTool {
|
|
22
|
-
logger = new Logger(SandboxFileInfo_1.name);
|
|
23
22
|
sandboxCommand;
|
|
24
|
-
|
|
23
|
+
logger = new Logger(SandboxFileInfo_1.name);
|
|
24
|
+
constructor(sandboxCommand) {
|
|
25
|
+
super();
|
|
26
|
+
this.sandboxCommand = sandboxCommand;
|
|
27
|
+
}
|
|
28
|
+
async handle(args, _ctx) {
|
|
25
29
|
const { containerId, path: targetPath } = args;
|
|
26
30
|
this.logger.debug(`Getting file info for ${targetPath} in container ${containerId}`);
|
|
27
31
|
const result = await this.sandboxCommand.call({
|
|
@@ -75,17 +79,13 @@ let SandboxFileInfo = SandboxFileInfo_1 = class SandboxFileInfo extends BaseTool
|
|
|
75
79
|
return 'other';
|
|
76
80
|
}
|
|
77
81
|
};
|
|
78
|
-
__decorate([
|
|
79
|
-
InjectTool(),
|
|
80
|
-
__metadata("design:type", SandboxCommand)
|
|
81
|
-
], SandboxFileInfo.prototype, "sandboxCommand", void 0);
|
|
82
82
|
SandboxFileInfo = SandboxFileInfo_1 = __decorate([
|
|
83
83
|
Tool({
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
},
|
|
84
|
+
name: 'sandbox_file_info',
|
|
85
|
+
description: 'Get detailed information about a file or directory in a sandbox container',
|
|
87
86
|
schema: inputSchema,
|
|
88
|
-
})
|
|
87
|
+
}),
|
|
88
|
+
__metadata("design:paramtypes", [SandboxCommand])
|
|
89
89
|
], SandboxFileInfo);
|
|
90
90
|
export { SandboxFileInfo };
|
|
91
91
|
//# sourceMappingURL=sandbox-file-info.tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-file-info.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-file-info.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"sandbox-file-info.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-file-info.tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { BaseTool, ToolResult } from '@loopstack/common';
|
|
3
|
+
import type { LoopstackContext } from '@loopstack/common';
|
|
4
|
+
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
3
5
|
declare const inputSchema: z.ZodObject<{
|
|
4
6
|
containerId: z.ZodString;
|
|
5
7
|
path: z.ZodString;
|
|
@@ -16,10 +18,11 @@ interface SandboxListDirectoryResult {
|
|
|
16
18
|
path: string;
|
|
17
19
|
entries: FileEntry[];
|
|
18
20
|
}
|
|
19
|
-
export declare class SandboxListDirectory extends BaseTool {
|
|
21
|
+
export declare class SandboxListDirectory extends BaseTool<SandboxListDirectoryArgs, object, SandboxListDirectoryResult> {
|
|
22
|
+
private readonly sandboxCommand;
|
|
20
23
|
private readonly logger;
|
|
21
|
-
|
|
22
|
-
|
|
24
|
+
constructor(sandboxCommand: SandboxCommand);
|
|
25
|
+
protected handle(args: SandboxListDirectoryArgs, _ctx: LoopstackContext): Promise<ToolResult<SandboxListDirectoryResult>>;
|
|
23
26
|
private parseFileType;
|
|
24
27
|
}
|
|
25
28
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-list-directory.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-list-directory.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"sandbox-list-directory.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-list-directory.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAQ,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;;kBAMN,CAAC;AAEZ,KAAK,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAE5D,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,0BAA0B;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,qBAKa,oBAAqB,SAAQ,QAAQ,CAAC,wBAAwB,EAAE,MAAM,EAAE,0BAA0B,CAAC;IAGlG,OAAO,CAAC,QAAQ,CAAC,cAAc;IAF3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyC;gBAEnC,cAAc,EAAE,cAAc;cAI3C,MAAM,CACpB,IAAI,EAAE,wBAAwB,EAC9B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC;IA4DlD,OAAO,CAAC,aAAa;CAYtB"}
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var SandboxListDirectory_1;
|
|
11
11
|
import { Logger } from '@nestjs/common';
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { BaseTool,
|
|
13
|
+
import { BaseTool, Tool } from '@loopstack/common';
|
|
14
14
|
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
15
15
|
const inputSchema = z
|
|
16
16
|
.object({
|
|
@@ -20,9 +20,13 @@ const inputSchema = z
|
|
|
20
20
|
})
|
|
21
21
|
.strict();
|
|
22
22
|
let SandboxListDirectory = SandboxListDirectory_1 = class SandboxListDirectory extends BaseTool {
|
|
23
|
-
logger = new Logger(SandboxListDirectory_1.name);
|
|
24
23
|
sandboxCommand;
|
|
25
|
-
|
|
24
|
+
logger = new Logger(SandboxListDirectory_1.name);
|
|
25
|
+
constructor(sandboxCommand) {
|
|
26
|
+
super();
|
|
27
|
+
this.sandboxCommand = sandboxCommand;
|
|
28
|
+
}
|
|
29
|
+
async handle(args, _ctx) {
|
|
26
30
|
const { containerId, path: dirPath, recursive } = args;
|
|
27
31
|
this.logger.debug(`Listing directory ${dirPath} in container ${containerId} (recursive: ${recursive})`);
|
|
28
32
|
const command = recursive
|
|
@@ -81,17 +85,13 @@ let SandboxListDirectory = SandboxListDirectory_1 = class SandboxListDirectory e
|
|
|
81
85
|
}
|
|
82
86
|
}
|
|
83
87
|
};
|
|
84
|
-
__decorate([
|
|
85
|
-
InjectTool(),
|
|
86
|
-
__metadata("design:type", SandboxCommand)
|
|
87
|
-
], SandboxListDirectory.prototype, "sandboxCommand", void 0);
|
|
88
88
|
SandboxListDirectory = SandboxListDirectory_1 = __decorate([
|
|
89
89
|
Tool({
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
},
|
|
90
|
+
name: 'sandbox_list_directory',
|
|
91
|
+
description: 'List files and directories in a sandbox container',
|
|
93
92
|
schema: inputSchema,
|
|
94
|
-
})
|
|
93
|
+
}),
|
|
94
|
+
__metadata("design:paramtypes", [SandboxCommand])
|
|
95
95
|
], SandboxListDirectory);
|
|
96
96
|
export { SandboxListDirectory };
|
|
97
97
|
//# sourceMappingURL=sandbox-list-directory.tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-list-directory.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-list-directory.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"sandbox-list-directory.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-list-directory.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAc,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,MAAM,WAAW,GAAG,CAAC;KAClB,MAAM,CAAC;IACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IACtF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAC9D,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;CAC1F,CAAC;KACD,MAAM,EAAE,CAAC;AAqBL,IAAM,oBAAoB,4BAA1B,MAAM,oBAAqB,SAAQ,QAAsE;IAGjF;IAFZ,MAAM,GAAG,IAAI,MAAM,CAAC,sBAAoB,CAAC,IAAI,CAAC,CAAC;IAEhE,YAA6B,cAA8B;QACzD,KAAK,EAAE,CAAC;QADmB,mBAAc,GAAd,cAAc,CAAgB;IAE3D,CAAC;IAES,KAAK,CAAC,MAAM,CACpB,IAA8B,EAC9B,IAAsB;QAEtB,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAEvD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,OAAO,iBAAiB,WAAW,gBAAgB,SAAS,GAAG,CAAC,CAAC;QAIxG,MAAM,OAAO,GAAG,SAAS;YACvB,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,yBAAyB;YAClE,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,qCAAqC,CAAC;QAEjF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YAC5C,WAAW;YACX,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;YACrB,gBAAgB,EAAE,GAAG;YACrB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,OAAO,kBAAkB,CAAC,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,kBAAkB,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC,CAAC;YACnG,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC,CAAC;QACnG,CAAC;QAED,MAAM,OAAO,GAAgB,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAE3E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAClD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC;gBAC9C,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC;gBAGnD,IAAI,QAAQ,KAAK,OAAO;oBAAE,SAAS;gBAEnC,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI;oBACJ,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;oBAClC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC3B,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,OAAO,CAAC,MAAM,eAAe,OAAO,EAAE,CAAC,CAAC;QAEpE,OAAO;YACL,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO;gBACb,OAAO;aACR;SACF,CAAC;IACJ,CAAC;IAEO,aAAa,CAAC,QAAgB;QACpC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,GAAG;gBACN,OAAO,MAAM,CAAC;YAChB,KAAK,GAAG;gBACN,OAAO,WAAW,CAAC;YACrB,KAAK,GAAG;gBACN,OAAO,SAAS,CAAC;YACnB;gBACE,OAAO,OAAO,CAAC;QACnB,CAAC;IACH,CAAC;CACF,CAAA;AAlFY,oBAAoB;IALhC,IAAI,CAAC;QACJ,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,mDAAmD;QAChE,MAAM,EAAE,WAAW;KACpB,CAAC;qCAI6C,cAAc;GAHhD,oBAAoB,CAkFhC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { BaseTool, ToolResult } from '@loopstack/common';
|
|
3
|
+
import type { LoopstackContext } from '@loopstack/common';
|
|
4
|
+
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
3
5
|
declare const inputSchema: z.ZodObject<{
|
|
4
6
|
containerId: z.ZodString;
|
|
5
7
|
path: z.ZodString;
|
|
@@ -13,10 +15,11 @@ interface SandboxReadFileResult {
|
|
|
13
15
|
content: string;
|
|
14
16
|
encoding: string;
|
|
15
17
|
}
|
|
16
|
-
export declare class SandboxReadFile extends BaseTool {
|
|
18
|
+
export declare class SandboxReadFile extends BaseTool<SandboxReadFileArgs, object, SandboxReadFileResult> {
|
|
19
|
+
private readonly sandboxCommand;
|
|
17
20
|
private readonly logger;
|
|
18
|
-
|
|
19
|
-
|
|
21
|
+
constructor(sandboxCommand: SandboxCommand);
|
|
22
|
+
protected handle(args: SandboxReadFileArgs, _ctx: LoopstackContext): Promise<ToolResult<SandboxReadFileResult>>;
|
|
20
23
|
}
|
|
21
24
|
export {};
|
|
22
25
|
//# sourceMappingURL=sandbox-read-file.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-read-file.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-read-file.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"sandbox-read-file.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-read-file.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAQ,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;;;;;kBAMN,CAAC;AAEZ,KAAK,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEvD,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qBAKa,eAAgB,SAAQ,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,qBAAqB,CAAC;IAGnF,OAAO,CAAC,QAAQ,CAAC,cAAc;IAF3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;gBAE9B,cAAc,EAAE,cAAc;cAI3C,MAAM,CACpB,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;CAiC9C"}
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
var SandboxReadFile_1;
|
|
11
11
|
import { Logger } from '@nestjs/common';
|
|
12
12
|
import { z } from 'zod';
|
|
13
|
-
import { BaseTool,
|
|
13
|
+
import { BaseTool, Tool } from '@loopstack/common';
|
|
14
14
|
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
15
15
|
const inputSchema = z
|
|
16
16
|
.object({
|
|
@@ -20,9 +20,13 @@ const inputSchema = z
|
|
|
20
20
|
})
|
|
21
21
|
.strict();
|
|
22
22
|
let SandboxReadFile = SandboxReadFile_1 = class SandboxReadFile extends BaseTool {
|
|
23
|
-
logger = new Logger(SandboxReadFile_1.name);
|
|
24
23
|
sandboxCommand;
|
|
25
|
-
|
|
24
|
+
logger = new Logger(SandboxReadFile_1.name);
|
|
25
|
+
constructor(sandboxCommand) {
|
|
26
|
+
super();
|
|
27
|
+
this.sandboxCommand = sandboxCommand;
|
|
28
|
+
}
|
|
29
|
+
async handle(args, _ctx) {
|
|
26
30
|
const { containerId, path, encoding } = args;
|
|
27
31
|
this.logger.debug(`Reading file ${path} from container ${containerId} (encoding: ${encoding})`);
|
|
28
32
|
const executable = encoding === 'base64' ? 'base64' : 'cat';
|
|
@@ -50,17 +54,13 @@ let SandboxReadFile = SandboxReadFile_1 = class SandboxReadFile extends BaseTool
|
|
|
50
54
|
};
|
|
51
55
|
}
|
|
52
56
|
};
|
|
53
|
-
__decorate([
|
|
54
|
-
InjectTool(),
|
|
55
|
-
__metadata("design:type", SandboxCommand)
|
|
56
|
-
], SandboxReadFile.prototype, "sandboxCommand", void 0);
|
|
57
57
|
SandboxReadFile = SandboxReadFile_1 = __decorate([
|
|
58
58
|
Tool({
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
},
|
|
59
|
+
name: 'sandbox_read_file',
|
|
60
|
+
description: 'Read file contents from a sandbox container',
|
|
62
61
|
schema: inputSchema,
|
|
63
|
-
})
|
|
62
|
+
}),
|
|
63
|
+
__metadata("design:paramtypes", [SandboxCommand])
|
|
64
64
|
], SandboxReadFile);
|
|
65
65
|
export { SandboxReadFile };
|
|
66
66
|
//# sourceMappingURL=sandbox-read-file.tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-read-file.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-read-file.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"sandbox-read-file.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-read-file.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAc,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,MAAM,WAAW,GAAG,CAAC;KAClB,MAAM,CAAC;IACN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;IACjF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACzD,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;CAC3G,CAAC;KACD,MAAM,EAAE,CAAC;AAcL,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,QAA4D;IAGlE;IAFZ,MAAM,GAAG,IAAI,MAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;IAE3D,YAA6B,cAA8B;QACzD,KAAK,EAAE,CAAC;QADmB,mBAAc,GAAd,cAAc,CAAgB;IAE3D,CAAC;IAES,KAAK,CAAC,MAAM,CACpB,IAAyB,EACzB,IAAsB;QAEtB,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAE7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,mBAAmB,WAAW,eAAe,QAAQ,GAAG,CAAC,CAAC;QAEhG,MAAM,UAAU,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YAC5C,WAAW;YACX,UAAU;YACV,IAAI,EAAE,CAAC,IAAI,CAAC;YACZ,gBAAgB,EAAE,GAAG;YACrB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,IAAI,kBAAkB,CAAC,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,kBAAkB,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC,CAAC;YAC3F,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,cAAc,CAAC,CAAC;QAE9F,OAAO;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM;gBAC3B,QAAQ;aACT;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA3CY,eAAe;IAL3B,IAAI,CAAC;QACJ,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,6CAA6C;QAC1D,MAAM,EAAE,WAAW;KACpB,CAAC;qCAI6C,cAAc;GAHhD,eAAe,CA2C3B"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { BaseTool, ToolResult } from '@loopstack/common';
|
|
3
|
+
import type { LoopstackContext } from '@loopstack/common';
|
|
4
|
+
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
3
5
|
declare const inputSchema: z.ZodObject<{
|
|
4
6
|
containerId: z.ZodString;
|
|
5
7
|
path: z.ZodString;
|
|
@@ -15,10 +17,11 @@ interface SandboxWriteFileResult {
|
|
|
15
17
|
path: string;
|
|
16
18
|
bytesWritten: number;
|
|
17
19
|
}
|
|
18
|
-
export declare class SandboxWriteFile extends BaseTool {
|
|
20
|
+
export declare class SandboxWriteFile extends BaseTool<SandboxWriteFileArgs, object, SandboxWriteFileResult> {
|
|
21
|
+
private readonly sandboxCommand;
|
|
19
22
|
private readonly logger;
|
|
20
|
-
|
|
21
|
-
|
|
23
|
+
constructor(sandboxCommand: SandboxCommand);
|
|
24
|
+
protected handle(args: SandboxWriteFileArgs, _ctx: LoopstackContext): Promise<ToolResult<SandboxWriteFileResult>>;
|
|
22
25
|
}
|
|
23
26
|
export {};
|
|
24
27
|
//# sourceMappingURL=sandbox-write-file.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-write-file.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-write-file.tool.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"sandbox-write-file.tool.d.ts","sourceRoot":"","sources":["../../src/tools/sandbox-write-file.tool.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAQ,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,QAAA,MAAM,WAAW;;;;;;;;;kBAQN,CAAC;AAEZ,KAAK,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAExD,UAAU,sBAAsB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qBAKa,gBAAiB,SAAQ,QAAQ,CAAC,oBAAoB,EAAE,MAAM,EAAE,sBAAsB,CAAC;IAGtF,OAAO,CAAC,QAAQ,CAAC,cAAc;IAF3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqC;gBAE/B,cAAc,EAAE,cAAc;cAI3C,MAAM,CACpB,IAAI,EAAE,oBAAoB,EAC1B,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;CAqE/C"}
|
|
@@ -11,7 +11,7 @@ var SandboxWriteFile_1;
|
|
|
11
11
|
import { Logger } from '@nestjs/common';
|
|
12
12
|
import * as path from 'node:path';
|
|
13
13
|
import { z } from 'zod';
|
|
14
|
-
import { BaseTool,
|
|
14
|
+
import { BaseTool, Tool } from '@loopstack/common';
|
|
15
15
|
import { SandboxCommand } from '@loopstack/sandbox-tool';
|
|
16
16
|
const inputSchema = z
|
|
17
17
|
.object({
|
|
@@ -23,9 +23,13 @@ const inputSchema = z
|
|
|
23
23
|
})
|
|
24
24
|
.strict();
|
|
25
25
|
let SandboxWriteFile = SandboxWriteFile_1 = class SandboxWriteFile extends BaseTool {
|
|
26
|
-
logger = new Logger(SandboxWriteFile_1.name);
|
|
27
26
|
sandboxCommand;
|
|
28
|
-
|
|
27
|
+
logger = new Logger(SandboxWriteFile_1.name);
|
|
28
|
+
constructor(sandboxCommand) {
|
|
29
|
+
super();
|
|
30
|
+
this.sandboxCommand = sandboxCommand;
|
|
31
|
+
}
|
|
32
|
+
async handle(args, _ctx) {
|
|
29
33
|
const { containerId, path: filePath, content, encoding, createParentDirs } = args;
|
|
30
34
|
this.logger.debug(`Writing file ${filePath} to container ${containerId} (encoding: ${encoding})`);
|
|
31
35
|
if (createParentDirs) {
|
|
@@ -75,17 +79,13 @@ let SandboxWriteFile = SandboxWriteFile_1 = class SandboxWriteFile extends BaseT
|
|
|
75
79
|
};
|
|
76
80
|
}
|
|
77
81
|
};
|
|
78
|
-
__decorate([
|
|
79
|
-
InjectTool(),
|
|
80
|
-
__metadata("design:type", SandboxCommand)
|
|
81
|
-
], SandboxWriteFile.prototype, "sandboxCommand", void 0);
|
|
82
82
|
SandboxWriteFile = SandboxWriteFile_1 = __decorate([
|
|
83
83
|
Tool({
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
},
|
|
84
|
+
name: 'sandbox_write_file',
|
|
85
|
+
description: 'Write content to a file in a sandbox container',
|
|
87
86
|
schema: inputSchema,
|
|
88
|
-
})
|
|
87
|
+
}),
|
|
88
|
+
__metadata("design:paramtypes", [SandboxCommand])
|
|
89
89
|
], SandboxWriteFile);
|
|
90
90
|
export { SandboxWriteFile };
|
|
91
91
|
//# sourceMappingURL=sandbox-write-file.tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-write-file.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-write-file.tool.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"sandbox-write-file.tool.js","sourceRoot":"","sources":["../../src/tools/sandbox-write-file.tool.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"filesystem",
|
|
8
8
|
"sandbox"
|
|
9
9
|
],
|
|
10
|
-
"version": "0.
|
|
10
|
+
"version": "0.7.0",
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"author": {
|
|
13
13
|
"name": "Tobias Blättermann, Jakob Klippel"
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"watch": "nest build --watch"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@loopstack/common": "^0.
|
|
33
|
-
"@loopstack/sandbox-tool": "^0.
|
|
32
|
+
"@loopstack/common": "^0.32.0",
|
|
33
|
+
"@loopstack/sandbox-tool": "^0.7.0",
|
|
34
34
|
"@nestjs/common": "^11.1.19",
|
|
35
35
|
"zod": "^4.3.6"
|
|
36
36
|
},
|