一个通过WebSocket运行Claude Agent(Claude Code)的沙盒服务器,实现与Claude实时双向通信。
一分钟了解#
Claude Agent SDK WebSocket服务器是一个将Claude Agent SDK封装并通过WebSocket实现实时双向通信的工具。它允许你在E2B沙盒环境中部署服务器,并通过TypeScript客户端库与之连接。这个项目特别适合需要实时交互和代码执行能力的Claude应用开发。
核心价值:将Claude Agent部署在隔离环境中,通过WebSocket实现实时交互,提供安全可控的AI代码执行能力。
快速上手#
安装难度:中 - 需要配置API密钥并理解基本的E2B概念
# 1. 设置环境变量
echo "ANTHROPIC_API_KEY=sk-ant-your-api-key-here" >> .env
echo "E2B_API_KEY=e2b_your-api-key-here" >> .env
# 2. 安装依赖
bun install
# 3. 构建E2B镜像
bun run build:e2b
# 4. 安装客户端库
npm install @dzhng/claude-agent
适合我的场景吗?
- ✅ 实时交互应用:需要与Claude进行实时对话和代码执行的场景
- ✅ 安全代码执行:需要在隔离环境中执行代码的应用
- ✅ 自定义AI助手:需要基于Claude构建特定功能助手的开发者
- ❌ 简单聊天机器人:不需要代码执行能力的简单对话应用
- ❌ 纯文本处理:不需要实时交互和工具调用的文本处理任务
核心能力#
1. 沙盒环境 - 安全隔离#
- 在E2B沙盒环境中运行Claude Agent,确保代码执行的安全性
- 每个连接都有独立的执行环境,避免资源冲突 实际价值:可以安全地执行任意代码而不会影响宿主系统
2. 实时双向通信 - 即时交互#
- 通过WebSocket实现与Claude的实时双向通信
- 支持即时消息收发和流式响应 实际价值:提供接近实时的用户体验,无需等待完整响应
3. 可配置系统提示 - 自定义行为#
- 支持自定义系统提示和预设模板
- 可配置允许使用的工具和模型 实际价值:根据应用需求定制Claude的行为和能力范围
4. 中断支持 - 控制执行流程#
- 支持发送中断消息停止当前操作
- 提供对AI执行流程的实时控制 实际价值:能够及时纠正错误或改变AI的行为方向
5. 消息队列处理 - 保证可靠性#
- 实现消息队列机制,确保消息按顺序处理
- 支持会话管理和状态维护 实际价值:确保复杂交互场景下的消息可靠传递和处理
技术栈与集成#
开发语言:TypeScript, HTML 运行环境:Bun 主要依赖:E2B SDK, Anthropic SDK, WebSocket API 集成方式:客户端库 / API / WebSocket
生态与扩展#
- 插件/扩展:可通过修改服务器代码添加自定义功能
- 集成能力:支持自定义E2B模板,可扩展系统包和启动脚本
维护状态#
- 开发活跃度:项目有明确的更新计划和文档,维护状况良好
- 最近更新:最近有新功能添加和文档更新
- 社区响应:有示例代码和测试客户端支持,社区反馈积极
商用与许可#
许可证:MIT
- ✅ 商用:允许商业使用
- ✅ 修改:允许修改和分发
- ⚠️ 限制:需要包含原始许可证和版权声明
文档与学习资源#
- 文档质量:全面
- 官方文档:https://github.com/dzhng/claude-agent-server
- 示例代码:提供客户端和服务器端示例