Open Crab
For Developers

开发者中心

Open Crab 为开发者提供完整的工具链:标准化的 SDK、清晰的 API 契约、 类型化的协议接口,以及可扩展的插件开发框架。

快速开始

五分钟接入你的第一个智能体

安装 SDK

通过包管理器安装 Open Crab 提供的 SDK 包,选择与你项目匹配的运行时版本

初始化客户端

使用本地生成的令牌或设备签名创建加密通道,与核心引擎建立安全连接

订阅消息流

监听实时消息事件、推理过程事件与系统通知事件,构建响应式交互

发布能力

将你的服务封装为标准插件,让智能体能够在对话中调用你的能力

核心 API

类型化的契约,清晰的语义

📨

消息 API

发送、接收与流式传输消息的标准接口,统一处理文本、媒体与结构化内容

同步 流式 结构化
🧠

推理 API

调用底层语言模型完成推理任务,支持多种主流模型与本地推理引擎

多模型 工具调用 流式响应
💾

记忆 API

写入与检索长期记忆内容,支持语义搜索与关键词搜索的混合检索

语义搜索 持久化 多语言
🔌

工具 API

注册自定义工具让智能体在对话中调用,支持异步执行与结构化参数

函数式 异步 类型安全
🔐

认证 API

基于作用域的权限管理,支持令牌、密码与设备签名多种认证方式

多方式 作用域 审计
📊

可观测 API

获取系统运行指标、事件日志与健康状态,支持自定义监控接入

指标 日志 追踪

SDK 与语言绑定

覆盖主流编程语言,持续扩展中

🟦

TypeScript / JavaScript

官方 SDK,支持浏览器与 Node.js 运行时,与 Web Components 无缝集成

🐍

Python

适用于服务端集成与数据科学场景,提供同步与异步双版本客户端

Java / Kotlin

企业级应用集成首选,完整的 JVM 生态支持

🦀

Rust

追求极致性能与内存安全场景下的原生绑定

🐹

Go

云原生与微服务场景下的轻量级集成

🌐

通用 HTTP

基于 OpenAPI 规范的 REST 接口,任何能发送 HTTP 请求的语言均可调用

代码示例

一目了然的接入方式

发送一条消息

// 初始化客户端
const client = new OpenCrabClient({
  endpoint: 'wss://gateway.local',
  token: process.env.OPEN_CRAB_TOKEN
});

// 订阅消息流
client.on('message', (msg) => {
  console.log(`收到: ${msg.content}`);
});

// 发送消息
await client.send({
  channel: 'chat-platform-a',
  content: '你好,Open Crab'
});

注册一个工具

// 让智能体能够调用你的服务
client.registerTool({
  name: 'query_database',
  description: '查询业务数据库',
  parameters: {
    sql: { type: 'string', required: true }
  },
  execute: async ({ sql }) => {
    return await db.query(sql);
  }
});

调用长期记忆

// 写入记忆
await client.memory.write({
  content: '用户在 2026-06-15 询问过项目进度',
  tags: ['项目', '进度']
});

// 语义检索
const results = await client.memory.search({
  query: '最近的项目沟通',
  limit: 5
});

最佳实践

来自真实工程经验的指导原则

📐

接口先行

先定义清晰的类型契约,再实现具体逻辑,有助于团队协作与长期演进

🔄

幂等设计

让重复执行产生相同结果,提升系统在网络异常下的可靠性

流式优先

对耗时操作采用流式响应,提升用户体验与系统响应感

📦

作用域隔离

插件应当拥有独立的配置、密钥与状态空间,避免相互污染

📝

可观测优先

在关键路径埋点,记录指标与日志,让问题可被定位与回溯

🛡️

安全内建

在设计阶段考虑认证、授权与审计,避免后期补丁式修补

继续探索

生态系统 →

查看可用的插件、扩展与第三方集成

加入社区 →

与其他开发者交流,获取帮助与反馈