@intella/sdk 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/agents/base-agent.d.ts.map +1 -1
  2. package/dist/agents/base-agent.js +2 -1
  3. package/dist/agents/base-agent.js.map +1 -1
  4. package/dist/agents/claude-agent.d.ts +2 -0
  5. package/dist/agents/claude-agent.d.ts.map +1 -1
  6. package/dist/agents/claude-agent.js +33 -17
  7. package/dist/agents/claude-agent.js.map +1 -1
  8. package/dist/index.d.ts +6 -2
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +6 -1
  11. package/dist/index.js.map +1 -1
  12. package/dist/sandbox/agent-installers.d.ts +33 -0
  13. package/dist/sandbox/agent-installers.d.ts.map +1 -0
  14. package/dist/sandbox/agent-installers.js +277 -0
  15. package/dist/sandbox/agent-installers.js.map +1 -0
  16. package/dist/sandbox/agent-setup.d.ts +29 -0
  17. package/dist/sandbox/agent-setup.d.ts.map +1 -0
  18. package/dist/sandbox/agent-setup.js +63 -0
  19. package/dist/sandbox/agent-setup.js.map +1 -0
  20. package/dist/sandbox/config.d.ts +33 -0
  21. package/dist/sandbox/config.d.ts.map +1 -0
  22. package/dist/sandbox/config.js +113 -0
  23. package/dist/sandbox/config.js.map +1 -0
  24. package/dist/sandbox/vercel-provider.d.ts +92 -0
  25. package/dist/sandbox/vercel-provider.d.ts.map +1 -0
  26. package/dist/sandbox/vercel-provider.js +490 -0
  27. package/dist/sandbox/vercel-provider.js.map +1 -0
  28. package/dist/sandbox-manager.d.ts.map +1 -1
  29. package/dist/sandbox-manager.js +2 -0
  30. package/dist/sandbox-manager.js.map +1 -1
  31. package/dist/sdk.d.ts +20 -1
  32. package/dist/sdk.d.ts.map +1 -1
  33. package/dist/sdk.js +39 -0
  34. package/dist/sdk.js.map +1 -1
  35. package/dist/types.d.ts +41 -4
  36. package/dist/types.d.ts.map +1 -1
  37. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"file":"base-agent.d.ts","sourceRoot":"","sources":["../../src/agents/base-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,IAAI,CAAC;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAkB,MAAM,aAAa,CAAC;AAE1H;;;GAGG;AACH,8BAAsB,SAAU,YAAW,MAAM;IAC/C,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAgB,IAAI,EAAE,SAAS,CAAC;gBAEpB,IAAI,EAAE,SAAS,EAAE,MAAM,GAAE,WAAgB;IAKrD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,IAAI,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAE3D;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAqB1D;;OAEG;IACI,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC;IAoC/D;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAIpC;;OAEG;IACH,SAAS,IAAI,WAAW;IAIxB;;OAEG;IACH,OAAO,CAAC,cAAc;IA6BtB;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,EAAE;CAqC9D"}
