ClaudeCodeSDK
SDK 主入口类,提供会话管理、工具注册和全局配置功能。
构造函数
import { ClaudeCodeSDK } from 'claude-code-sdk-ts'
const sdk = new ClaudeCodeSDK(config: SDKConfig)
配置参数
interface SDKConfig {
llm: LLMConfig // LLM 配置
permissionMode?: PermissionMode // 权限模式
permissionRules?: PermissionRule[] // 权限规则
defaultTools?: boolean | string[] // 默认工具
mcpServers?: MCPServerConfig[] // MCP 服务器
context?: ContextOptions // 上下文选项
conversation?: ConversationOptions // 对话选项
global?: GlobalOptions // 全局选项
session?: SessionConfig // 会话配置
rateLimit?: { enabled?: boolean } // 速率限制
}
方法
createSession()
创建新的会话实例:
const session = sdk.createSession()
const response = await session.send('Hello')
sendStream()
流式发送消息:
const stream = sdk.sendStream('Tell me a story')
for await (const event of stream) {
if (event.type === 'text') {
process.stdout.write(event.text)
}
}
getConfig()
获取当前配置:
const config = sdk.getConfig()
console.log(config.llm.provider) // 'anthropic'
属性
| 属性 | 类型 | 说明 |
|---|---|---|
version |
string |
SDK 版本号 |
configManager |
ConfigManager |
配置管理器 |
toolRegistry |
ToolRegistry |
工具注册表 |
hookSystem |
HookSystem |
钩子系统 |