@shareai-lab/kode-sdk
v2.7.4
Published
Event-driven, long-running AI Agent development framework with enterprise-grade persistence and context management
Readme
KODE SDK
事件驱动的长时运行 AI Agent 框架,支持企业级持久化和多 Agent 协作。
核心特性
- 事件驱动架构 - 三通道系统 (Progress/Control/Monitor) 清晰分离关注点
- 长时运行与恢复 - 七段断点机制,支持 Safe-Fork-Point 崩溃恢复
- 多 Agent 协作 - AgentPool、Room 消息、任务委派
- 企业级持久化 - 支持 SQLite/PostgreSQL,统一 WAL 日志
- 云端沙箱 - 集成 E2B 与 OpenSandbox,提供隔离的远程代码执行环境
- 可扩展生态 - MCP 工具、自定义 Provider、Skills 系统
快速开始
一键启动(安装依赖并构建):
./quickstart.sh或作为依赖安装:
npm install @shareai-lab/kode-sdk设置环境变量:
Linux / macOS
export ANTHROPIC_API_KEY=sk-...
export ANTHROPIC_MODEL_ID=claude-sonnet-4-20250514 # 可选,默认: claude-sonnet-4-20250514
export ANTHROPIC_BASE_URL=https://api.anthropic.com # 可选,默认: https://api.anthropic.comWindows (PowerShell)
$env:ANTHROPIC_API_KEY="sk-..."
$env:ANTHROPIC_MODEL_ID="claude-sonnet-4-20250514" # 可选,默认: claude-sonnet-4-20250514
$env:ANTHROPIC_BASE_URL="https://api.anthropic.com" # 可选,默认: https://api.anthropic.com最简示例:
import { Agent, AnthropicProvider, JSONStore } from '@shareai-lab/kode-sdk';
const provider = new AnthropicProvider(
process.env.ANTHROPIC_API_KEY!,
process.env.ANTHROPIC_MODEL_ID
);
const agent = await Agent.create({
provider,
store: new JSONStore('./.kode'),
systemPrompt: '你是一个乐于助人的助手。'
});
// 订阅 progress 事件
for await (const envelope of agent.subscribe(['progress'])) {
if (envelope.event.type === 'text_chunk') {
process.stdout.write(envelope.event.delta);
}
if (envelope.event.type === 'done') break;
}
await agent.send('你好!');运行示例:
npm run example:getting-started # 最简对话
npm run example:agent-inbox # 事件驱动收件箱
npm run example:approval # 工具审批流程
npm run example:room # 多Agent协作
npm run example:opensandbox # OpenSandbox 基础使用OpenSandbox 快速配置:
export OPEN_SANDBOX_API_KEY=... # 可选(仅在服务开启鉴权时需要)
export OPEN_SANDBOX_ENDPOINT=http://127.0.0.1:8080 # 可选
export OPEN_SANDBOX_IMAGE=ubuntu # 可选支持的 Provider
| Provider | 流式输出 | 工具调用 | 推理 | 文件 | |----------|---------|---------|------|------| | Anthropic | ✅ | ✅ | ✅ Extended Thinking | ✅ | | OpenAI | ✅ | ✅ | ✅ | ✅ | | Gemini | ✅ | ✅ | ✅ | ✅ |
说明:OpenAI 兼容的服务(DeepSeek、GLM、Qwen、Minimax、OpenRouter 等)可以通过
OpenAIProvider配置自定义baseURL来使用。详见 Provider 配置指南。
文档
| 章节 | 说明 | |------|------| | 入门指南 | | | 安装配置 | 环境配置与安装 | | 快速上手 | 创建第一个 Agent | | 核心概念 | 核心概念详解 | | 使用指南 | | | 事件系统 | 三通道事件系统 | | 工具系统 | 内置工具与自定义工具 | | E2B 沙箱 | E2B 云端沙箱接入 | | OpenSandbox 沙箱 | OpenSandbox 自托管沙箱接入 | | Skills 系统 | Skills 可复用提示词系统 | | Provider 配置 | 模型 Provider 配置 | | 数据库存储 | SQLite/PostgreSQL 持久化 | | 恢复与分叉 | 崩溃恢复与分支 | | 项目 | | | 贡献指南 | 提交 PR 的要求与流程 | | 参考 | | | API 参考 | 完整 API 文档 | | 示例集 | 所有示例详解 |
许可证
MIT