1
+ {"version":3,"file":"base-agent.d.ts","sourceRoot":"","sources":["../../src/agents/base-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,IAAI,CAAC;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAkB,MAAM,aAAa,CAAC;AAE1H;;;GAGG;AACH,8BAAsB,SAAU,YAAW,MAAM;IAC/C,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAgB,IAAI,EAAE,SAAS,CAAC;gBAEpB,IAAI,EAAE,SAAS,EAAE,MAAM,GAAE,WAAgB;IAKrD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,IAAI,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAE3D;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAqB1D;;OAEG;IACI,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC;IAoC/D;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAIpC;;OAEG;IACH,SAAS,IAAI,WAAW;IAIxB;;OAEG;IACH,OAAO,CAAC,cAAc;IA6BtB;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,EAAE;CAsC9D"}
@@ -128,9 +128,10 @@ export class BaseAgent {
128
128
  if (msg.role === 'system') {
129
129
  continue;
130
130
  }
131
+ const convertedContent = this.convertContent(msg.content);
131
132
  messages.push({
132
133
  role: msg.role,
133
- content: this.convertContent(msg.content),
134
+ content: convertedContent,
134
135
  });
135
136
  }
136
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base-agent.js","sourceRoot":"","sources":["../../src/agents/base-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-agent.js","sourceRoot":"","sources":["../../src/agents/base-agent.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ export declare class ClaudeAgent extends BaseAgent {
13
13
  *
14
14
  * Supports Claude Code provider options:
15
15
  * - allowedTools, disallowedTools, mcpServers, permissionMode, maxTurns, cwd, verbose
16
+ * - executablePath: explicit path to the claude binary (preferred)
17
+ * - pathToClaudeCodeExecutable: legacy option for explicit path (for backward compatibility)
16
18
  * See: https://ai-sdk.dev/providers/community-providers/claude-code
17
19
  */
18
20
  getModel(): Promise<LanguageModel>;
@@ -1 +1 @@
1
- {"version":3,"file":"claude-agent.d.ts","sourceRoot":"","sources":["../../src/agents/claude-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAKxC;;;GAGG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACxC,OAAO,CAAC,aAAa,CAA8B;gBAEvC,MAAM,GAAE,WAAgB;IAIpC;;;;;;OAMG;IACG,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC;IA0CxC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAKrC"}
1
+ {"version":3,"file":"claude-agent.d.ts","sourceRoot":"","sources":["../../src/agents/claude-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAKxC;;;GAGG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACxC,OAAO,CAAC,aAAa,CAA8B;gBAEvC,MAAM,GAAE,WAAgB;IAIpC;;;;;;;;OAQG;IACG,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC;IA4DxC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAKrC"}
@@ -14,6 +14,8 @@ export class ClaudeAgent extends BaseAgent {
14
14
  *
15
15
  * Supports Claude Code provider options:
16
16
  * - allowedTools, disallowedTools, mcpServers, permissionMode, maxTurns, cwd, verbose
17
+ * - executablePath: explicit path to the claude binary (preferred)
18
+ * - pathToClaudeCodeExecutable: legacy option for explicit path (for backward compatibility)
17
19
  * See: https://ai-sdk.dev/providers/community-providers/claude-code
18
20
  */
19
21
  async getModel() {
@@ -23,26 +25,40 @@ export class ClaudeAgent extends BaseAgent {
23
25
  // Uses CLI authentication (claude login) - API key not needed in code
24
26
  // Model shortcuts: 'opus', 'sonnet', 'haiku'
25
27
  const modelId = this.config.model || 'sonnet';
26
- // Check if custom provider options are provided
27
- const hasCustomOptions = this.config.allowedTools ||
28
- this.config.disallowedTools ||
29
- this.config.mcpServers ||
30
- this.config.permissionMode ||
31
- this.config.maxTurns ||
32
- this.config.cwd !== undefined ||
33
- this.config.verbose !== undefined;
28
+ // Get the binary path
29
+ // Build settings object
30
+ const settings = {};
31
+ if (this.config.executablePath) {
32
+ settings.pathToClaudeCodeExecutable = this.config.executablePath;
33
+ }
34
+ // Add other config options if provided
35
+ if (this.config.allowedTools) {
36
+ settings.allowedTools = this.config.allowedTools;
37
+ }
38
+ if (this.config.disallowedTools) {
39
+ settings.disallowedTools = this.config.disallowedTools;
40
+ }
41
+ if (this.config.mcpServers) {
42
+ settings.mcpServers = this.config.mcpServers;
43
+ }
44
+ if (this.config.permissionMode) {
45
+ settings.permissionMode = this.config.permissionMode;
46
+ }
47
+ if (this.config.maxTurns !== undefined) {
48
+ settings.maxTurns = this.config.maxTurns;
49
+ }
50
+ if (this.config.cwd !== undefined) {
51
+ settings.cwd = this.config.cwd;
52
+ }
53
+ if (this.config.verbose !== undefined) {
54
+ settings.verbose = this.config.verbose;
55
+ }
56
+ // Check if we have any custom options (including binary path)
57
+ const hasCustomOptions = Object.keys(settings).length > 0;
34
58
  if (hasCustomOptions) {
35
59
  // Create custom provider instance with options
36
60
  const customProvider = createClaudeCode({
37
- defaultSettings: {
38
- allowedTools: this.config.allowedTools,
39
- disallowedTools: this.config.disallowedTools,
40
- mcpServers: this.config.mcpServers,
41
- permissionMode: this.config.permissionMode,
42
- maxTurns: this.config.maxTurns,
43
- cwd: this.config.cwd,
44
- verbose: this.config.verbose,
45
- }
61
+ defaultSettings: settings
46
62
  });
47
63
  this.modelInstance = customProvider(modelId);
48
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"claude-agent.js","sourceRoot":"","sources":["../../src/agents/claude-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAwB,MAAM,6BAA6B,CAAC;AAGjG;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IAChC,aAAa,GAAyB,IAAI,CAAC;IAEnD,YAAY,SAAsB,EAAE;QAClC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,oDAAoD;YAEpD,0DAA0D;YAC1D,sEAAsE;YACtE,6CAA6C;YAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC;YAE9C,gDAAgD;YAChD,MAAM,gBAAgB,GACpB,IAAI,CAAC,MAAM,CAAC,YAAY;gBACxB,IAAI,CAAC,MAAM,CAAC,eAAe;gBAC3B,IAAI,CAAC,MAAM,CAAC,UAAU;gBACtB,IAAI,CAAC,MAAM,CAAC,cAAc;gBAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ;gBACpB,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS;gBAC7B,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC;YAEpC,IAAI,gBAAgB,EAAE,CAAC;gBACrB,+CAA+C;gBAC/C,MAAM,cAAc,GAAG,gBAAgB,CAAC;oBACtC,eAAe,EAAE;wBACf,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAoC;wBAC9D,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAuC;wBACpE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAyD;wBACjF,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAsF;wBAClH,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAA8B;wBACpD,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAyB;wBAC1C,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAA8B;qBACpD;iBACF,CAAC,CAAC;gBACH,IAAI,CAAC,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,gCAAgC;gBAChC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAmB;QAC3B,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACxB,yDAAyD;QACzD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"claude-agent.js","sourceRoot":"","sources":["../../src/agents/claude-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAwB,MAAM,6BAA6B,CAAC;AAGjG;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IAChC,aAAa,GAAyB,IAAI,CAAC;IAEnD,YAAY,SAAsB,EAAE;QAClC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,oDAAoD;YAEpD,0DAA0D;YAC1D,sEAAsE;YACtE,6CAA6C;YAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC;YAE9C,sBAAsB;YACtB,wBAAwB;YACxB,MAAM,QAAQ,GAAQ,EAErB,CAAC;YAEF,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC/B,QAAQ,CAAC,0BAA0B,GAAG,IAAI,CAAC,MAAM,CAAC,cAAwB,CAAC;YAC7E,CAAC;YAED,uCAAuC;YACvC,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gBAC7B,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAwB,CAAC;YAC/D,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;gBAChC,QAAQ,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,eAA2B,CAAC;YACrE,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC3B,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAA6C,CAAC;YAClF,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC/B,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAA0E,CAAC;YACnH,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACvC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAkB,CAAC;YACrD,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gBAClC,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAa,CAAC;YAC3C,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACtC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAkB,CAAC;YACpD,CAAC;YAED,8DAA8D;YAC9D,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAE1D,IAAI,gBAAgB,EAAE,CAAC;gBACrB,+CAA+C;gBAC/C,MAAM,cAAc,GAAG,gBAAgB,CAAC;oBACtC,eAAe,EAAE,QAAQ;iBAC1B,CAAC,CAAC;gBACH,IAAI,CAAC,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,gCAAgC;gBAChC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAmB;QAC3B,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACxB,yDAAyD;QACzD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export { IntellaSDK } from './sdk';
2
- export type { AgentType, AgentConfig, TaskRequest, TaskResponse, StreamChunk, OrchestrationStrategy, OrchestrationRequest, OrchestrationResponse, IAgent, FilesystemProviderType, FilesystemConfig, FileStats, DirectoryEntry, ToolCallMetadata, IFilesystemProvider, SandboxProviderType, SandboxConfig, SandboxExecutionResult, SandboxInfo, CommandResult, ISandboxProvider, TextPart, FilePart, MessageContent, } from './types.js';
1
+ export { IntellaSDK } from './sdk.js';
2
+ export type { AgentType, AgentConfig, TaskRequest, TaskResponse, StreamChunk, OrchestrationStrategy, OrchestrationRequest, OrchestrationResponse, IAgent, FilesystemProviderType, FilesystemConfig, FileStats, DirectoryEntry, ToolCallMetadata, IFilesystemProvider, SandboxProviderType, SandboxConfig, SandboxExecutionResult, SandboxInfo, CommandResult, ISandboxProvider, TextPart, FilePart, MessageContent, McpServerConfig, SandboxAgentExecutionOptions, } from './types.js';
3
3
  export { BaseAgent } from './agents/base-agent.js';
4
4
  export { IntellaLiteAgent } from './agents/intella-lite-agent.js';
5
5
  export { ClaudeAgent } from './agents/claude-agent.js';
@@ -14,5 +14,9 @@ export { BaseSandboxProvider } from './sandbox/base-provider.js';
14
14
  export { E2BSandboxProvider } from './sandbox/e2b-provider.js';
15
15
  export { DaytonaSandboxProvider } from './sandbox/daytona-provider.js';
16
16
  export { ModalSandboxProvider } from './sandbox/modal-provider.js';
17
+ export { VercelSandboxProvider } from './sandbox/vercel-provider.js';
18
+ export { SandboxAgentSetup } from './sandbox/agent-setup.js';
19
+ export { installAgentBinary, installClaudeBinary, installCodexBinary, installOpenCodeBinary, type BinaryInstallResult, } from './sandbox/agent-installers.js';
20
+ export { agentRequiresBinary, getAgentBinaryPackage, getAgentBinaryCommand, getRequiredApiKeys, validateApiKeys, buildInstallCommand, normalizeMcpServers, } from './sandbox/config.js';
17
21
  export { extractCodeBlocks, extractCodeBlock, extractCode, type CodeBlock, type ExtractCodeBlocksOptions, } from './utils/code-extractor.js';
18
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGnC,YAAY,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,MAAM,EACN,sBAAsB,EACtB,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EACL,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,KAAK,SAAS,EACd,KAAK,wBAAwB,GAC9B,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGtC,YAAY,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,MAAM,EACN,sBAAsB,EACtB,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,eAAe,EACf,4BAA4B,GAC7B,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EACL,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAGrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,KAAK,mBAAmB,GACzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,KAAK,SAAS,EACd,KAAK,wBAAwB,GAC9B,MAAM,2BAA2B,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // Main SDK exports
2
- export { IntellaSDK } from './sdk';
2
+ export { IntellaSDK } from './sdk.js';
3
3
  // Agent exports
4
4
  export { BaseAgent } from './agents/base-agent.js';
5
5
  export { IntellaLiteAgent } from './agents/intella-lite-agent.js';
@@ -18,6 +18,11 @@ export { BaseSandboxProvider } from './sandbox/base-provider.js';
18
18
  export { E2BSandboxProvider } from './sandbox/e2b-provider.js';
19
19
  export { DaytonaSandboxProvider } from './sandbox/daytona-provider.js';
20
20
  export { ModalSandboxProvider } from './sandbox/modal-provider.js';
21
+ export { VercelSandboxProvider } from './sandbox/vercel-provider.js';
22
+ // Sandbox agent setup exports
23
+ export { SandboxAgentSetup } from './sandbox/agent-setup.js';
24
+ export { installAgentBinary, installClaudeBinary, installCodexBinary, installOpenCodeBinary, } from './sandbox/agent-installers.js';
25
+ export { agentRequiresBinary, getAgentBinaryPackage, getAgentBinaryCommand, getRequiredApiKeys, validateApiKeys, buildInstallCommand, normalizeMcpServers, } from './sandbox/config.js';
21
26
  // Utility exports
22
27
  export { extractCodeBlocks, extractCodeBlock, extractCode, } from './utils/code-extractor.js';
23
28
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AA8BnC,gBAAgB;AAChB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,mCAAmC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8BAA8B;AAC9B,OAAO,EACL,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,2BAA2B;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,kBAAkB;AAClB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,GAGZ,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB;AACnB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAgCtC,gBAAgB;AAChB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,mCAAmC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8BAA8B;AAC9B,OAAO,EACL,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,2BAA2B;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,8BAA8B;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,GAEtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,kBAAkB;AAClB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,GAGZ,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { AgentType, ISandboxProvider, McpServerConfig } from '../types.js';
2
+ /**
3
+ * Result of binary installation
4
+ */
5
+ export interface BinaryInstallResult {
6
+ success: boolean;
7
+ binaryPath?: string;
8
+ error?: string;
9
+ }
10
+ /**
11
+ * Install Claude Code CLI binary in sandbox
12
+ */
13
+ export declare function installClaudeBinary(sandbox: ISandboxProvider, apiKey?: string, model?: string, mcpServers?: McpServerConfig[]): Promise<BinaryInstallResult>;
14
+ /**
15
+ * Install Codex CLI binary in sandbox
16
+ */
17
+ export declare function installCodexBinary(sandbox: ISandboxProvider, apiKey?: string): Promise<BinaryInstallResult>;
18
+ /**
19
+ * Install OpenCode CLI binary in sandbox
20
+ */
21
+ export declare function installOpenCodeBinary(sandbox: ISandboxProvider, apiKeys?: {
22
+ openai?: string;
23
+ anthropic?: string;
24
+ }, mcpServers?: McpServerConfig[]): Promise<BinaryInstallResult>;
25
+ /**
26
+ * Install agent binary based on agent type
27
+ */
28
+ export declare function installAgentBinary(agentType: AgentType, sandbox: ISandboxProvider, options?: {
29
+ apiKeys?: Record<string, string>;
30
+ model?: string;
31
+ mcpServers?: McpServerConfig[];
32
+ }): Promise<BinaryInstallResult>;
33
+ //# sourceMappingURL=agent-installers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-installers.d.ts","sourceRoot":"","sources":["../../src/sandbox/agent-installers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,gBAAgB,EACzB,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,eAAe,EAAE,GAC7B,OAAO,CAAC,mBAAmB,CAAC,CA2G9B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,gBAAgB,EACzB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,CAAC,CAuC9B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,EACD,UAAU,CAAC,EAAE,eAAe,EAAE,GAC7B,OAAO,CAAC,mBAAmB,CAAC,CAiI9B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;CAChC,GACA,OAAO,CAAC,mBAAmB,CAAC,CAoC9B"}
@@ -0,0 +1,277 @@
1
+ /**
2
+ * Install Claude Code CLI binary in sandbox
3
+ */
4
+ export async function installClaudeBinary(sandbox, apiKey, model, mcpServers) {
5
+ try {
6
+ // Check if binary already exists
7
+ const checkResult = await sandbox.executeCommand('which claude');
8
+ if (checkResult.exitCode === 0 && checkResult.stdout?.toString().includes('claude')) {
9
+ // Binary already installed, get its path
10
+ const pathResult = await sandbox.executeCommand('which claude');
11
+ const binaryPath = pathResult.stdout?.toString().trim() || '/usr/local/bin/claude';
12
+ return { success: true, binaryPath };
13
+ }
14
+ // Install Claude CLI
15
+ const installResult = await sandbox.executeCommand('npm install -g @anthropic-ai/claude-code');
16
+ if (installResult.exitCode !== 0) {
17
+ return {
18
+ success: false,
19
+ error: `Failed to install Claude CLI: ${installResult.stderr?.toString() || 'Unknown error'}`,
20
+ };
21
+ }
22
+ // Get binary path after installation
23
+ const pathResult = await sandbox.executeCommand('which claude');
24
+ const binaryPath = pathResult.stdout?.toString().trim() || '/usr/local/bin/claude';
25
+ // Configure authentication if API key provided
26
+ if (apiKey) {
27
+ // Create config directory
28
+ await sandbox.executeCommand('mkdir -p $HOME/.config/claude');
29
+ // Create config file using writeFile
30
+ const modelToUse = model || 'claude-sonnet-4-5-20250929';
31
+ const configContent = JSON.stringify({
32
+ api_key: apiKey,
33
+ default_model: modelToUse,
34
+ }, null, 2);
35
+ try {
36
+ // Try to expand $HOME first
37
+ const homeResult = await sandbox.executeCommand('echo $HOME');
38
+ const homeDir = homeResult.stdout?.toString().trim() || '/home/user';
39
+ await sandbox.writeFile(`${homeDir}/.config/claude/config.json`, configContent);
40
+ }
41
+ catch (error) {
42
+ // Fallback to shell command if writeFile fails
43
+ const configCmd = `cat > $HOME/.config/claude/config.json << 'EOF'\n${configContent}\nEOF`;
44
+ await sandbox.executeCommand(`sh -c "${configCmd.replace(/"/g, '\\"')}"`);
45
+ }
46
+ // Configure MCP servers if provided
47
+ if (mcpServers && mcpServers.length > 0) {
48
+ for (const server of mcpServers) {
49
+ const serverName = server.name.toLowerCase().replace(/[^a-z0-9]/g, '-');
50
+ const envPrefix = `ANTHROPIC_API_KEY="${apiKey}"`;
51
+ if (server.type === 'local' && server.command) {
52
+ let addMcpCmd = `${envPrefix} claude mcp add "${serverName}" -- ${server.command}`;
53
+ if (server.env && Object.keys(server.env).length > 0) {
54
+ const envVars = Object.entries(server.env)
55
+ .map(([key, value]) => `--env ${key}="${value}"`)
56
+ .join(' ');
57
+ addMcpCmd = addMcpCmd.replace(' --', ` ${envVars} --`);
58
+ }
59
+ const addResult = await sandbox.executeCommand(`sh -c "${addMcpCmd.replace(/"/g, '\\"')}"`);
60
+ if (addResult.exitCode !== 0) {
61
+ // Log error but continue
62
+ console.warn(`Failed to add MCP server ${serverName}: ${addResult.stderr}`);
63
+ }
64
+ }
65
+ else if (server.type === 'remote' && server.baseUrl) {
66
+ let addMcpCmd = `${envPrefix} claude mcp add --transport http "${serverName}" "${server.baseUrl}"`;
67
+ if (server.oauthClientSecret) {
68
+ addMcpCmd += ` --header "Authorization: Bearer ${server.oauthClientSecret}"`;
69
+ }
70
+ if (server.oauthClientId) {
71
+ addMcpCmd += ` --header "X-Client-ID: ${server.oauthClientId}"`;
72
+ }
73
+ const addResult = await sandbox.executeCommand(`sh -c "${addMcpCmd.replace(/"/g, '\\"')}"`);
74
+ if (addResult.exitCode !== 0) {
75
+ // Log error but continue
76
+ console.warn(`Failed to add MCP server ${serverName}: ${addResult.stderr}`);
77
+ }
78
+ }
79
+ }
80
+ }
81
+ // Verify installation
82
+ const verifyResult = await sandbox.executeCommand(`ANTHROPIC_API_KEY=${apiKey} claude --version`);
83
+ if (verifyResult.exitCode !== 0) {
84
+ return {
85
+ success: true,
86
+ binaryPath,
87
+ error: 'Installation completed but verification failed',
88
+ };
89
+ }
90
+ }
91
+ return { success: true, binaryPath };
92
+ }
93
+ catch (error) {
94
+ return {
95
+ success: false,
96
+ error: error instanceof Error ? error.message : 'Unknown error during Claude binary installation',
97
+ };
98
+ }
99
+ }
100
+ /**
101
+ * Install Codex CLI binary in sandbox
102
+ */
103
+ export async function installCodexBinary(sandbox, apiKey) {
104
+ try {
105
+ // Check if binary already exists
106
+ const checkResult = await sandbox.executeCommand('which codex');
107
+ if (checkResult.exitCode === 0 && checkResult.stdout?.toString().includes('codex')) {
108
+ const pathResult = await sandbox.executeCommand('which codex');
109
+ const binaryPath = pathResult.stdout?.toString().trim() || '/usr/local/bin/codex';
110
+ return { success: true, binaryPath };
111
+ }
112
+ // Install Codex CLI
113
+ const installResult = await sandbox.executeCommand('npm install -g @openai/codex');
114
+ if (installResult.exitCode !== 0) {
115
+ return {
116
+ success: false,
117
+ error: `Failed to install Codex CLI: ${installResult.stderr?.toString() || 'Unknown error'}`,
118
+ };
119
+ }
120
+ // Get binary path
121
+ const pathResult = await sandbox.executeCommand('which codex');
122
+ const binaryPath = pathResult.stdout?.toString().trim() || '/usr/local/bin/codex';
123
+ // Configure authentication if API key provided
124
+ if (apiKey) {
125
+ // Codex uses environment variable
126
+ // The API key should be set in the sandbox environment
127
+ // This is typically done via SandboxConfig.env
128
+ }
129
+ return { success: true, binaryPath };
130
+ }
131
+ catch (error) {
132
+ return {
133
+ success: false,
134
+ error: error instanceof Error ? error.message : 'Unknown error during Codex binary installation',
135
+ };
136
+ }
137
+ }
138
+ /**
139
+ * Install OpenCode CLI binary in sandbox
140
+ */
141
+ export async function installOpenCodeBinary(sandbox, apiKeys, mcpServers) {
142
+ try {
143
+ // Check if binary already exists
144
+ const checkResult = await sandbox.executeCommand('which opencode');
145
+ if (checkResult.exitCode === 0 && checkResult.stdout?.toString().includes('opencode')) {
146
+ const pathResult = await sandbox.executeCommand('which opencode');
147
+ const binaryPath = pathResult.stdout?.toString().trim();
148
+ // If not in PATH, try npm bin
149
+ if (!binaryPath) {
150
+ const npmBinResult = await sandbox.executeCommand('npm bin -g');
151
+ if (npmBinResult.exitCode === 0 && npmBinResult.stdout) {
152
+ const globalBinPath = npmBinResult.stdout.toString().trim();
153
+ return { success: true, binaryPath: `${globalBinPath}/opencode` };
154
+ }
155
+ }
156
+ return { success: true, binaryPath: binaryPath || '/usr/local/bin/opencode' };
157
+ }
158
+ // Install OpenCode CLI
159
+ const installResult = await sandbox.executeCommand('npm install -g opencode-ai');
160
+ if (installResult.exitCode !== 0) {
161
+ return {
162
+ success: false,
163
+ error: `Failed to install OpenCode CLI: ${installResult.stderr?.toString() || 'Unknown error'}`,
164
+ };
165
+ }
166
+ // Get binary path (may need to check npm bin)
167
+ let binaryPath;
168
+ const pathResult = await sandbox.executeCommand('which opencode');
169
+ if (pathResult.exitCode === 0 && pathResult.stdout) {
170
+ binaryPath = pathResult.stdout.toString().trim();
171
+ }
172
+ else {
173
+ // Try npm bin path
174
+ const npmBinResult = await sandbox.executeCommand('npm bin -g');
175
+ if (npmBinResult.exitCode === 0 && npmBinResult.stdout) {
176
+ const globalBinPath = npmBinResult.stdout.toString().trim();
177
+ binaryPath = `${globalBinPath}/opencode`;
178
+ }
179
+ }
180
+ if (!binaryPath) {
181
+ return {
182
+ success: false,
183
+ error: 'OpenCode CLI installed but binary path could not be determined',
184
+ };
185
+ }
186
+ // Configure authentication if API keys provided
187
+ if (apiKeys) {
188
+ if (apiKeys.openai) {
189
+ // Use sh -c to properly pipe the API key
190
+ await sandbox.executeCommand(`sh -c 'echo "${apiKeys.openai}" | ${binaryPath} auth add openai'`);
191
+ }
192
+ if (apiKeys.anthropic) {
193
+ await sandbox.executeCommand(`sh -c 'echo "${apiKeys.anthropic}" | ${binaryPath} auth add anthropic'`);
194
+ }
195
+ }
196
+ // Configure MCP servers if provided
197
+ if (mcpServers && mcpServers.length > 0) {
198
+ const opencodeConfig = {
199
+ $schema: 'https://opencode.ai/config.json',
200
+ mcp: {},
201
+ };
202
+ for (const server of mcpServers) {
203
+ const serverName = server.name.toLowerCase().replace(/[^a-z0-9]/g, '-');
204
+ if (server.type === 'local' && server.command) {
205
+ const commandParts = server.command.trim().split(/\s+/);
206
+ opencodeConfig.mcp[serverName] = {
207
+ type: 'local',
208
+ command: commandParts,
209
+ enabled: true,
210
+ ...(server.env ? { environment: server.env } : {}),
211
+ };
212
+ }
213
+ else if (server.type === 'remote' && server.baseUrl) {
214
+ const headers = {};
215
+ if (server.oauthClientSecret) {
216
+ headers.Authorization = `Bearer ${server.oauthClientSecret}`;
217
+ }
218
+ if (server.oauthClientId) {
219
+ headers['X-Client-ID'] = server.oauthClientId;
220
+ }
221
+ opencodeConfig.mcp[serverName] = {
222
+ type: 'remote',
223
+ url: server.baseUrl,
224
+ enabled: true,
225
+ ...(Object.keys(headers).length > 0 ? { headers } : {}),
226
+ };
227
+ }
228
+ }
229
+ // Write config file using writeFile
230
+ const configContent = JSON.stringify(opencodeConfig, null, 2);
231
+ await sandbox.executeCommand('mkdir -p $HOME/.opencode');
232
+ try {
233
+ // Try to expand $HOME first
234
+ const homeResult = await sandbox.executeCommand('echo $HOME');
235
+ const homeDir = homeResult.stdout?.toString().trim() || '/home/user';
236
+ await sandbox.writeFile(`${homeDir}/.opencode/config.json`, configContent);
237
+ }
238
+ catch (error) {
239
+ // Fallback to shell command if writeFile fails
240
+ const configCmd = `cat > $HOME/.opencode/config.json << 'EOF'\n${configContent}\nEOF`;
241
+ await sandbox.executeCommand(`sh -c "${configCmd.replace(/"/g, '\\"')}"`);
242
+ }
243
+ }
244
+ return { success: true, binaryPath };
245
+ }
246
+ catch (error) {
247
+ return {
248
+ success: false,
249
+ error: error instanceof Error ? error.message : 'Unknown error during OpenCode binary installation',
250
+ };
251
+ }
252
+ }
253
+ /**
254
+ * Install agent binary based on agent type
255
+ */
256
+ export async function installAgentBinary(agentType, sandbox, options) {
257
+ switch (agentType) {
258
+ case 'claude':
259
+ return installClaudeBinary(sandbox, options?.apiKeys?.ANTHROPIC_API_KEY, options?.model, options?.mcpServers);
260
+ case 'codex':
261
+ return installCodexBinary(sandbox, options?.apiKeys?.OPENAI_API_KEY || options?.apiKeys?.AI_GATEWAY_API_KEY);
262
+ case 'opencode':
263
+ return installOpenCodeBinary(sandbox, {
264
+ openai: options?.apiKeys?.OPENAI_API_KEY,
265
+ anthropic: options?.apiKeys?.ANTHROPIC_API_KEY,
266
+ }, options?.mcpServers);
267
+ case 'intella-lite':
268
+ // No binary needed for intella-lite
269
+ return { success: true };
270
+ default:
271
+ return {
272
+ success: false,
273
+ error: `Unknown agent type: ${agentType}`,
274
+ };
275
+ }
276
+ }
277
+ //# sourceMappingURL=agent-installers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-installers.js","sourceRoot":"","sources":["../../src/sandbox/agent-installers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { AgentType, ISandboxProvider, AgentConfig, McpServerConfig, SandboxAgentExecutionOptions } from '../types.js';
2
+ import { type BinaryInstallResult } from './agent-installers.js';
3
+ /**
4
+ * Result of agent setup in sandbox
5
+ */
6
+ export interface AgentSetupResult {
7
+ binaryPath?: string;
8
+ cwd?: string;
9
+ config: AgentConfig;
10
+ }
11
+ /**
12
+ * Sandbox Agent Setup
13
+ * Handles installation and configuration of agent binaries in sandboxes
14
+ */
15
+ export declare class SandboxAgentSetup {
16
+ /**
17
+ * Setup agent in sandbox (install binary and configure)
18
+ */
19
+ setupAgentInSandbox(agentType: AgentType, sandbox: ISandboxProvider, options?: SandboxAgentExecutionOptions): Promise<AgentSetupResult>;
20
+ /**
21
+ * Install agent binary in sandbox
22
+ */
23
+ installAgentBinary(agentType: AgentType, sandbox: ISandboxProvider, options?: {
24
+ apiKeys?: Record<string, string>;
25
+ model?: string;
26
+ mcpServers?: McpServerConfig[];
27
+ }): Promise<BinaryInstallResult>;
28
+ }
29
+ //# sourceMappingURL=agent-setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-setup.d.ts","sourceRoot":"","sources":["../../src/sandbox/agent-setup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,4BAA4B,EAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAsB,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAGrF;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACG,mBAAmB,CACvB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE,4BAA4B,GACrC,OAAO,CAAC,gBAAgB,CAAC;IAwD5B;;OAEG;IACG,kBAAkB,CACtB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;KAChC,GACA,OAAO,CAAC,mBAAmB,CAAC;CAGhC"}
@@ -0,0 +1,63 @@
1
+ import { installAgentBinary } from './agent-installers.js';
2
+ import { agentRequiresBinary, validateApiKeys } from './config.js';
3
+ /**
4
+ * Sandbox Agent Setup
5
+ * Handles installation and configuration of agent binaries in sandboxes
6
+ */
7
+ export class SandboxAgentSetup {
8
+ /**
9
+ * Setup agent in sandbox (install binary and configure)
10
+ */
11
+ async setupAgentInSandbox(agentType, sandbox, options) {
12
+ const config = {
13
+ model: options?.model,
14
+ };
15
+ // If agent requires binary, install it
16
+ if (agentRequiresBinary(agentType)) {
17
+ // Validate API keys
18
+ const validation = validateApiKeys(agentType, options?.apiKeys);
19
+ if (!validation.valid) {
20
+ throw new Error(`Missing required API keys for ${agentType}: ${validation.missing.join(', ')}`);
21
+ }
22
+ // Install binary
23
+ const installResult = await installAgentBinary(agentType, sandbox, {
24
+ apiKeys: options?.apiKeys,
25
+ model: options?.model,
26
+ mcpServers: options?.mcpServers,
27
+ });
28
+ if (!installResult.success) {
29
+ throw new Error(`Failed to install ${agentType} binary: ${installResult.error || 'Unknown error'}`);
30
+ }
31
+ // Configure SDK with binary path
32
+ if (installResult.binaryPath) {
33
+ config.executablePath = installResult.binaryPath;
34
+ }
35
+ // Set working directory to sandbox root (if available)
36
+ // Most sandboxes use /home/user or similar as default
37
+ config.cwd = '/home/user';
38
+ // Configure MCP servers if provided (for agents that support it)
39
+ if (options?.mcpServers && (agentType === 'claude' || agentType === 'codex' || agentType === 'opencode')) {
40
+ config.mcpServers = options.mcpServers;
41
+ }
42
+ }
43
+ else {
44
+ // For agents that don't need binaries, just configure API keys
45
+ if (options?.apiKeys) {
46
+ // API keys are typically set via environment variables in sandbox config
47
+ // The SDK will use them from the environment
48
+ }
49
+ }
50
+ return {
51
+ binaryPath: agentRequiresBinary(agentType) ? config.executablePath : undefined,
52
+ cwd: config.cwd,
53
+ config,
54
+ };
55
+ }
56
+ /**
57
+ * Install agent binary in sandbox
58
+ */
59
+ async installAgentBinary(agentType, sandbox, options) {
60
+ return installAgentBinary(agentType, sandbox, options);
61
+ }
62
+ }
63
+ //# sourceMappingURL=agent-setup.js.map