{"_id":"@agento-nexus/sdk","_rev":"2-f5b062730b46d2a0b74c3a3371e7bea6","name":"@agento-nexus/sdk","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@agento-nexus/sdk","version":"0.1.0","license":"MIT","_id":"@agento-nexus/sdk@0.1.0","maintainers":[{"name":"habitusnet","email":"devteam1@habitusnet.ch"}],"homepage":"https://github.com/agento-nexus/sdk#readme","bugs":{"url":"https://github.com/agento-nexus/sdk/issues"},"bin":{"agento-sdk":"dist/cli/bin.js"},"dist":{"shasum":"8117d49fe6d8f0314b66e3a23c51001636d36f5e","tarball":"https://registry.npmjs.org/@agento-nexus/sdk/-/sdk-0.1.0.tgz","fileCount":9,"integrity":"sha512-ofzeequYRvhWYk+NnxWjng9c8esuXLPsuOOv9tgd8fX+2Wvvg491YHs2OF46unEdF9wIJhcpTSzMDqW/tlfI5g==","signatures":[{"sig":"MEQCIFRjJzBXGy906okVyCAVN5qCP4qtyCfh0C0Ta17jI9DsAiBEYPkn2A9U+HqrmJi2PAIIHfZ3HnVWz1XAWY/ZjwQgbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100603},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"90c4341c2350c20d001f662d2c767ef8c6a95806","scripts":{"dev":"tsup --watch","lint":"tsc --noEmit","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"habitusnet","email":"devteam1@habitusnet.ch"},"repository":{"url":"git+https://github.com/agento-nexus/sdk.git","type":"git"},"_npmVersion":"11.11.0","description":"Agent OS in Cloud Sandboxes — OpenFang + E2B + Claude Code","directories":{},"_nodeVersion":"25.8.1","dependencies":{"e2b":"^1.2.0","chalk":"^5.4.1","commander":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","vitest":"^3.0.0","typescript":"^5.7.3","@types/node":"^22.12.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0_1773652263836_0.9454615591224553","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@agento-nexus/sdk","version":"0.1.1","description":"Agent OS in Cloud Sandboxes — OpenFang + E2B + Claude Code","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","bin":{"agento-sdk":"dist/cli/bin.js"},"exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"tsup","dev":"tsup --watch","typecheck":"tsc --noEmit","test":"vitest run","test:watch":"vitest","lint":"tsc --noEmit"},"dependencies":{"e2b":"^1.2.0","commander":"^13.1.0","chalk":"^5.4.1"},"devDependencies":{"typescript":"^5.7.3","tsup":"^8.4.0","vitest":"^3.0.0","@types/node":"^22.12.0"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/agento-nexus/sdk.git"},"engines":{"node":">=20"},"gitHead":"90c4341c2350c20d001f662d2c767ef8c6a95806","_id":"@agento-nexus/sdk@0.1.1","bugs":{"url":"https://github.com/agento-nexus/sdk/issues"},"homepage":"https://github.com/agento-nexus/sdk#readme","_nodeVersion":"25.8.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-OYeUcROEHHYyFAtT1+7tT07JjaqFMyoi2rYucqlGXHyd6f/h5aLm/63TSZWEJcAx/vEHKKnAfmrioj34KJ5CWg==","shasum":"559369f65ab638f902bab088d8c5e1503c17e7af","tarball":"https://registry.npmjs.org/@agento-nexus/sdk/-/sdk-0.1.1.tgz","fileCount":10,"unpackedSize":105215,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDPXsfAlkbcNplhG+oeSFRxAkFFxFkzvWExzlF9LOcvJAiEA0LNDW/sX6NK5RkZryBbw6QfOrE4KCVaxByDNHOPVWhM="}]},"_npmUser":{"name":"habitusnet","email":"devteam1@habitusnet.ch"},"directories":{},"maintainers":[{"name":"habitusnet","email":"devteam1@habitusnet.ch"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.1.1_1773653136415_0.5770359860524492"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-16T09:11:03.688Z","modified":"2026-03-16T09:25:36.680Z","0.1.0":"2026-03-16T09:11:03.979Z","0.1.1":"2026-03-16T09:25:36.556Z"},"bugs":{"url":"https://github.com/agento-nexus/sdk/issues"},"license":"MIT","homepage":"https://github.com/agento-nexus/sdk#readme","repository":{"type":"git","url":"git+https://github.com/agento-nexus/sdk.git"},"description":"Agent OS in Cloud Sandboxes — OpenFang + E2B + Claude Code","maintainers":[{"name":"habitusnet","email":"devteam1@habitusnet.ch"}],"readme":"# @agento-nexus/sdk\n\nAgent OS in Cloud Sandboxes. Run AI agents with full tool access in isolated E2B sandboxes, orchestrate multi-agent workflows, and bridge Claude Code into cloud environments.\n\n## Install\n\n```bash\nnpm install @agento-nexus/sdk\n```\n\nRequires Node >= 20. ESM-only.\n\n## Core Concepts\n\n### FangBox\n\nAn isolated cloud sandbox with an OpenFang agent daemon and Claude Code pre-installed. Each FangBox is a full Linux environment where agents can execute code, use tools, and run autonomously.\n\n```typescript\nimport { createFangBox } from '@agento-nexus/sdk'\n\nconst box = await createFangBox({\n  envs: { ANTHROPIC_API_KEY: process.env.ANTHROPIC_API_KEY },\n  timeout: 300, // seconds\n})\n\n// Deploy an agent using a Hand manifest\nawait box.client.deployHand({\n  name: 'researcher',\n  model: 'claude-sonnet-4-6',\n  system_prompt: 'You are a research analyst...',\n  tools: ['web_search', 'file_read', 'file_write'],\n})\n\n// Message the agent\nconst response = await box.client.message('researcher', {\n  role: 'user',\n  content: 'Analyze the competitive landscape for AI code assistants',\n})\n\nconsole.log(response.content)\n\n// Clean up\nawait box.close()\n```\n\n### ClaudeBridge\n\nExecute Claude Code prompts directly inside a sandbox — giving Claude full access to the sandbox filesystem, terminal, and tools.\n\n```typescript\nconst result = await box.claudeBridge.execute({\n  prompt: 'Create a REST API with Express that serves user data from a SQLite database',\n  outputFormat: 'json',\n  cwd: '/home/user/project',\n})\n\nconsole.log(result.output)  // Claude's response\nconsole.log(result.exitCode) // 0 on success\n```\n\n### Fleet\n\nOrchestrate multi-agent workflows as directed acyclic graphs. Each step runs in its own sandbox with dependency resolution and parallel execution.\n\n```typescript\nimport { Fleet } from '@agento-nexus/sdk'\n\nconst fleet = new Fleet({ maxConcurrency: 3 })\n\nconst result = await fleet.run({\n  name: 'research-and-report',\n  steps: [\n    {\n      id: 'research',\n      hand: { name: 'researcher', system_prompt: '...' },\n      prompt: 'Research AI market trends for 2026',\n    },\n    {\n      id: 'analyze',\n      hand: { name: 'analyst', system_prompt: '...' },\n      prompt: 'Analyze the research findings',\n      dependsOn: ['research'],\n    },\n    {\n      id: 'report',\n      hand: { name: 'writer', system_prompt: '...' },\n      prompt: 'Write an executive report from the analysis',\n      dependsOn: ['analyze'],\n    },\n  ],\n})\n\nconsole.log(result.steps.report.output)\n```\n\n### TemplateBuilder\n\nBuild custom E2B sandbox templates with pre-installed tools and configurations.\n\n```typescript\nimport { TemplateBuilder } from '@agento-nexus/sdk'\n\nconst template = new TemplateBuilder({\n  base: 'openfang-claude',\n  packages: ['postgresql', 'redis'],\n  files: { '/etc/openfang/config.toml': configContent },\n})\n\nawait template.build()\n```\n\n## Events\n\nBoth FangBox and Fleet emit typed events for monitoring:\n\n```typescript\nbox.events.on(event => {\n  if (event.type === 'agent:message') {\n    console.log(`[${event.agentName}]: ${event.content}`)\n  }\n})\n\nfleet.events.on(event => {\n  if (event.type === 'step:complete') {\n    console.log(`Step ${event.stepId} finished in ${event.durationMs}ms`)\n  }\n})\n```\n\n## CLI\n\n```bash\nnpx @agento-nexus/sdk --help\n```\n\n## API Reference\n\n### Exports\n\n| Export | Description |\n|--------|-------------|\n| `FangBox` | Sandbox wrapper with agent daemon + Claude Code |\n| `createFangBox(config?)` | Create and initialize a FangBox |\n| `OpenFangClient` | HTTP client for the OpenFang daemon API |\n| `ClaudeBridge` | Execute Claude Code inside sandboxes |\n| `Fleet` | DAG workflow orchestrator across multiple sandboxes |\n| `TemplateBuilder` | Build custom sandbox templates |\n| `retry(fn, opts?)` | Retry utility with exponential backoff |\n| `TypedEmitter` | Type-safe event emitter |\n| `Logger` | Structured logger |\n\n### Types\n\n| Type | Description |\n|------|-------------|\n| `FangBoxConfig` | Sandbox creation options |\n| `HandManifest` | Agent definition (name, model, system prompt, tools) |\n| `AgentInfo` | Running agent status |\n| `AgentMessage` | Conversation message |\n| `AgentResponse` | Agent reply |\n| `ClaudeCodeRequest` | Claude Code execution options |\n| `ClaudeCodeResult` | Claude Code execution output |\n| `WorkflowDefinition` | Fleet workflow DAG |\n| `WorkflowStep` | Single step in a workflow |\n| `StepResult` | Output of a completed step |\n| `WorkflowResult` | Full workflow execution result |\n\n## Requirements\n\n- Node.js >= 20\n- E2B API key (`E2B_API_KEY`)\n- Anthropic API key for Claude Code (`ANTHROPIC_API_KEY`)\n\n## License\n\nMIT\n","readmeFilename":"README.md"}