@hasna/sandboxes 0.1.21 → 0.1.22

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.
Files changed (80) hide show
  1. package/dist/cli/index.d.ts +0 -1
  2. package/dist/cli/index.js +8 -40
  3. package/dist/db/agents.d.ts +0 -1
  4. package/dist/db/database.d.ts +0 -1
  5. package/dist/db/events.d.ts +0 -1
  6. package/dist/db/pg-migrations.d.ts +0 -1
  7. package/dist/db/projects.d.ts +0 -1
  8. package/dist/db/sandboxes.d.ts +0 -1
  9. package/dist/db/sessions.d.ts +0 -1
  10. package/dist/db/snapshots.d.ts +0 -1
  11. package/dist/db/templates.d.ts +0 -1
  12. package/dist/db/webhooks.d.ts +0 -1
  13. package/dist/index.d.ts +2 -1
  14. package/dist/index.js +219 -31
  15. package/dist/lib/agent-runner.d.ts +0 -1
  16. package/dist/lib/agents/codex.d.ts +0 -1
  17. package/dist/lib/agents/gemini.d.ts +0 -1
  18. package/dist/lib/agents/index.d.ts +0 -1
  19. package/dist/lib/agents/opencode.d.ts +0 -1
  20. package/dist/lib/agents/pi.d.ts +0 -1
  21. package/dist/lib/agents/takumi.d.ts +0 -1
  22. package/dist/lib/agents/types.d.ts +0 -1
  23. package/dist/lib/config.d.ts +0 -1
  24. package/dist/lib/images.d.ts +0 -1
  25. package/dist/lib/keepalive.d.ts +0 -1
  26. package/dist/lib/runtime-state.d.ts +0 -1
  27. package/dist/lib/stream.d.ts +0 -1
  28. package/dist/lib/version.d.ts +0 -1
  29. package/dist/lib/webhook.d.ts +0 -1
  30. package/dist/mcp/index.d.ts +0 -1
  31. package/dist/mcp/index.js +5 -34
  32. package/dist/providers/daytona.d.ts +0 -1
  33. package/dist/providers/e2b.d.ts +0 -1
  34. package/dist/providers/index.d.ts +0 -1
  35. package/dist/providers/modal.d.ts +0 -1
  36. package/dist/providers/types.d.ts +0 -1
  37. package/dist/sdk.d.ts +59 -0
  38. package/dist/server/index.d.ts +0 -1
  39. package/dist/server/index.js +1 -1
  40. package/dist/server/serve.d.ts +0 -1
  41. package/dist/types/index.d.ts +1 -2
  42. package/package.json +3 -4
  43. package/dist/cli/index.d.ts.map +0 -1
  44. package/dist/db/agents.d.ts.map +0 -1
  45. package/dist/db/database.d.ts.map +0 -1
  46. package/dist/db/events.d.ts.map +0 -1
  47. package/dist/db/pg-migrations.d.ts.map +0 -1
  48. package/dist/db/projects.d.ts.map +0 -1
  49. package/dist/db/sandboxes.d.ts.map +0 -1
  50. package/dist/db/sessions.d.ts.map +0 -1
  51. package/dist/db/snapshots.d.ts.map +0 -1
  52. package/dist/db/templates.d.ts.map +0 -1
  53. package/dist/db/webhooks.d.ts.map +0 -1
  54. package/dist/index.d.ts.map +0 -1
  55. package/dist/lib/agent-runner.d.ts.map +0 -1
  56. package/dist/lib/agents/claude.d.ts +0 -10
  57. package/dist/lib/agents/claude.d.ts.map +0 -1
  58. package/dist/lib/agents/codex.d.ts.map +0 -1
  59. package/dist/lib/agents/gemini.d.ts.map +0 -1
  60. package/dist/lib/agents/index.d.ts.map +0 -1
  61. package/dist/lib/agents/opencode.d.ts.map +0 -1
  62. package/dist/lib/agents/pi.d.ts.map +0 -1
  63. package/dist/lib/agents/takumi.d.ts.map +0 -1
  64. package/dist/lib/agents/types.d.ts.map +0 -1
  65. package/dist/lib/config.d.ts.map +0 -1
  66. package/dist/lib/images.d.ts.map +0 -1
  67. package/dist/lib/keepalive.d.ts.map +0 -1
  68. package/dist/lib/runtime-state.d.ts.map +0 -1
  69. package/dist/lib/stream.d.ts.map +0 -1
  70. package/dist/lib/version.d.ts.map +0 -1
  71. package/dist/lib/webhook.d.ts.map +0 -1
  72. package/dist/mcp/index.d.ts.map +0 -1
  73. package/dist/providers/daytona.d.ts.map +0 -1
  74. package/dist/providers/e2b.d.ts.map +0 -1
  75. package/dist/providers/index.d.ts.map +0 -1
  76. package/dist/providers/modal.d.ts.map +0 -1
  77. package/dist/providers/types.d.ts.map +0 -1
  78. package/dist/server/index.d.ts.map +0 -1
  79. package/dist/server/serve.d.ts.map +0 -1
  80. package/dist/types/index.d.ts.map +0 -1
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env bun
2
2
  export {};
