2026 年,AI 领域已迎来一个决定性的转折点:从实验性智能向工业化执行的转变。当第一波 AI 聚焦于对话时,当前时代则由“自主行动”所定义。
随着 Claude Agent SDK 的发布,范式已从无状态 API 转向有状态、持久的运行时。开发者不再满足于仅能生成代码的智能体——他们需要能够自主执行、调试和迭代的系统。与每次请求后都会“遗忘”的传统 LLM 不同,Claude Agent SDK 现在维持着一个连续的推理循环,编写代码、实时调试并管理复杂的文件系统。
然而,一个关键缺口依然存在:基础设施。要从演示阶段迈向生产级的数字劳动力,智能体不仅需要智能——还需要安全、可扩展、高性能且经济实惠的环境来执行工作。
了解如何使用 Novita Sandbox 在生产环境中部署和托管 Claude 智能体。Novita Sandbox 是一个兼容 E2B 的云执行环境,以经济高效的企业级基础设施弥合了这一差距。
💡 准备好开始构建了吗?
Novita 提供了一个完整、生产就绪的 Claude Agent SDK 示例,包含交互式 CLI、工具实现和最佳实践。 克隆仓库 并在几分钟内运行你的第一个智能体。
核心优势:专为 Anthropic 打造
1. 真正的“零重构”迁移
Novita 提供了一个完全兼容的 Anthropic API 端点。只需更改一个 baseURL,即可为你现有的 Claude 驱动应用赋予真实的执行能力。
- 原生集成:直接使用
@anthropic-ai/sdk——无需学习新框架。 - 无缝切换:兼容所有 Beta 功能,包括
context-management和thinking模式。
import Anthropic from "@anthropic-ai/sdk";
// 只需修改 baseURL 即可无缝切换到 Novita
const anthropic = new Anthropic({
baseURL: "https://api.novita.ai/anthropic",
apiKey: process.env.NOVITA_API_KEY,
});
// 所有 Anthropic SDK 用法保持不变
const response = await anthropic.messages.create({
model: "zai-org/glm-4.7",
max_tokens: 4096,
messages: [{ role: "user", content: "Hello, World!" }],
});
2. 云端隔离的“沙盒实验室”
Novita Sandbox 提供即时启动的 Linux 环境,支持文件系统访问、网络通信和后台进程:
- 安全隔离:每个请求在独立的沙盒中运行,防止代码污染。
- 全栈能力:内置 Node.js、Python 和 Jupyter 环境,支持动态
npm和pip安装。 - 即时预览:一键公开 HTTPS 端口暴露——立即查看生成的页面。
import { Sandbox } from "novita-sandbox/code-interpreter";
// 在几秒内创建一个隔离的云环境
const sandbox = await Sandbox.create({ timeoutMs: 10 * 60 * 1000 });
// 写入文件
await sandbox.files.write("index.html", "<h1>Hello from Sandbox!</h1>");
// 启动后台服务并获取公开 URL
const handle = await sandbox.commands.run("npx http-server -p 3000", { background: true });
const publicUrl = `https://${sandbox.getHost(3000)}`;
console.log(`🌐 预览 URL: ${publicUrl}`);
3. 上下文自愈与智能感知
利用 Claude 的工具使用能力,智能体可以:
- 自适应与修复:当运行时错误发生时,智能体看到
stderr并自动重写代码。 - 优化记忆:结合
contextManagement策略,系统自动清除旧代码块以保持专注。
// 启用 context-management Beta 功能
// 参考:https://platform.claude.com/docs/en/build-with-claude/context-editing
const response = await anthropic.beta.messages.create({
model: "zai-org/glm-4.7",
max_tokens: 4096,
betas: ["context-management-2025-06-27"],
contextManagement: {
edits: [
{
type: "clear_tool_uses_20250919",
trigger: { type: "input_tokens", value: 10000 }, // 超过 10k tokens 时触发清理
keep: { type: "tool_uses", value: 2 }, // 保留最近 2 次工具调用
clear_tool_inputs: true, // 同时清除工具输入
},
],
},
tools: TOOLS,
messages: conversationHistory,
});
工作原理:当对话上下文超过设定阈值时,API 会自动清除较早的工具调用结果,同时保留最近的关键信息。这可以防止“记忆污染”导致智能体性能下降。
使用场景:无限可能
| 场景 | Novita Sandbox 带来的价值 |
|---|---|
| 交互式 Web 实验室 | 一句话生成 React/Tailwind 页面;即时预览。 |
| 智能数据分析 | 动态运行 Python,使用 Pandas 和 Matplotlib 生成图表。 |
| AI 自动化测试 | 在隔离环境中运行测试脚本;自动捕获并修复错误。 |
| 个性化 IDE 后端 | 为每个用户提供独立的云执行器——零运维开销。 |
| 自愈代码工作流 | 在闭环中测试生成的 API 代码,确保交付前正确运行。 |
快速开始:三步构建交互式智能体
无需复杂配置——Novita 让开发变得简单。
第一步:最小化安装
npm install @anthropic-ai/sdk novita-sandbox dotenv open
第二步:智能 API 密钥集成
项目包含交互式密钥引导。即使没有环境变量,程序也会在启动时提示你:
// agent_en.ts 内部逻辑
if (!agent.hasApiKey()) {
const apiKey = await promptForApiKey(rl);
agent.setApiKey(apiKey);
}
第三步:一键启动交互式 CLI
运行 npm run agent-en 进入交互模式。只需输入你的需求,兼容 Anthropic 的模型将负责生成代码、运行服务并打开浏览器。
npm run agent-en
核心代码解析
📌 工具定义:赋予 AI “物理能力”
const TOOLS: Anthropic.Beta.Messages.BetaTool[] = [
{
name: "write_file",
description: "在沙盒中创建或修改文件",
input_schema: {
type: "object",
properties: {
path: { type: "string", description: "文件路径,例如 index.html" },
content: { type: "string", description: "完整文件内容" },
},
required: ["path", "content"],
},
},
{
name: "get_preview_url",
description: "启动 Web 服务器并获取预览 URL(如果服务器已在运行,则返回现有 URL)",
input_schema: { type: "object", properties: {} },
},
];
📌 智能体循环:持续处理直至任务完成
async chat(userMessage: string): Promise<void> {
// 每次用户输入时刷新沙盒超时
await this.refreshSandboxTimeout();
this.messages.push({ role: "user", content: userMessage });
// 智能体循环——持续处理直到没有工具调用
let continueLoop = true;
while (continueLoop) {
const { response, assistantContent } = await this.streamResponse();
this.messages.push({ role: "assistant", content: assistantContent });
// 处理工具调用
const { hasToolUse, toolResults } = await this.processToolCalls(assistantContent);
if (hasToolUse && toolResults.length > 0) {
this.messages.push({ role: "user", content: toolResults });
continueLoop = true; // 存在工具调用,继续循环
} else {
continueLoop = false; // 无工具调用,结束
}
if (response.stop_reason === "end_turn") {
continueLoop = false;
}
}
}
📌 服务自愈:智能检测与自动重启
private async handleGetPreviewUrl(): Promise<string> {
// 验证进程是否实际存活
if (this.previewUrl && this.serverHandle) {
const processAlive = await this.checkServerProcessAlive();
if (!processAlive) {
console.log(`⚠️ 服务器进程已退出,正在重启...`);
this.serverHandle = null;
this.previewUrl = null;
}
}
// 启动新服务器
this.serverHandle = await this.sandbox.commands.run(
`npx -y http-server . -p ${CONFIG.serverPort} -c-1`,
{ background: true }
);
// 获取公开 URL 并执行健康检查
const host = this.sandbox.getHost(CONFIG.serverPort);
this.previewUrl = `https://${host}`;
await waitForServer(this.previewUrl, maxRetries, intervalMs);
await openBrowser(this.previewUrl);
return `预览 URL: ${this.previewUrl}`;
}
探索完整示例
Novita 提供了一个功能完整的 Claude Agent SDK 示例,包含生产就绪的代码模式。该示例演示了:
- 交互式 CLI 界面,支持流式响应
- 完整的工具实现(文件操作、代码执行、Web 服务器管理)
- 上下文管理,带自动清理
- 错误处理和重试逻辑
- 服务健康检查,带自动重启
- 多轮对话,保持持久状态
GitHub 仓库:Novita-CollabHub/examples/claude-agent
使用示例快速开始:
# 克隆仓库
git clone https://github.com/novitalabs/Novita-CollabHub.git
cd Novita-CollabHub/examples/claude-agent
# 安装依赖
npm install
# 设置你的 API 密钥
export NOVITA_API_KEY=your_api_key_here
# 运行交互式智能体
npm run agent-en
多轮对话演示
以下是一个完整的多轮对话示例,展示了智能体如何根据用户反馈迭代优化页面:
第一轮:构建一个待办事项应用
用户输入:构建一个待办事项应用

第二轮:改为星露谷物语风格
用户输入:改为星露谷物语风格

第三轮:添加更多功能
用户输入:添加更多功能

结论
在生产环境中部署 Claude Agent SDK 需要传统云平台无法提供的基础设施。Novita Sandbox 提供了一个生产就绪的基础设施,与 Claude Agent SDK 无缝集成,通过以下方式为你的智能体提供在物理世界中工作所需的“双手”:
- 兼容 E2B 的云执行环境,可与现有工具无缝集成
- 原生 Anthropic 兼容端点,零重构——只需更改 baseURL
- 安全容器隔离,用于执行不受信任的代码
- 即时预配置运行时,快速启动
- 公开 URL 暴露,用于生成的 Web 应用
- 后台进程管理,支持长时间运行的服务
立即开始构建有状态的 AI 智能体:
Novita AI 是领先的 AI 云平台,为开发者提供易于使用的 API 以及经济实惠、可靠的 GPU 基础设施,用于构建和扩展 AI 应用。
