DeepWiki 代码维基
- 原始链接:https://deepwiki.com/openclaw/openclaw
- 来源章节:7. 官方仓库与生态仓库
- 来源小节:无
- 抓取方式:jina:https://r.jina.ai/http://deepwiki.com/openclaw/openclaw
- 抓取时间:2026-04-05 13:47:10
- 状态:ok
中文内容
相关源文件
- .github/labeler.yml
- CHANGELOG.md
- apps/android/README.md
- apps/android/app/build.gradle.kts
- apps/android/app/src/play/AndroidManifest.xml
- apps/android/scripts/build-release-aab.ts
- apps/ios/Config/Version.xcconfig
- apps/ios/ShareExtension/Info.plist
- apps/ios/Sources/Info.plist
- [apps/ios/Tests/Info.plist](https://github.com/openclaw/openclaw/blob/045d5905/apps/ios/
测试/Info.plist)
- apps/ios/WatchApp/Info.plist
- apps/ios/WatchExtension/Info.plist
- apps/ios/project.yml
- apps/macos/Sources/OpenClaw/Resources/Info.plist
- [docs/. generated/config-baseline.json](https://github.com/openclaw/openclaw/blob/045d5905/docs/. generated/config-baseline.json)
- [docs/. generated/plugin-sdk-api-baseline.json](https://github.com/openclaw/openclaw/blob/045d5905/docs/. generated/plugin-sdk-api-baseline.json)
- [docs/.generate/plugin-sdk-api-baseline.jsonl](https://github.com/openclaw/openclaw/blob/045d5905/docs/. generated/plugin-sdk-api-baseline.jsonl)
- docs/.i18n/glossary.zh-CN.json
- docs/channels/groups.md
- [文档/频道
/location.md](https://github.com/openclaw/openclaw/blob/045d5905/docs/channels/location.md?plain=1)
-
[docs/start/wizard-cli-reference.md](https://github.com/openclaw/openclaw/blob/045d5905/docs/start/wizard-cli-reference.md?plain
=1)
- docs/start/wizard.md
- docs/tools/pdf.md
- docs/tools/slash-commands.md
- docs/tools/thinking.md
- docs/zh-CN/AGENTS.md
- docs/zh-CN/reference/RELEASING.md
- docs/zh-CN/start/hubs.md
- 扩展/msteams/src/monitor-handler.feedback-authz.test.ts
- 扩展/msteams/src/monitor-handler/access.ts
- [extensions/stepfun/index.ts](https://github.com/o
penclaw/openclaw/blob/045d5905/extensions/stepfun/index.ts)
- extensions/stepfun/onboard.ts
- package.json
- scripts/lib/plugin-sdk-entrypoints.json
- scripts/package-mac-app.sh
- scripts/sparkle-build.ts
- src/agents/model-fallback.run-embedded.e2e.test.ts
- src/agents/models-config.e2e-harness.ts
- src/agents/pi-embedded-runner/compact.hooks.harness.ts
- [src/agents/pi-embedded-runner/compact.hooks.test.ts](https://github.com/openclaw/openclaw/blob/045d5905/src/a
男士/pi-embedded-runner/compact.hooks.test.ts)
- src/agents/pi-embedded-runner/compact.ts
- src/agents/pi-embedded-runner/run.incomplete-turn.test.ts
- src/agents/pi-embedded-runner/run.overflow-compaction.harness.ts
- src/agents/pi-embedded-runner/run.overflow-compaction.loop.test.ts
- src/agents/pi-embedded-runner/run.overflow-compaction.test.ts
- src/agents/pi-embedded-runner/run.timeout-triggered-compaction.test.ts
- [src/agents/pi-embedded-runner/run.ts](https://github.com/openclaw/openc
法律/blob/045d5905/src/agents/pi-embedded-runner/run.ts)
- src/agents/pi-embedded-runner/run/attempt.prompt-helpers.ts
- src/agents/pi-embedded-runner/run/attempt.sessions-yield.ts
- src/agents/pi-embedded-runner/run/attempt.test.ts
- src/agents/pi-embedded-runner/run/attempt.tool-call-argument-repair.ts
- src/agents/pi-embedded-runner/run/attempt.tool-call-normalization.ts
- src/agents/pi-embedded-runner/run/attempt.ts
- [src/agents/pi-embedded-runner/run/helpers.ts](https://github.com/openclaw/opencla
w/blob/045d5905/src/agents/pi-embedded-runner/run/helpers.ts)
- src/agents/pi-embedded-runner/sessions-yield.orchestration.test.ts
- [src/config/schema.base. generated.ts](https://github.com/openclaw/openclaw/blob/045d5905/src/config/schema.base. generated.ts)
- src/config/schema.help.quality.test.ts
- src/config/schema.help.ts
- src/config/schema.labels.ts
- src/config/types.agent-defaults.ts
- src/config/types.tools.ts
- src/config/zod-schema.agent-defaults.ts
- [src/config/zod-schema.agent-runtime.ts](https://github.com/openclaw/opencla
w/blob/045d5905/src/config/zod-schema.agent-runtime.ts)
- src/config/zod-schema.ts
- src/gateway/control-ui.auto-root.http.test.ts
- src/gateway/server.control-ui-root.test.ts
- src/infra/control-ui-assets.test.ts
- src/infra/control-ui-assets.ts
- src/plugin-sdk/channel-runtime.ts
- src/plugin-sdk/core.ts
- [src/plugins/bundled-provider-auth-env-vars. generated.ts](https://github.com/openclaw/openclaw/blob/045d5905/src/plugins/bundled-provider-auth-env-vars. generated.ts)
- [src/plugins/contracts/plugin-sdk-subpaths.test.ts](https://github.com/openclaw/openclaw
/blob/045d5905/src/plugins/contracts/plugin-sdk-subpaths.test.ts)
本页对 OpenClaw 的架构、核心概念和系统组织进行了高级介绍。它解释了 OpenClaw 是什么、其主要组件如何组合在一起,以及在哪里可以找到每个子系统的详细文档。
有关安装和首次设置,请参阅入门。有关基本构建块,请参阅核心概念。多平台系统的架构细节请参见平台架构。
什么是 OpenClaw
OpenClaw 是一个多平台 AI 网关,具有可扩展的消息集成 package.json 4 它充当自托管中央控制平面,将各种消息通道(WhatsApp、Telegram、Discord、Slack 等)连接到 AI 编码代理 docs/docs.json 4
该系统被设计为个人人工智能助手,可以在单台机器上运行,同时可以通过标准消息应用程序从任何地方进行访问 docs/docs.json 4 它通过统一的运行时将“自然语言空间”(用户聊天)与“代码实体空间”(工具执行、文件系统访问和系统命令)连接起来。
来源:package.json 1-4docs/docs.json 1-5
核心架构
OpenClaw 由 Node.js 网关核心、一组可插入消息通道以及由 Pi Agent Core 提供支持的代理运行时组成。
系统映射:自然语言到代码实体
下图说明了高级系统组件如何映射到存储库中的特定代码实体和目录。
来源:src/config/schema.base.generate.ts 5-10src/agents/pi-embedded-runner/run.ts 100src/agents/pi-embedded-runner/run/attempt.ts 76src/channels/plugins/types.plugin.ts 81
核心概念
网关和代理
网关 是中央 Node.js 进程。它管理代理,这是人工智能逻辑的执行单元。 runEmbeddedPiAgent 函数是执行代理轮转、处理重试、故障转移和模型选择等复杂性的主要入口点 src/agents/pi-embedded-runner/run.ts 100-102
会议和频道
会话 跟踪对话的状态。 通道(如 Telegram 或 WhatsApp)提供传输层。通道实现特定的安全策略,例如dmPolicy:“pairing”,这需要针对未知发送者的一次性代码docs/gateway/configuration-reference.md 25-31
技能和工具
工具为代理提供网络搜索、文件操作或浏览器自动化等功能 src/agents/pi-embedded-runner/run/attempt.ts 76技能是可以注入特定内容的模块化扩展系统提示和环境变量进入运行src/agents/pi-embedded-runner/run/attempt.ts 89-92
如需更深入的了解,请参阅核心概念。
来源:src/agents/pi-embedded-runner/run.ts 100-145docs/gateway/configuration-reference.md 25-31[src/agents/pi-embedded-runner/run/attempt.ts 76-92](https://github.com/openclaw/openclaw/blob/045d5905/src/agents/pi-embedded-runner/run/attempt.ts#L76-L92)
多平台架构
OpenClaw 的设计具有高度可移植性,具有共享的 TypeScript 核心和适用于各种平台的本机客户端实现。
| 组件 | 平台 | 技术 |
|---|---|---|
| 网关核心 | Linux、macOS、Windows | Node.js (ESM) package.json 38-41 |
| 代理运行时 | 本地/Docker | Pi Agent 核心 src/agents/pi-embedded-runner/run/attempt.ts 3-9 |
| iOS / macOS 应用程序 | 苹果生态系统 | Swift、XcodeGen CHANGELOG.md 17-18 |
| Android 应用程序 | 手机 | Kotlin、Jetpack Compose apps/android/README.md |
| 命令行 | 终端 | openclaw.mjspackage.json 16-18 |
数据流:消息到工具执行
该图跟踪用户消息通过系统到工具调用的路径。
有关跨平台构建系统和本机客户端的详细信息,请参阅平台架构。
来源:src/agents/pi-embedded-runner/run.ts 100-120src/agents/pi-embedded-runner/run/attempt.ts 76-78package.json 16-41
安全与信任
OpenClaw 遵循个人助理信任模型。它假设有一个受信任的操作员,并专注于保护该操作员的环境免受未经授权的访问,同时允许代理执行强大的任务。
- 配置验证:所有设置都根据模式进行验证,以防止注入危险参数 [src/config/schema.base. generated.ts 1-10](https://github.com/openclaw/openclaw/blob/045d5905/src/config/schema.base. generated.ts#L1-L10)
- 敏感数据:系统包括对日志中敏感工具和配置有效负载的内置修订 src/config/schema.help.ts 45-48
- 沙箱:可以使用
resolveSandboxContextsrc/agents/pi-embedded-runner/run/attempt.ts 78 隔离不受信任的代码或复杂工具的执行
来源:src/config/schema.help.ts 45-48src/agents/pi-embedded-runner/run/attempt.ts 78[src/config/schema.base. generated.ts 5-50](https://github.com/openclaw/openclaw/blob/045d5905/src/config/schema.base. generated.ts#L5-L50)
开始使用
要开始使用 OpenClaw,用户通常运行入门向导来处理提供商设置和渠道链接。
“船上张开爪” 该向导使用必要的凭据和首选项填充“openclaw.json”,例如“logging.level”或“gateway.port”src/config/schema.help.ts 37-67
有关安装和首次交互的完整指南,请参阅入门。