3
- //# sourceMappingURL=index.d.ts.map
package/dist/cli/index.js CHANGED
@@ -11598,7 +11598,7 @@ var init_database = __esm(() => {
11598
11598
  id TEXT PRIMARY KEY,
11599
11599
  sandbox_id TEXT NOT NULL REFERENCES sandboxes(id) ON DELETE CASCADE,
11600
11600
  agent_name TEXT,
11601
- agent_type TEXT CHECK(agent_type IN ('claude', 'codex', 'gemini', 'custom')),
11601
+ agent_type TEXT CHECK(agent_type IN ('codex', 'gemini', 'opencode', 'pi', 'takumi', 'custom')),
11602
11602
  command TEXT,
11603
11603
  status TEXT NOT NULL DEFAULT 'running' CHECK(status IN ('running', 'completed', 'failed', 'killed')),
11604
11604
  exit_code INTEGER,
@@ -12809,29 +12809,6 @@ var init_runtime_state = __esm(() => {
12809
12809
  init_sandboxes();
12810
12810
  });
12811
12811
 
12812
- // src/lib/agents/claude.ts
12813
- class ClaudeDriver {
12814
- name = "claude";
12815
- requiredEnvVars = ["ANTHROPIC_API_KEY"];
12816
- async install(provider, providerSandboxId) {
12817
- const check = await provider.exec(providerSandboxId, "which claude 2>/dev/null || echo MISSING");
12818
- if (check.stdout.trim() !== "MISSING")
12819
- return;
12820
- await provider.exec(providerSandboxId, "npm install -g @anthropic-ai/claude-code 2>&1 || sudo npm install -g @anthropic-ai/claude-code 2>&1");
12821
- }
12822
- async configure(provider, providerSandboxId, _envVars) {
12823
- const config = JSON.stringify({
12824
- hasCompletedOnboarding: true,
12825
- hasTrustDialogAccepted: true,
12826
- hasAcknowledgedCostThreshold: true
12827
- });
12828
- await provider.exec(providerSandboxId, `mkdir -p ~/.claude && echo '${config}' > ~/.claude.json`);
12829
- }
12830
- buildCommand(prompt) {
12831
- return `claude --dangerously-skip-permissions -p ${JSON.stringify(prompt)}`;
12832
- }
12833
- }
12834
-
12835
12812
  // src/lib/agents/codex.ts
12836
12813
  class CodexDriver {
12837
12814
  name = "codex";
@@ -12915,9 +12892,9 @@ class TakumiDriver {
12915
12892
  return;
12916
12893
  const bunCheck = await provider.exec(providerSandboxId, "which bun 2>/dev/null || echo MISSING");
12917
12894
  if (bunCheck.stdout.trim() !== "MISSING") {
12918
- await provider.exec(providerSandboxId, "bun install -g @hasnaxyz/takumi 2>&1");
12895
+ await provider.exec(providerSandboxId, "bun install -g @hasna/takumi 2>&1");
12919
12896
  } else {
12920
- await provider.exec(providerSandboxId, "npm install -g @hasnaxyz/takumi 2>&1 || sudo npm install -g @hasnaxyz/takumi 2>&1");
12897
+ await provider.exec(providerSandboxId, "npm install -g @hasna/takumi 2>&1 || sudo npm install -g @hasna/takumi 2>&1");
12921
12898
  }
12922
12899
  }
12923
12900
  async configure(provider, providerSandboxId, envVars) {
@@ -12944,7 +12921,6 @@ function getAgentDriver(name) {
12944
12921
  var DRIVERS, DRIVER_MAP;
12945
12922
  var init_agents = __esm(() => {
12946
12923
  DRIVERS = [
12947
- new ClaudeDriver,
12948
12924
  new CodexDriver,
12949
12925
  new GeminiDriver,
12950
12926
  new OpenCodeDriver,
@@ -13058,7 +13034,7 @@ async function stopAgent(sandboxId) {
13058
13034
  return;
13059
13035
  const provider = await getProvider(sandbox.provider);
13060
13036
  try {
13061
- await provider.exec(sandbox.provider_sandbox_id, "pkill -f 'claude\\|codex\\|gemini\\|opencode\\|pi' || true");
13037
+ await provider.exec(sandbox.provider_sandbox_id, "pkill -f 'codex\\|gemini\\|opencode\\|pi\\|takumi' || true");
13062
13038
  } catch {}
13063
13039
  emitLifecycleEvent(sandbox.id, "Agent stopped by user");
13064
13040
  }
@@ -13092,7 +13068,6 @@ init_sandboxes();
13092
13068
  init_sessions();
13093
13069
  init_events();
13094
13070
  import chalk from "chalk";
13095
- import { execSync } from "child_process";
13096
13071
 
13097
13072
  // src/db/agents.ts
13098
13073
  init_database();
@@ -13483,7 +13458,7 @@ filesCmd.command("write <id> <path>").description("Write content to a file in a
13483
13458
  }
13484
13459
  });
13485
13460
  var agentCmd = program2.command("agent").description("Run and manage AI agents in sandboxes");
13486
- agentCmd.command("run <id>").description("Run an AI agent inside a sandbox").requiredOption("-t, --type <type>", "Agent type: claude, codex, gemini, custom").requiredOption("-p, --prompt <prompt>", "Prompt for the agent").option("-n, --name <name>", "Agent name").option("-c, --command <cmd>", "Custom command (for 'custom' type)").action(async (id, opts) => {
13461
+ agentCmd.command("run <id>").description("Run an AI agent inside a sandbox").requiredOption("-t, --type <type>", "Agent type: takumi, codex, gemini, opencode, pi, custom").requiredOption("-p, --prompt <prompt>", "Prompt for the agent").option("-n, --name <name>", "Agent name").option("-c, --command <cmd>", "Custom command (for 'custom' type)").action(async (id, opts) => {
13487
13462
  try {
13488
13463
  const { runAgent: runAgent2 } = await Promise.resolve().then(() => (init_agent_runner(), exports_agent_runner));
13489
13464
  const session = await runAgent2(id, {
@@ -13577,24 +13552,17 @@ program2.command("agents").description("List registered agents").action(() => {
13577
13552
  handleError(err);
13578
13553
  }
13579
13554
  });
13580
- program2.command("mcp").description("Install MCP server for AI agents").option("--claude", "Install for Claude Code (default)").option("--codex", "Install for Codex").option("--gemini", "Install for Gemini").action((opts) => {
13555
+ program2.command("mcp").description("Install MCP server for supported AI clients").option("--codex", "Install for Codex").option("--gemini", "Install for Gemini").action((opts) => {
13581
13556
  try {
13582
13557
  const targets = [];
13583
13558
  if (opts.codex)
13584
13559
  targets.push("codex");
13585
13560
  if (opts.gemini)
13586
13561
  targets.push("gemini");
13587
- if (opts.claude || targets.length === 0)
13588
- targets.push("claude");
13562
+ if (targets.length === 0)
13563
+ targets.push("codex");
13589
13564
  for (const target of targets) {
13590
13565
  switch (target) {
13591
- case "claude": {
13592
- const cmd = `claude mcp add --transport stdio --scope user sandboxes -- bunx --bun --package @hasna/sandboxes sandboxes-mcp`;
13593
- console.log(chalk.dim(`Running: ${cmd}`));
13594
- execSync(cmd, { stdio: "inherit" });
13595
- console.log(chalk.green("Installed MCP server for Claude Code."));
13596
- break;
13597
- }
13598
13566
  case "codex": {
13599
13567
  console.log(chalk.yellow("Codex MCP installation: add the following to ~/.codex/config.toml:"));
13600
13568
  console.log();
@@ -7,4 +7,3 @@ export declare function listAgents(): Agent[];
7
7
  export declare function heartbeatAgent(idOrName: string): Agent;
8
8
  export declare function setAgentFocus(idOrName: string, projectId: string | null): Agent;
9
9
  export declare function deleteAgent(id: string): void;
10
- //# sourceMappingURL=agents.d.ts.map
@@ -6,4 +6,3 @@ export declare function uuid(): string;
6
6
  export declare function shortId(): string;
7
7
  export declare function now(): string;
8
8
  export declare function resolvePartialId(table: string, partialId: string): string | null;
9
- //# sourceMappingURL=database.d.ts.map
@@ -13,4 +13,3 @@ export declare function listEvents(opts?: {
13
13
  limit?: number;
14
14
  offset?: number;
15
15
  }): SandboxEvent[];
16
- //# sourceMappingURL=events.d.ts.map
@@ -4,4 +4,3 @@
4
4
  * Equivalent to the SQLite schema in database.ts, translated for PostgreSQL.
5
5
  */
6
6
  export declare const PG_MIGRATIONS: string[];
7
- //# sourceMappingURL=pg-migrations.d.ts.map
@@ -6,4 +6,3 @@ export declare function getProjectByPath(path: string): Project | null;
6
6
  export declare function listProjects(): Project[];
7
7
  export declare function ensureProject(name: string, path: string, description?: string): Project;
8
8
  export declare function deleteProject(id: string): void;
9
- //# sourceMappingURL=projects.d.ts.map
@@ -9,4 +9,3 @@ export declare function listSandboxes(opts?: {
9
9
  }): Sandbox[];
10
10
  export declare function updateSandbox(id: string, updates: Partial<Pick<Sandbox, "status" | "provider_sandbox_id" | "name" | "image" | "timeout" | "config" | "env_vars" | "keep_alive_until" | "started_at">>): Sandbox;
11
11
  export declare function deleteSandbox(id: string): void;
12
- //# sourceMappingURL=sandboxes.d.ts.map
@@ -8,4 +8,3 @@ export declare function listSessions(opts?: {
8
8
  }): SandboxSession[];
9
9
  export declare function updateSession(id: string, updates: Partial<Pick<SandboxSession, "status" | "exit_code">>): SandboxSession;
10
10
  export declare function endSession(id: string, exit_code: number, status?: SessionStatus): SandboxSession;
11
- //# sourceMappingURL=sessions.d.ts.map
@@ -26,4 +26,3 @@ export declare function createSnapshot(input: {
26
26
  export declare function getSnapshot(id: string): Snapshot;
27
27
  export declare function listSnapshots(sandboxId?: string): Snapshot[];
28
28
  export declare function deleteSnapshot(id: string): void;
29
- //# sourceMappingURL=snapshots.d.ts.map
@@ -4,4 +4,3 @@ export declare function getTemplate(id: string): Template;
4
4
  export declare function getTemplateByName(name: string): Template | null;
5
5
  export declare function listTemplates(): Template[];
6
6
  export declare function deleteTemplate(id: string): void;
7
- //# sourceMappingURL=templates.d.ts.map
@@ -4,4 +4,3 @@ export declare function createWebhook(input: CreateWebhookInput): Webhook;
4
4
  export declare function getWebhook(id: string): Webhook;
5
5
  export declare function listWebhooks(): Webhook[];
6
6
  export declare function deleteWebhook(id: string): void;
7
- //# sourceMappingURL=webhooks.d.ts.map
package/dist/index.d.ts CHANGED
@@ -14,7 +14,8 @@ export { loadConfig, saveConfig, getDefaultProvider, getDefaultTimeout, getDefau
14
14
  export { BUILTIN_IMAGES, resolveImage, getBuiltinImageSetupScript } from "./lib/images.js";
15
15
  export { getProvider } from "./providers/index.js";
16
16
  export type { SandboxProvider, ProviderSandbox, CreateSandboxOpts, ExecOptions } from "./providers/types.js";
17
+ export { SandboxesSDK, createSandboxesSDK, } from "./sdk.js";
18
+ export type { ExecCommandResult, ProviderFactory, RunAgentOptions, SandboxesSDKOptions, WaitForSessionOptions, } from "./sdk.js";
17
19
  export { createStreamCollector, addStreamListener, emitLifecycleEvent } from "./lib/stream.js";
18
20
  export { getAgentDriver, listAgentDrivers } from "./lib/agents/index.js";
19
21
  export type { AgentDriver } from "./lib/agents/types.js";
20
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -34,7 +34,7 @@ var init_types = __esm(() => {
34
34
  "failed",
35
35
  "killed"
36
36
  ];
37
- AGENT_TYPES = ["claude", "codex", "gemini", "opencode", "pi", "takumi", "custom"];
37
+ AGENT_TYPES = ["codex", "gemini", "opencode", "pi", "takumi", "custom"];
38
38
  EVENT_TYPES = [
39
39
  "stdout",
40
40
  "stderr",
@@ -10340,7 +10340,7 @@ var MIGRATIONS = [
10340
10340
  id TEXT PRIMARY KEY,
10341
10341
  sandbox_id TEXT NOT NULL REFERENCES sandboxes(id) ON DELETE CASCADE,
10342
10342
  agent_name TEXT,
10343
- agent_type TEXT CHECK(agent_type IN ('claude', 'codex', 'gemini', 'custom')),
10343
+ agent_type TEXT CHECK(agent_type IN ('codex', 'gemini', 'opencode', 'pi', 'takumi', 'custom')),
10344
10344
  command TEXT,
10345
10345
  status TEXT NOT NULL DEFAULT 'running' CHECK(status IN ('running', 'completed', 'failed', 'killed')),
10346
10346
  exit_code INTEGER,
@@ -11098,11 +11098,6 @@ var BUILTIN_IMAGES = {
11098
11098
  description: "Node 20 + npm + pnpm + yarn",
11099
11099
  setup_script: "curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && npm install -g pnpm yarn"
11100
11100
  },
11101
- "node20-claude": {
11102
- e2b: "e2bdev/base:latest",
11103
- description: "Node 20 + Claude Code CLI pre-installed",
11104
- setup_script: `curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && npm install -g @anthropic-ai/claude-code && mkdir -p ~/.claude && echo '{"hasCompletedOnboarding":true,"hasTrustDialogAccepted":true,"hasAcknowledgedCostThreshold":true}' > ~/.claude.json`
11105
- },
11106
11101
  "node20-codex": {
11107
11102
  e2b: "e2bdev/base:latest",
11108
11103
  description: "Node 20 + Codex CLI pre-installed",
@@ -11231,27 +11226,20 @@ function emitLifecycleEvent(sandboxId, message) {
11231
11226
  });
11232
11227
  notifyListeners(sandboxId, "lifecycle", message);
11233
11228
  }
11234
- // src/lib/agents/claude.ts
11235
- class ClaudeDriver {
11236
- name = "claude";
11237
- requiredEnvVars = ["ANTHROPIC_API_KEY"];
11238
- async install(provider, providerSandboxId) {
11239
- const check = await provider.exec(providerSandboxId, "which claude 2>/dev/null || echo MISSING");
11240
- if (check.stdout.trim() !== "MISSING")
11241
- return;
11242
- await provider.exec(providerSandboxId, "npm install -g @anthropic-ai/claude-code 2>&1 || sudo npm install -g @anthropic-ai/claude-code 2>&1");
11243
- }
11244
- async configure(provider, providerSandboxId, _envVars) {
11245
- const config = JSON.stringify({
11246
- hasCompletedOnboarding: true,
11247
- hasTrustDialogAccepted: true,
11248
- hasAcknowledgedCostThreshold: true
11249
- });
11250
- await provider.exec(providerSandboxId, `mkdir -p ~/.claude && echo '${config}' > ~/.claude.json`);
11251
- }
11252
- buildCommand(prompt) {
11253
- return `claude --dangerously-skip-permissions -p ${JSON.stringify(prompt)}`;
11254
- }
11229
+
11230
+ // src/lib/runtime-state.ts
11231
+ function getErrorMessage(error) {
11232
+ return error instanceof Error ? error.message : String(error);
11233
+ }
11234
+ function finalizeSessionExit(sessionId, exitCode) {
11235
+ endSession(sessionId, exitCode, exitCode === 0 ? "completed" : "failed");
11236
+ }
11237
+ function finalizeSessionFailure(sessionId, _error, exitCode = 1) {
11238
+ endSession(sessionId, exitCode, "failed");
11239
+ }
11240
+ function finalizeSandboxProvisionFailure(sandboxId, error) {
11241
+ updateSandbox(sandboxId, { status: "error" });
11242
+ return getErrorMessage(error);
11255
11243
  }
11256
11244
 
11257
11245
  // src/lib/agents/codex.ts
@@ -11337,9 +11325,9 @@ class TakumiDriver {
11337
11325
  return;
11338
11326
  const bunCheck = await provider.exec(providerSandboxId, "which bun 2>/dev/null || echo MISSING");
11339
11327
  if (bunCheck.stdout.trim() !== "MISSING") {
11340
- await provider.exec(providerSandboxId, "bun install -g @hasnaxyz/takumi 2>&1");
11328
+ await provider.exec(providerSandboxId, "bun install -g @hasna/takumi 2>&1");
11341
11329
  } else {
11342
- await provider.exec(providerSandboxId, "npm install -g @hasnaxyz/takumi 2>&1 || sudo npm install -g @hasnaxyz/takumi 2>&1");
11330
+ await provider.exec(providerSandboxId, "npm install -g @hasna/takumi 2>&1 || sudo npm install -g @hasna/takumi 2>&1");
11343
11331
  }
11344
11332
  }
11345
11333
  async configure(provider, providerSandboxId, envVars) {
@@ -11361,7 +11349,6 @@ class TakumiDriver {
11361
11349
 
11362
11350
  // src/lib/agents/index.ts
11363
11351
  var DRIVERS = [
11364
- new ClaudeDriver,
11365
11352
  new CodexDriver,
11366
11353
  new GeminiDriver,
11367
11354
  new OpenCodeDriver,
@@ -11375,6 +11362,205 @@ function getAgentDriver(name) {
11375
11362
  function listAgentDrivers() {
11376
11363
  return DRIVERS;
11377
11364
  }
11365
+
11366
+ // src/sdk.ts
11367
+ function isExecHandle(value) {
11368
+ return typeof value.wait === "function";
11369
+ }
11370
+ function mergeEnv(sandboxEnv, callEnv) {
11371
+ const merged = { ...sandboxEnv, ...callEnv };
11372
+ return Object.keys(merged).length > 0 ? merged : undefined;
11373
+ }
11374
+
11375
+ class SandboxesSDK {
11376
+ defaultProvider;
11377
+ providerApiKeys;
11378
+ providerFactory;
11379
+ constructor(options = {}) {
11380
+ this.defaultProvider = options.defaultProvider;
11381
+ this.providerApiKeys = options.providerApiKeys ?? {};
11382
+ this.providerFactory = options.providerFactory ?? ((name, apiKey) => getProvider(name, apiKey));
11383
+ }
11384
+ async createSandbox(input = {}) {
11385
+ const providerName = input.provider ?? this.defaultProvider ?? getDefaultProvider();
11386
+ const timeout = input.timeout ?? getDefaultTimeout();
11387
+ const sandbox = createSandbox({
11388
+ ...input,
11389
+ provider: providerName,
11390
+ timeout
11391
+ });
11392
+ try {
11393
+ const provider = await this.getProvider(providerName);
11394
+ const providerSandbox = await provider.create({
11395
+ image: sandbox.image ?? undefined,
11396
+ timeout: sandbox.timeout,
11397
+ envVars: sandbox.env_vars,
11398
+ onTimeout: sandbox.on_timeout,
11399
+ autoResume: sandbox.auto_resume
11400
+ });
11401
+ const updated = updateSandbox(sandbox.id, {
11402
+ provider_sandbox_id: providerSandbox.id,
11403
+ status: "running",
11404
+ started_at: new Date().toISOString()
11405
+ });
11406
+ emitLifecycleEvent(updated.id, "sandbox created");
11407
+ return updated;
11408
+ } catch (error) {
11409
+ finalizeSandboxProvisionFailure(sandbox.id, error);
11410
+ throw error;
11411
+ }
11412
+ }
11413
+ getSandbox(id) {
11414
+ return getSandbox(id);
11415
+ }
11416
+ listSandboxes(filters) {
11417
+ return listSandboxes(filters);
11418
+ }
11419
+ async stopSandbox(id) {
11420
+ const sandbox = getSandbox(id);
11421
+ if (sandbox.provider_sandbox_id) {
11422
+ const provider = await this.getProvider(sandbox.provider);
11423
+ await provider.stop(sandbox.provider_sandbox_id);
11424
+ }
11425
+ const updated = updateSandbox(sandbox.id, { status: "stopped" });
11426
+ emitLifecycleEvent(updated.id, "sandbox stopped");
11427
+ return updated;
11428
+ }
11429
+ async deleteSandbox(id) {
11430
+ const sandbox = getSandbox(id);
11431
+ if (sandbox.provider_sandbox_id) {
11432
+ const provider = await this.getProvider(sandbox.provider);
11433
+ await provider.delete(sandbox.provider_sandbox_id);
11434
+ }
11435
+ emitLifecycleEvent(sandbox.id, "sandbox deleted");
11436
+ deleteSandbox(sandbox.id);
11437
+ }
11438
+ async execCommand(sandboxId, command, opts = {}) {
11439
+ const sandbox = this.requireProviderSandbox(sandboxId);
11440
+ const provider = await this.getProvider(sandbox.provider);
11441
+ const session = createSession({
11442
+ sandbox_id: sandbox.id,
11443
+ command
11444
+ });
11445
+ const collector = createStreamCollector(sandbox.id, session.id);
11446
+ try {
11447
+ const resultOrHandle = await provider.exec(sandbox.provider_sandbox_id, command, {
11448
+ ...opts,
11449
+ env: mergeEnv(sandbox.env_vars, opts.env),
11450
+ onStdout: (data) => {
11451
+ collector.onStdout(data);
11452
+ opts.onStdout?.(data);
11453
+ },
11454
+ onStderr: (data) => {
11455
+ collector.onStderr(data);
11456
+ opts.onStderr?.(data);
11457
+ }
11458
+ });
11459
+ const result = isExecHandle(resultOrHandle) ? await resultOrHandle.wait() : resultOrHandle;
11460
+ finalizeSessionExit(session.id, result.exit_code);
11461
+ return {
11462
+ session: getSession(session.id),
11463
+ result
11464
+ };
11465
+ } catch (error) {
11466
+ finalizeSessionFailure(session.id, error);
11467
+ throw error;
11468
+ }
11469
+ }
11470
+ async readFile(sandboxId, path, opts) {
11471
+ const sandbox = this.requireProviderSandbox(sandboxId);
11472
+ const provider = await this.getProvider(sandbox.provider);
11473
+ return provider.readFile(sandbox.provider_sandbox_id, path, opts);
11474
+ }
11475
+ async writeFile(sandboxId, path, content) {
11476
+ const sandbox = this.requireProviderSandbox(sandboxId);
11477
+ const provider = await this.getProvider(sandbox.provider);
11478
+ await provider.writeFile(sandbox.provider_sandbox_id, path, content);
11479
+ }
11480
+ async listFiles(sandboxId, path, opts) {
11481
+ const sandbox = this.requireProviderSandbox(sandboxId);
11482
+ const provider = await this.getProvider(sandbox.provider);
11483
+ return provider.listFiles(sandbox.provider_sandbox_id, path, opts);
11484
+ }
11485
+ async runAgent(sandboxId, opts) {
11486
+ const sandbox = this.requireProviderSandbox(sandboxId);
11487
+ const provider = await this.getProvider(sandbox.provider);
11488
+ const env = mergeEnv(sandbox.env_vars, opts.callEnvVars);
11489
+ let command;
11490
+ const driver = opts.agentType !== "custom" ? getAgentDriver(opts.agentType) : undefined;
11491
+ if (opts.command) {
11492
+ command = opts.command;
11493
+ } else if (driver) {
11494
+ await driver.install(provider, sandbox.provider_sandbox_id);
11495
+ await driver.configure(provider, sandbox.provider_sandbox_id, env ?? {});
11496
+ command = driver.buildCommand(opts.prompt);
11497
+ } else {
11498
+ command = opts.prompt;
11499
+ }
11500
+ const session = createSession({
11501
+ sandbox_id: sandbox.id,
11502
+ agent_name: opts.agentName,
11503
+ agent_type: opts.agentType,
11504
+ command
11505
+ });
11506
+ const collector = createStreamCollector(sandbox.id, session.id);
11507
+ emitLifecycleEvent(sandbox.id, `Agent ${opts.agentType} started: ${opts.prompt.slice(0, 100)}`);
11508
+ provider.exec(sandbox.provider_sandbox_id, command, {
11509
+ env,
11510
+ onStdout: (data) => {
11511
+ collector.onStdout(data);
11512
+ opts.onStdout?.(data);
11513
+ },
11514
+ onStderr: (data) => {
11515
+ collector.onStderr(data);
11516
+ opts.onStderr?.(data);
11517
+ }
11518
+ }).then(async (resultOrHandle) => {
11519
+ const result = isExecHandle(resultOrHandle) ? await resultOrHandle.wait() : resultOrHandle;
11520
+ finalizeSessionExit(session.id, result.exit_code);
11521
+ emitLifecycleEvent(sandbox.id, `Agent ${opts.agentType} finished with exit code ${result.exit_code}`);
11522
+ }).catch((error) => {
11523
+ finalizeSessionFailure(session.id, error);
11524
+ emitLifecycleEvent(sandbox.id, `Agent ${opts.agentType} failed: ${error.message}`);
11525
+ });
11526
+ return session;
11527
+ }
11528
+ getSession(sessionId) {
11529
+ return getSession(sessionId);
11530
+ }
11531
+ async waitForSession(sessionId, opts = {}) {
11532
+ const timeoutMs = opts.timeoutMs ?? 300000;
11533
+ const pollIntervalMs = opts.pollIntervalMs ?? 100;
11534
+ const deadline = Date.now() + timeoutMs;
11535
+ while (Date.now() <= deadline) {
11536
+ const session = getSession(sessionId);
11537
+ if (session.status !== "running") {
11538
+ return session;
11539
+ }
11540
+ await new Promise((resolve2) => setTimeout(resolve2, pollIntervalMs));
11541
+ }
11542
+ throw new Error(`Session ${sessionId} did not finish within ${timeoutMs}ms`);
11543
+ }
11544
+ listEvents(filters) {
11545
+ return listEvents(filters);
11546
+ }
11547
+ onSandboxEvent(sandboxId, listener) {
11548
+ return addStreamListener(sandboxId, listener);
11549
+ }
11550
+ async getProvider(providerName) {
11551
+ return this.providerFactory(providerName, this.providerApiKeys[providerName]);
11552
+ }
11553
+ requireProviderSandbox(sandboxId) {
11554
+ const sandbox = getSandbox(sandboxId);
11555
+ if (!sandbox.provider_sandbox_id) {
11556
+ throw new Error(`Sandbox ${sandbox.id} has no provider sandbox ID`);
11557
+ }
11558
+ return sandbox;
11559
+ }
11560
+ }
11561
+ function createSandboxesSDK(options) {
11562
+ return new SandboxesSDK(options);
11563
+ }
11378
11564
  export {
11379
11565
  uuid,
11380
11566
  updateSession,
@@ -11430,6 +11616,7 @@ export {
11430
11616
  createStreamCollector,
11431
11617
  createSnapshot,
11432
11618
  createSession,
11619
+ createSandboxesSDK,
11433
11620
  createSandbox,
11434
11621
  createProject,
11435
11622
  closeDatabase,
@@ -11439,6 +11626,7 @@ export {
11439
11626
  TemplateNotFoundError,
11440
11627
  SnapshotNotFoundError,
11441
11628
  SessionNotFoundError,
11629
+ SandboxesSDK,
11442
11630
  SandboxNotFoundError,
11443
11631
  SESSION_STATUSES,
11444
11632
  SANDBOX_STATUSES,
@@ -12,4 +12,3 @@ export interface RunAgentOpts {
12
12
  }
13
13
  export declare function runAgent(sandboxId: string, opts: RunAgentOpts): Promise<SandboxSession>;
14
14
  export declare function stopAgent(sandboxId: string): Promise<void>;
15
- //# sourceMappingURL=agent-runner.d.ts.map
@@ -7,4 +7,3 @@ export declare class CodexDriver implements AgentDriver {
7
7
  configure(provider: SandboxProvider, providerSandboxId: string, _envVars: Record<string, string>): Promise<void>;
8
8
  buildCommand(prompt: string): string;
9
9
  }
10
- //# sourceMappingURL=codex.d.ts.map
@@ -7,4 +7,3 @@ export declare class GeminiDriver implements AgentDriver {
7
7
  configure(provider: SandboxProvider, providerSandboxId: string, _envVars: Record<string, string>): Promise<void>;
8
8
  buildCommand(prompt: string): string;
9
9
  }
10
- //# sourceMappingURL=gemini.d.ts.map
@@ -2,4 +2,3 @@ import type { AgentDriver } from "./types.js";
2
2
  export type { AgentDriver };
3
3
  export declare function getAgentDriver(name: string): AgentDriver | undefined;
4
4
  export declare function listAgentDrivers(): AgentDriver[];
5
- //# sourceMappingURL=index.d.ts.map
@@ -7,4 +7,3 @@ export declare class OpenCodeDriver implements AgentDriver {
7
7
  configure(_provider: SandboxProvider, _providerSandboxId: string, _envVars: Record<string, string>): Promise<void>;
8
8
  buildCommand(prompt: string): string;
9
9
  }
10
- //# sourceMappingURL=opencode.d.ts.map
@@ -7,4 +7,3 @@ export declare class PiDriver implements AgentDriver {
7
7
  configure(_provider: SandboxProvider, _providerSandboxId: string, _envVars: Record<string, string>): Promise<void>;
8
8
  buildCommand(prompt: string): string;
9
9
  }
10
- //# sourceMappingURL=pi.d.ts.map
@@ -7,4 +7,3 @@ export declare class TakumiDriver implements AgentDriver {
7
7
  configure(provider: SandboxProvider, providerSandboxId: string, envVars: Record<string, string>): Promise<void>;
8
8
  buildCommand(prompt: string): string;
9
9
  }
10
- //# sourceMappingURL=takumi.d.ts.map
@@ -20,4 +20,3 @@ export interface AgentDriver {
20
20
  */
21
21
  buildCommand(prompt: string): string;
22
22
  }
23
- //# sourceMappingURL=types.d.ts.map
@@ -7,4 +7,3 @@ export declare function getDefaultImage(): string | undefined;
7
7
  export declare function getProviderApiKey(provider: SandboxProviderName): string | undefined;
8
8
  export declare function setConfigValue(key: string, value: string): void;
9
9
  export declare function getConfigValue(key: string): string | undefined;
10
- //# sourceMappingURL=config.d.ts.map
@@ -10,4 +10,3 @@ export declare const BUILTIN_IMAGES: Record<string, {
10
10
  }>;
11
11
  export declare function resolveImage(image: string): string;
12
12
  export declare function getBuiltinImageSetupScript(image: string): string | undefined;
13
- //# sourceMappingURL=images.d.ts.map
@@ -2,4 +2,3 @@ export declare function startKeepAlive(sandboxId: string, intervalMs?: number):
2
2
  export declare function stopKeepAlive(sandboxId: string): void;
3
3
  export declare function isKeepAliveActive(sandboxId: string): boolean;
4
4
  export declare function stopAllKeepAlives(): void;
5
- //# sourceMappingURL=keepalive.d.ts.map
@@ -2,4 +2,3 @@ export declare function getErrorMessage(error: unknown): string;
2
2
  export declare function finalizeSessionExit(sessionId: string, exitCode: number): void;
3
3
  export declare function finalizeSessionFailure(sessionId: string, _error?: unknown, exitCode?: number): void;
4
4
  export declare function finalizeSandboxProvisionFailure(sandboxId: string, error?: unknown): string;
5
- //# sourceMappingURL=runtime-state.d.ts.map
@@ -10,4 +10,3 @@ export declare function createStreamCollector(sandboxId: string, sessionId?: str
10
10
  };
11
11
  };
12
12
  export declare function emitLifecycleEvent(sandboxId: string, message: string): void;
13
- //# sourceMappingURL=stream.d.ts.map
@@ -1,2 +1 @@
1
1
  export declare function getPackageVersion(): string;
2
- //# sourceMappingURL=version.d.ts.map
@@ -11,4 +11,3 @@ export declare function dispatchWebhook(event: string, data: {
11
11
  [key: string]: unknown;
12
12
  }): Promise<void>;
13
13
  export declare const WEBHOOK_EVENTS: readonly ["sandbox.created", "sandbox.started", "sandbox.stopped", "sandbox.deleted", "session.started", "session.completed", "session.output"];
14
- //# sourceMappingURL=webhook.d.ts.map
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env bun
2
2
  export {};
3
- //# sourceMappingURL=index.d.ts.map
package/dist/mcp/index.js CHANGED
@@ -14941,7 +14941,7 @@ var MIGRATIONS = [
14941
14941
  id TEXT PRIMARY KEY,
14942
14942
  sandbox_id TEXT NOT NULL REFERENCES sandboxes(id) ON DELETE CASCADE,
14943
14943
  agent_name TEXT,
14944
- agent_type TEXT CHECK(agent_type IN ('claude', 'codex', 'gemini', 'custom')),
14944
+ agent_type TEXT CHECK(agent_type IN ('codex', 'gemini', 'opencode', 'pi', 'takumi', 'custom')),
14945
14945
  command TEXT,
14946
14946
  status TEXT NOT NULL DEFAULT 'running' CHECK(status IN ('running', 'completed', 'failed', 'killed')),
14947
14947
  exit_code INTEGER,
@@ -15650,29 +15650,6 @@ function emitLifecycleEvent(sandboxId, message) {
15650
15650
  notifyListeners(sandboxId, "lifecycle", message);
15651
15651
  }
15652
15652
 
15653
- // src/lib/agents/claude.ts
15654
- class ClaudeDriver {
15655
- name = "claude";
15656
- requiredEnvVars = ["ANTHROPIC_API_KEY"];
15657
- async install(provider, providerSandboxId) {
15658
- const check = await provider.exec(providerSandboxId, "which claude 2>/dev/null || echo MISSING");
15659
- if (check.stdout.trim() !== "MISSING")
15660
- return;
15661
- await provider.exec(providerSandboxId, "npm install -g @anthropic-ai/claude-code 2>&1 || sudo npm install -g @anthropic-ai/claude-code 2>&1");
15662
- }
15663
- async configure(provider, providerSandboxId, _envVars) {
15664
- const config = JSON.stringify({
15665
- hasCompletedOnboarding: true,
15666
- hasTrustDialogAccepted: true,
15667
- hasAcknowledgedCostThreshold: true
15668
- });
15669
- await provider.exec(providerSandboxId, `mkdir -p ~/.claude && echo '${config}' > ~/.claude.json`);
15670
- }
15671
- buildCommand(prompt) {
15672
- return `claude --dangerously-skip-permissions -p ${JSON.stringify(prompt)}`;
15673
- }
15674
- }
15675
-
15676
15653
  // src/lib/agents/codex.ts
15677
15654
  class CodexDriver {
15678
15655
  name = "codex";
@@ -15756,9 +15733,9 @@ class TakumiDriver {
15756
15733
  return;
15757
15734
  const bunCheck = await provider.exec(providerSandboxId, "which bun 2>/dev/null || echo MISSING");
15758
15735
  if (bunCheck.stdout.trim() !== "MISSING") {
15759
- await provider.exec(providerSandboxId, "bun install -g @hasnaxyz/takumi 2>&1");
15736
+ await provider.exec(providerSandboxId, "bun install -g @hasna/takumi 2>&1");
15760
15737
  } else {
15761
- await provider.exec(providerSandboxId, "npm install -g @hasnaxyz/takumi 2>&1 || sudo npm install -g @hasnaxyz/takumi 2>&1");
15738
+ await provider.exec(providerSandboxId, "npm install -g @hasna/takumi 2>&1 || sudo npm install -g @hasna/takumi 2>&1");
15762
15739
  }
15763
15740
  }
15764
15741
  async configure(provider, providerSandboxId, envVars) {
@@ -15780,7 +15757,6 @@ class TakumiDriver {
15780
15757
 
15781
15758
  // src/lib/agents/index.ts
15782
15759
  var DRIVERS = [
15783
- new ClaudeDriver,
15784
15760
  new CodexDriver,
15785
15761
  new GeminiDriver,
15786
15762
  new OpenCodeDriver,
@@ -15906,7 +15882,7 @@ async function stopAgent(sandboxId) {
15906
15882
  return;
15907
15883
  const provider = await getProvider(sandbox.provider);
15908
15884
  try {
15909
- await provider.exec(sandbox.provider_sandbox_id, "pkill -f 'claude\\|codex\\|gemini\\|opencode\\|pi' || true");
15885
+ await provider.exec(sandbox.provider_sandbox_id, "pkill -f 'codex\\|gemini\\|opencode\\|pi\\|takumi' || true");
15910
15886
  } catch {}
15911
15887
  emitLifecycleEvent(sandbox.id, "Agent stopped by user");
15912
15888
  }
@@ -15918,11 +15894,6 @@ var BUILTIN_IMAGES = {
15918
15894
  description: "Node 20 + npm + pnpm + yarn",
15919
15895
  setup_script: "curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && npm install -g pnpm yarn"
15920
15896
  },
15921
- "node20-claude": {
15922
- e2b: "e2bdev/base:latest",
15923
- description: "Node 20 + Claude Code CLI pre-installed",
15924
- setup_script: `curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && npm install -g @anthropic-ai/claude-code && mkdir -p ~/.claude && echo '{"hasCompletedOnboarding":true,"hasTrustDialogAccepted":true,"hasAcknowledgedCostThreshold":true}' > ~/.claude.json`
15925
- },
15926
15897
  "node20-codex": {
15927
15898
  e2b: "e2bdev/base:latest",
15928
15899
  description: "Node 20 + Codex CLI pre-installed",
@@ -16437,7 +16408,7 @@ server.tool("search_tools", "Search tools by keyword", {
16437
16408
  });
16438
16409
  server.tool("run_agent", "Run an AI agent inside a sandbox", {
16439
16410
  sandbox_id: exports_external2.string().describe("Sandbox ID"),
16440
- agent_type: exports_external2.enum(["claude", "codex", "gemini", "opencode", "pi", "takumi", "custom"]).describe("Agent type"),
16411
+ agent_type: exports_external2.enum(["codex", "gemini", "opencode", "pi", "takumi", "custom"]).describe("Agent type"),
16441
16412
  prompt: exports_external2.string().describe("Prompt for the agent"),
16442
16413
  agent_name: exports_external2.string().optional().describe("Agent name"),
16443
16414
  command: exports_external2.string().optional().describe("Custom command (for 'custom' type)"),
@@ -17,4 +17,3 @@ export declare class DaytonaProvider implements SandboxProvider {
17
17
  resume(_sandboxId: string): Promise<void>;
18
18
  keepAlive(sandboxId: string, durationMs?: number): Promise<void>;
19
19
  }
20
- //# sourceMappingURL=daytona.d.ts.map
@@ -24,4 +24,3 @@ export declare class E2BProvider implements SandboxProvider {
24
24
  getPublicUrl(sandboxId: string, port: number, _protocol?: string): Promise<string>;
25
25
  keepAlive(sandboxId: string, durationMs?: number): Promise<void>;
26
26
  }
27
- //# sourceMappingURL=e2b.d.ts.map
@@ -2,4 +2,3 @@ import type { SandboxProviderName } from "../types/index.js";
2
2
  import type { SandboxProvider } from "./types.js";
3
3
  export declare function getProvider(name: SandboxProviderName, apiKey?: string): Promise<SandboxProvider>;
4
4
  export { type SandboxProvider } from "./types.js";
5
- //# sourceMappingURL=index.d.ts.map
@@ -28,4 +28,3 @@ export declare class ModalProvider implements SandboxProvider {
28
28
  */
29
29
  private shellEscape;
30
30
  }
31
- //# sourceMappingURL=modal.d.ts.map
@@ -41,4 +41,3 @@ export interface SandboxProvider {
41
41
  resume(sandboxId: string): Promise<void>;
42
42
  getPublicUrl(sandboxId: string, port: number, protocol?: string): Promise<string>;
43
43
  }
44
- //# sourceMappingURL=types.d.ts.map
package/dist/sdk.d.ts ADDED
@@ -0,0 +1,59 @@
1
+ import { listSandboxes } from "./db/sandboxes.js";
2
+ import { listEvents } from "./db/events.js";
3
+ import type { SandboxProvider } from "./providers/types.js";
4
+ import type { ExecOptions } from "./providers/types.js";
5
+ import type { AgentType, CreateSandboxInput, ExecResult, FileInfo, Sandbox, SandboxEvent, SandboxProviderName, SandboxSession } from "./types/index.js";
6
+ import type { StreamListener } from "./lib/stream.js";
7
+ export type ProviderFactory = (name: SandboxProviderName, apiKey?: string) => Promise<SandboxProvider>;
8
+ export interface SandboxesSDKOptions {
9
+ defaultProvider?: SandboxProviderName;
10
+ providerApiKeys?: Partial<Record<SandboxProviderName, string>>;
11
+ providerFactory?: ProviderFactory;
12
+ }
13
+ export interface ExecCommandResult {
14
+ session: SandboxSession;
15
+ result: ExecResult;
16
+ }
17
+ export interface RunAgentOptions {
18
+ agentType: AgentType;
19
+ prompt: string;
20
+ agentName?: string;
21
+ command?: string;
22
+ callEnvVars?: Record<string, string>;
23
+ onStdout?: (data: string) => void;
24
+ onStderr?: (data: string) => void;
25
+ }
26
+ export interface WaitForSessionOptions {
27
+ timeoutMs?: number;
28
+ pollIntervalMs?: number;
29
+ }
30
+ export declare class SandboxesSDK {
31
+ private readonly defaultProvider?;
32
+ private readonly providerApiKeys;
33
+ private readonly providerFactory;
34
+ constructor(options?: SandboxesSDKOptions);
35
+ createSandbox(input?: CreateSandboxInput): Promise<Sandbox>;
36
+ getSandbox(id: string): Sandbox;
37
+ listSandboxes(filters?: Parameters<typeof listSandboxes>[0]): Sandbox[];
38
+ stopSandbox(id: string): Promise<Sandbox>;
39
+ deleteSandbox(id: string): Promise<void>;
40
+ execCommand(sandboxId: string, command: string, opts?: ExecOptions): Promise<ExecCommandResult>;
41
+ readFile(sandboxId: string, path: string, opts?: {
42
+ encoding?: "utf8" | "base64" | "hex";
43
+ offset?: number;
44
+ limit?: number;
45
+ }): Promise<string>;
46
+ writeFile(sandboxId: string, path: string, content: string): Promise<void>;
47
+ listFiles(sandboxId: string, path: string, opts?: {
48
+ recursive?: boolean;
49
+ glob?: string;
50
+ }): Promise<FileInfo[]>;
51
+ runAgent(sandboxId: string, opts: RunAgentOptions): Promise<SandboxSession>;
52
+ getSession(sessionId: string): SandboxSession;
53
+ waitForSession(sessionId: string, opts?: WaitForSessionOptions): Promise<SandboxSession>;
54
+ listEvents(filters?: Parameters<typeof listEvents>[0]): SandboxEvent[];
55
+ onSandboxEvent(sandboxId: string, listener: StreamListener): () => void;
56
+ private getProvider;
57
+ private requireProviderSandbox;
58
+ }
59
+ export declare function createSandboxesSDK(options?: SandboxesSDKOptions): SandboxesSDK;
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env bun
2
2
  export {};
3
- //# sourceMappingURL=index.d.ts.map
@@ -10313,7 +10313,7 @@ var MIGRATIONS = [
10313
10313
  id TEXT PRIMARY KEY,
10314
10314
  sandbox_id TEXT NOT NULL REFERENCES sandboxes(id) ON DELETE CASCADE,
10315
10315
  agent_name TEXT,
10316
- agent_type TEXT CHECK(agent_type IN ('claude', 'codex', 'gemini', 'custom')),
10316
+ agent_type TEXT CHECK(agent_type IN ('codex', 'gemini', 'opencode', 'pi', 'takumi', 'custom')),
10317
10317
  command TEXT,
10318
10318
  status TEXT NOT NULL DEFAULT 'running' CHECK(status IN ('running', 'completed', 'failed', 'killed')),
10319
10319
  exit_code INTEGER,
@@ -1,3 +1,2 @@
1
1
  export declare function handleRequest(req: Request): Promise<Response>;
2
2
  export declare function startServer(port: number): void;
3
- //# sourceMappingURL=serve.d.ts.map
@@ -4,7 +4,7 @@ export declare const SANDBOX_STATUSES: readonly ["creating", "running", "paused"
4
4
  export type SandboxStatus = (typeof SANDBOX_STATUSES)[number];
5
5
  export declare const SESSION_STATUSES: readonly ["running", "completed", "failed", "killed"];
6
6
  export type SessionStatus = (typeof SESSION_STATUSES)[number];
7
- export declare const AGENT_TYPES: readonly ["claude", "codex", "gemini", "opencode", "pi", "takumi", "custom"];
7
+ export declare const AGENT_TYPES: readonly ["codex", "gemini", "opencode", "pi", "takumi", "custom"];
8
8
  export type AgentType = (typeof AGENT_TYPES)[number];
9
9
  export declare const EVENT_TYPES: readonly ["stdout", "stderr", "lifecycle", "agent"];
10
10
  export type EventType = (typeof EVENT_TYPES)[number];
@@ -245,4 +245,3 @@ export interface CreateTemplateInput {
245
245
  setup_script?: string;
246
246
  tags?: string[];
247
247
  }
248
- //# sourceMappingURL=index.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hasna/sandboxes",
3
- "version": "0.1.21",
3
+ "version": "0.1.22",
4
4
  "author": "Andrei Hasna <andrei@hasna.com>",
5
5
  "repository": {
6
6
  "type": "git",
@@ -56,7 +56,6 @@
56
56
  "mcp",
57
57
  "ai",
58
58
  "coding-agent",
59
- "claude",
60
59
  "codex",
61
60
  "gemini",
62
61
  "cli"
@@ -67,7 +66,7 @@
67
66
  "access": "public"
68
67
  },
69
68
  "scripts": {
70
- "build": "bun build src/cli/index.tsx --outdir dist/cli --target bun --external ink --external react --external chalk --external @modelcontextprotocol/sdk --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && bun build src/server/index.ts --outdir dist/server --target bun --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && bun build src/index.ts --outdir dist --target bun --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && tsc --emitDeclarationOnly --outDir dist",
69
+ "build": "rm -rf dist && bun build src/cli/index.tsx --outdir dist/cli --target bun --external ink --external react --external chalk --external @modelcontextprotocol/sdk --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && bun build src/server/index.ts --outdir dist/server --target bun --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && bun build src/index.ts --outdir dist --target bun --external @e2b/code-interpreter --external @daytonaio/sdk --external modal && tsc --emitDeclarationOnly --outDir dist",
71
70
  "typecheck": "tsc --noEmit",
72
71
  "test": "bun test",
73
72
  "dev:cli": "bun run src/cli/index.tsx",
@@ -77,4 +76,4 @@
77
76
  },
78
77
  "type": "module",
79
78
  "types": "dist/index.d.ts"
80
- }
79
+ }
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.tsx"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/db/agents.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAK1E,wBAAgB,UAAU,CAAC,GAAG,EAAE,QAAQ,GAAG,KAAK,CAS/C;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,KAAK,CAsB9D;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,CAY1C;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CASzD;AAED,wBAAgB,UAAU,IAAI,KAAK,EAAE,CAQpC;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAMtD;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,CAM/E;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAO5C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/db/database.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AA+OtC,wBAAgB,WAAW,IAAI,QAAQ,CAatC;AAED,wBAAgB,aAAa,IAAI,IAAI,CAMpC;AAED,wBAAgB,aAAa,IAAI,IAAI,CAMpC;AAED,wBAAgB,IAAI,IAAI,MAAM,CAE7B;AAED,wBAAgB,OAAO,IAAI,MAAM,CAEhC;AAED,wBAAgB,GAAG,IAAI,MAAM,CAE5B;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,IAAI,CAcf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/db/events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAI/E,wBAAgB,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,YAAY,CAS7D;AAID,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,YAAY,CAcf;AAED,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,YAAY,EAAE,CA2BjB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pg-migrations.d.ts","sourceRoot":"","sources":["../../src/db/pg-migrations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,aAAa,EAAE,MAAM,EA0IjC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/db/projects.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAKlE,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CASlD;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAYhE;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAY9C;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAS7D;AAED,wBAAgB,YAAY,IAAI,OAAO,EAAE,CAQxC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAKvF;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAO9C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"sandboxes.d.ts","sourceRoot":"","sources":["../../src/db/sandboxes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AAKxB,wBAAgB,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAqBrD;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAsChE;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAY9C;AAED,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE;IACnC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,EAAE,CAwBZ;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CACd,IAAI,CACF,OAAO,EACL,QAAQ,GACR,qBAAqB,GACrB,MAAM,GACN,OAAO,GACP,SAAS,GACT,QAAQ,GACR,UAAU,GACV,kBAAkB,GAClB,YAAY,CACf,CACF,GACA,OAAO,CA2DT;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAO9C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../src/db/sessions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,wBAAgB,YAAY,CAAC,GAAG,EAAE,iBAAiB,GAAG,cAAc,CAMnE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,cAAc,CAkBvE;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,CAWrD;AAED,wBAAgB,YAAY,CAAC,IAAI,CAAC,EAAE;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,GAAG,cAAc,EAAE,CAqBnB;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,GAC7D,cAAc,CAwBhB;AAED,wBAAgB,UAAU,CACxB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,aAAa,GACrB,cAAc,CAWhB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"snapshots.d.ts","sourceRoot":"","sources":["../../src/db/snapshots.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,EAAE,EAAE,MAAM;CAIvB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,QAAQ,CASX;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,CAOhD;AAED,wBAAgB,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,CAM5D;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAK/C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/db/templates.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAe,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAiBpF,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,QAAQ,CAanE;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,CAOhD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAI/D;AAED,wBAAgB,aAAa,IAAI,QAAQ,EAAE,CAI1C;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAK/C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/db/webhooks.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAK9E,wBAAgB,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CASrD;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAahE;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAY9C;AAED,wBAAgB,YAAY,IAAI,OAAO,EAAE,CAQxC;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAO9C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnH,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACtG,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC3H,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAClH,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC/F,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGpK,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAG3F,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAG7G,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAG/F,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-runner.d.ts","sourceRoot":"","sources":["../../src/lib/agent-runner.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAc,MAAM,mBAAmB,CAAC;AAE/E,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,CAAC,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC,EAAE,CAAC;CACpD;AAcD,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,cAAc,CAAC,CAyGzB;AAED,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYhE"}
@@ -1,10 +0,0 @@
1
- import type { SandboxProvider } from "../../providers/types.js";
2
- import type { AgentDriver } from "./types.js";
3
- export declare class ClaudeDriver implements AgentDriver {
4
- readonly name = "claude";
5
- readonly requiredEnvVars: string[];
6
- install(provider: SandboxProvider, providerSandboxId: string): Promise<void>;
7
- configure(provider: SandboxProvider, providerSandboxId: string, _envVars: Record<string, string>): Promise<void>;
8
- buildCommand(prompt: string): string;
9
- }
10
- //# sourceMappingURL=claude.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/claude.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,qBAAa,YAAa,YAAW,WAAW;IAC9C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,eAAe,WAAyB;IAE3C,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5E,SAAS,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAYtH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/codex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,qBAAa,WAAY,YAAW,WAAW;IAC7C,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,eAAe,WAAsB;IAExC,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5E,SAAS,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAStH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,qBAAa,YAAa,YAAW,WAAW;IAC9C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,eAAe,WAAsB;IAExC,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5E,SAAS,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAStH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,YAAY,EAAE,WAAW,EAAE,CAAC;AAe5B,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEpE;AAED,wBAAgB,gBAAgB,IAAI,WAAW,EAAE,CAEhD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,qBAAa,cAAe,YAAW,WAAW;IAChD,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,eAAe,UAAM;IAExB,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5E,SAAS,CAAC,SAAS,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pi.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/pi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,qBAAa,QAAS,YAAW,WAAW;IAC1C,QAAQ,CAAC,IAAI,QAAQ;IACrB,QAAQ,CAAC,eAAe,WAAkB;IAEpC,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5E,SAAS,CAAC,SAAS,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"takumi.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/takumi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,qBAAa,YAAa,YAAW,WAAW;IAC9C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,eAAe,WAAyB;IAE3C,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5E,SAAS,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBrH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/agents/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,oFAAoF;IACpF,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;IAEnC;;;OAGG;IACH,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7E;;;OAGG;IACH,SAAS,CACP,QAAQ,EAAE,eAAe,EACzB,iBAAiB,EAAE,MAAM,EACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACtC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AA0B9E,wBAAgB,UAAU,IAAI,eAAe,CAU5C;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAOxD;AAED,wBAAgB,kBAAkB,IAAI,mBAAmB,CAGxD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAG1C;AAED,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAGpD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM,GAAG,SAAS,CAYnF;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAuB/D;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAkB9D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../src/lib/images.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CA+BtG,CAAC;AAEF,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE5E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"keepalive.d.ts","sourceRoot":"","sources":["../../src/lib/keepalive.ts"],"names":[],"mappings":"AAOA,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,UAAU,GAAE,MAAe,GAC1B,IAAI,CAiCN;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAMrD;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime-state.d.ts","sourceRoot":"","sources":["../../src/lib/runtime-state.ts"],"names":[],"mappings":"AAGA,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEtD;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAE7E;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,SAAI,GAAG,IAAI,CAG9F;AAED,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAI1F"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/lib/stream.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAIrE,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,cAAc,GACvB,MAAM,IAAI,CAYZ;AAmBD,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,GACjB;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,SAAS,EAAE,MAAM;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACrD,CA2BA;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,IAAI,CAON"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/lib/version.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,IAAI,MAAM,CAS1C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../src/lib/webhook.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IACJ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,GACA,OAAO,CAAC,IAAI,CAAC,CAkDf;AAED,eAAO,MAAM,cAAc,iJAQjB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"daytona.d.ts","sourceRoot":"","sources":["../../src/providers/daytona.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,EACZ,MAAM,YAAY,CAAC;AAIpB,qBAAa,eAAgB,YAAW,eAAe;IACrD,QAAQ,CAAC,IAAI,aAAa;IAC1B,OAAO,CAAC,MAAM,CAAU;gBAEZ,MAAM,EAAE,MAAM;IAMpB,MAAM,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;YA0BlD,WAAW;IAgBnB,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAgG7B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAa1D,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAYV,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAkB/D,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxC,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpF,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAcvE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"e2b.d.ts","sourceRoot":"","sources":["../../src/providers/e2b.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,EACZ,MAAM,YAAY,CAAC;AAIpB,qBAAa,WAAY,YAAW,eAAe;IACjD,QAAQ,CAAC,IAAI,SAAS;IACtB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM;IAIpB,MAAM,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;YAwBlD,WAAW;IAkBnB,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IA2D7B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAgC5I,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAYV,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA+B9G,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASxC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUlF,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAWvE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,wBAAsB,WAAW,CAC/B,IAAI,EAAE,mBAAmB,EACzB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,eAAe,CAAC,CAqC1B;AAED,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../src/providers/modal.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,EACZ,MAAM,YAAY,CAAC;AAKpB,qBAAa,aAAc,YAAW,eAAe;IACnD,QAAQ,CAAC,IAAI,WAAW;IACxB,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAS;gBAEb,MAAM,CAAC,EAAE,MAAM;YAIb,YAAY;IAiBpB,MAAM,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAsChE,OAAO,CAAC,UAAU;IAWZ,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAmF7B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB1D,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAoBV,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAmD/D,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpF,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxE;;OAEG;IACH,OAAO,CAAC,YAAY;IAuCpB;;OAEG;IACH,OAAO,CAAC,WAAW;CAGpB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE1E,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,MAAM,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE3D,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC;IAEpC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7I,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE/G,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjE,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACnF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/server/serve.ts"],"names":[],"mappings":"AAuEA,wBAAsB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CA+RnE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAO9C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}