Skip to content

5.10a SDK 基础

💡 一句话总结:使用 OpenCode SDK 快速集成 AI 能力到你的应用。


学完你能做什么

  • 能安装和使用 SDK
  • 能创建对话和会话
  • 能操作文件和工具
  • 能处理异步响应

🎒 开始前的准备

确保你已经完成以下事项:

  • [ ] 了解 JavaScript/TypeScript 基础
  • [ ] 有 Node.js 开发经验
  • [ ] 获取 API 密钥

安装

Node.js

bash
npm install @opencode/sdk

Python

bash
pip install opencode-sdk

Go

bash
go get github.com/opencode/opencode-sdk-go

快速开始

JavaScript/TypeScript

typescript
import { OpenCode } from "@opencode/sdk";

const client = new OpenCode({
  apiKey: process.env.OPENCODE_API_KEY,
});

// 发送消息
const response = await client.chat.send({
  message: "你好,请介绍一下你自己",
});

console.log(response.message);

Python

python
from opencode import OpenCode

client = OpenCode(api_key="your-api-key")

response = client.chat.send(
    message="你好,请介绍一下你自己"
)

print(response.message)

核心功能

对话

typescript
// 创建会话
const session = await client.sessions.create({
  title: "我的项目",
  agent: "developer",
});

// 发送消息
const response = await session.send({
  message: "帮我创建一个 React 组件",
});

// 流式响应
const stream = await session.send({
  message: "解释一下这段代码",
  stream: true,
});

for await (const chunk of stream) {
  console.log(chunk);
}

文件操作

typescript
// 读取文件
const content = await client.files.read("src/App.tsx");

// 写入文件
await client.files.write("src/NewFile.ts", content);

// 列出目录
const files = await client.files.list("src");

// 搜索文件
const results = await client.files.search("**/*.tsx");

工具调用

typescript
// 执行 Bash 命令
const result = await client.tools.execute({
  name: "bash",
  arguments: {
    command: "npm install",
  },
});

// 使用 LSP 工具
const symbols = await client.tools.execute({
  name: "lsp_symbols",
  arguments: {
    filePath: "src/App.tsx",
    scope: "document",
  },
});

配置选项

typescript
const client = new OpenCode({
  apiKey: process.env.OPENCODE_API_KEY,
  
  // API 配置
  baseUrl: "https://api.opencode.ai/v1",
  timeout: 60000,
  
  // 模型配置
  model: "glm-4.7",
  temperature: 0.7,
  maxTokens: 16384,
  
  // 会话配置
  autoSave: true,
  saveInterval: 30000,
  
  // 调试配置
  debug: false,
  logger: console,
});

检查点 ✅

全部通过才能继续

  • [ ] 能安装 SDK
  • [ ] 能创建客户端
  • [ ] 能发送消息
  • [ ] 能操作文件

本课小结

你学会了:

  1. SDK 安装
  2. 快速开始
  3. 对话功能
  4. 文件操作
  5. 工具调用
  6. 配置选项

下一课预告

下一课我们将学习 SDK API 参考。


📚 更多完整模板Prompt 模板库