Skip to content

附录 B:关键类型与接口速查

本附录列出阅读源码时最常遇到的类型和接口,以及它们的定义位置。

配置类型

类型定义位置说明
OpenClawConfigsrc/config/types.ts主配置类型
AgentConfigsrc/config/types.agents.tsAgent 配置
ChannelConfigsrc/config/types.channels.ts渠道配置
GatewayConfigsrc/config/types.gateway.ts (推测)Gateway 配置
BrowserConfigsrc/config/types.browser.ts浏览器配置
SessionEntrysrc/config/sessions/types.tsSession 条目

Agent 类型

类型定义位置说明
PromptModesrc/agents/system-prompt.tsPrompt 模式(full/minimal/none)
ThinkLevelsrc/auto-reply/thinking.ts思考级别
ToolDefinitionsrc/agents/pi-tools.schema.ts工具定义
EmbeddedContextFilesrc/agents/pi-embedded-helpers.ts上下文文件
EmbeddedSandboxInfosrc/agents/pi-embedded-runner/types.ts沙箱信息

Plugin SDK 类型

类型定义位置说明
ChannelMetasrc/plugin-sdk/core.ts渠道元数据
ChannelCapabilitiessrc/plugin-sdk/core.ts渠道能力
ChannelSetupAdaptersrc/plugin-sdk/core.ts初始化适配器
ChannelMessagingAdaptersrc/plugin-sdk/core.ts消息适配器
ChannelGroupAdaptersrc/plugin-sdk/core.ts群组适配器
ChannelPairingAdaptersrc/plugin-sdk/core.ts配对适配器
ChannelOutboundContextsrc/plugin-sdk/core.ts出站上下文
ChannelSendResultsrc/plugin-sdk/channel-send-result.ts发送结果
InboundEnvelopesrc/plugin-sdk/inbound-envelope.ts入站消息

消息处理类型

类型定义位置说明
InboundEnvelopesrc/auto-reply/envelope.ts入站消息封装
ReplyPayloadsrc/plugin-sdk/reply-payload.ts回复负载
MediaAttachmentsrc/media/媒体附件

基础设施类型

类型定义位置说明
CliDepssrc/cli/deps.tsCLI 依赖注入
RuntimeEnvsrc/runtime.ts运行时环境
PortInUseErrorsrc/infra/ports.ts端口占用错误

常见模式

依赖注入

typescript
// OpenClaw 的 DI 模式:通过 deps 参数传递依赖
function someCommand(deps: CliDeps) {
  const config = deps.loadConfig();
  // ...
}

TypeBox Schema

typescript
// 配置校验使用 TypeBox
import { Type } from '@sinclair/typebox';

const ChannelSchema = Type.Object({
  botToken: Type.String(),
  allowFrom: Type.Optional(Type.Array(Type.String())),
});

异步工具调用

typescript
// 工具实现的标准签名
async function execute(
  params: ToolParams,
  context: ToolContext
): Promise<ToolResult> {
  // ...
  return { content: "result" };
}

缩略语表

缩写全称说明
Pi-Agent 运行时的内部代号
A2UIAgent to UICanvas 协议
DMDirect Message私聊消息
WSWebSocket通信协议
CDPChrome DevTools Protocol浏览器控制协议
TTSText to Speech文本转语音
TCCTransparency Consent and ControlmacOS 权限系统
PTTPush to Talk按住说话

基于 MIT 协议发布