diff --git a/deno.json b/deno.json index e0491d1..0ec1768 100644 --- a/deno.json +++ b/deno.json @@ -1,6 +1,7 @@ { "workspace": [ "./packages/ai", + "./packages/deno-agent", "./packages/schema", "./packages/lib", "./packages/runtime-core", @@ -12,6 +13,7 @@ ], "imports": { "@runt/ai": "./packages/ai/mod.ts", + "@runt/deno-agent": "./packages/deno-agent/mod.ts", "@runt/schema": "./packages/schema/mod.ts", "@runt/lib": "./packages/lib/mod.ts", "@runt/runtime-core": "./packages/runtime-core/mod.ts", diff --git a/packages/deno-agent/deno.json b/packages/deno-agent/deno.json new file mode 100644 index 0000000..c6b2461 --- /dev/null +++ b/packages/deno-agent/deno.json @@ -0,0 +1,10 @@ +{ + "tasks": { + "dev": "deno run --watch main.ts" + }, + "imports": { + "@std/assert": "jsr:@std/assert@1", + "@std/dotenv": "jsr:@std/dotenv@0.225.5", + "@deno/sandbox": "jsr:@deno/sandbox@0.0.6" + } +} diff --git a/packages/deno-agent/main.ts b/packages/deno-agent/main.ts new file mode 100644 index 0000000..2a3247f --- /dev/null +++ b/packages/deno-agent/main.ts @@ -0,0 +1,16 @@ +// %% +import { Sandbox } from "@deno/sandbox"; +import "@std/dotenv/load"; +await using sandbox = await Sandbox.create(); + +// %% +const repl = await sandbox.repl(); + +// %% +await repl.eval(`var x = 2`); + +// %% +await repl.eval(`x*3`); + +// %% +await sandbox.close(); diff --git a/packages/deno-agent/main_test.ts b/packages/deno-agent/main_test.ts new file mode 100644 index 0000000..3d981e9 --- /dev/null +++ b/packages/deno-agent/main_test.ts @@ -0,0 +1,6 @@ +import { assertEquals } from "@std/assert"; +import { add } from "./main.ts"; + +Deno.test(function addTest() { + assertEquals(add(2, 3), 5); +});