Plugin 插件系统
src/plugins/ 实现了 OpenClaw 的插件化架构。
注册表类型
typescript
PluginToolRegistration // 工具
PluginChannelRegistration // 通道
PluginProviderRegistration // 模型提供商
PluginHookRegistration // 钩子
PluginServiceRegistration // 后台服务
PluginCliRegistration // CLI 命令
PluginHttpRegistration // HTTP 路由
PluginCommandRegistration // Slash 命令加载流程 (loader.ts)
- 扫描插件目录
- 读取 manifest (
manifest.ts) - 验证 schema (
schema-validator.ts) - 实例化插件 → 注册到 registry
- 钩子绑定 (
hooks.ts)
工具注册
- 插件工具通过
OpenClawPluginToolFactory创建 - 支持
optional标记(不满足条件时跳过) tools.ts处理工具的动态注册和策略过滤