Voice Call(插件)

通过插件为 OpenClaw 提供语音通话。支持出站通知和带有入站策略的多轮对话。 当前提供商: twilio(Programmable Voice + Media Streams) telnyx(Call Control v2) plivo(Voice API + XML transfer + GetInput speech) mock(开发/无网络) 快速心智模型: 安装插件 重启 Gateway 网关 在 plugins.entries.voice-call.config 下配置 使用 openclaw voicecall ... 或 voice_call 工具 运行位置(本地 vs 远程) Voice Call 插件运行在 Gateway 网关进程内部。 如果你使用远程 Gateway 网关,在运行 Gateway 网关的机器上安装/配置插件,然后重启 Gateway 网关以加载它。 安装 选项 A:从 npm 安装(推荐) openclaw plugins install @openclaw/voice-call 之后重启 Gateway 网关。 选项 B:从本地文件夹安装(开发,不复制) openclaw plugins install ./extensions/voice-call cd ./extensions/voice-call && pnpm install 之后重启 Gateway 网关。 ...

Zalo Personal(插件)

通过插件为 OpenClaw 提供 Zalo Personal 支持,使用 zca-cli 自动化普通 Zalo 用户账户。 警告: 非官方自动化可能导致账户被暂停/封禁。使用风险自负。 命名 渠道 id 是 zalouser,以明确表示这是自动化个人 Zalo 用户账户(非官方)。我们保留 zalo 用于潜在的未来官方 Zalo API 集成。 运行位置 此插件在 Gateway 网关进程内运行。 如果你使用远程 Gateway 网关,请在运行 Gateway 网关的机器上安装/配置它,然后重启 Gateway 网关。 安装 选项 A:从 npm 安装 openclaw plugins install @openclaw/zalouser 之后重启 Gateway 网关。 选项 B:从本地文件夹安装(开发) openclaw plugins install ./extensions/zalouser cd ./extensions/zalouser && pnpm install 之后重启 Gateway 网关。 前置条件:zca-cli Gateway 网关机器必须在 PATH 中有 zca: zca --version 配置 渠道配置位于 channels.zalouser 下(不是 plugins.entries.*): ...

插件智能体工具

OpenClaw 插件可以注册智能体工具(JSON 模式函数),这些工具在智能体运行期间暴露给 LLM。工具可以是必需的(始终可用)或可选的(选择启用)。 智能体工具在主配置的 tools 下配置,或在每个智能体的 agents.list[].tools 下配置。允许列表/拒绝列表策略控制智能体可以调用哪些工具。 基本工具 import { Type } from "@sinclair/typebox"; export default function (api) { api.registerTool({ name: "my_tool", description: "Do a thing", parameters: Type.Object({ input: Type.String(), }), async execute(_id, params) { return { content: [{ type: "text", text: params.input }] }; }, }); } 可选工具(选择启用) 可选工具永远不会自动启用。用户必须将它们添加到智能体允许列表中。 export default function (api) { api.registerTool( { name: "workflow_tool", description: "Run a local workflow", parameters: { type: "object", properties: { pipeline: { type: "string" }, }, required: ["pipeline"], }, async execute(_id, params) { return { content: [{ type: "text", text: params.pipeline }] }; }, }, { optional: true }, ); } 在 agents.list[].tools.allow(或全局 tools.allow)中启用可选工具: { agents: { list: [ { id: "main", tools: { allow: [ "workflow_tool", // 特定工具名称 "workflow", // 插件 id(启用该插件的所有工具) "group:plugins", // 所有插件工具 ], }, }, ], }, } 其他影响工具可用性的配置选项: ...

插件清单(openclaw.plugin.json)

每个插件都必须在插件根目录下提供一个 openclaw.plugin.json 文件。OpenClaw 使用此清单来在不执行插件代码的情况下验证配置。缺失或无效的清单将被视为插件错误,并阻止配置验证。 参阅完整的插件系统指南:插件。 必填字段 { "id": "voice-call", "configSchema": { "type": "object", "additionalProperties": false, "properties": {} } } 必填键: id(字符串):插件的规范 id。 configSchema(对象):插件配置的 JSON Schema(内联形式)。 可选键: kind(字符串):插件类型(例如:"memory")。 channels(数组):此插件注册的渠道 id(例如:["matrix"])。 providers(数组):此插件注册的提供商 id。 skills(数组):要加载的 Skills 目录(相对于插件根目录)。 name(字符串):插件的显示名称。 description(字符串):插件简短描述。 uiHints(对象):用于 UI 渲染的配置字段标签/占位符/敏感标志。 version(字符串):插件版本(仅供参考)。 JSON Schema 要求 每个插件都必须提供 JSON Schema,即使不接受任何配置也是如此。 空 Schema 是可以接受的(例如 { "type": "object", "additionalProperties": false })。 Schema 在配置读取/写入时进行验证,而非在运行时。 验证行为 未知的 channels.* 键会被视为错误,除非该渠道 id 已在插件清单中声明。 plugins.entries.<id>、plugins.allow、plugins.deny 和 plugins.slots.* 必须引用可发现的插件 id。未知 id 会被视为错误。 如果插件已安装但清单或 Schema 损坏或缺失,验证将失败,Doctor 会报告插件错误。 如果插件配置存在但插件已禁用,配置会被保留,并在 Doctor 和日志中显示警告。 注意事项 清单对所有插件都是必需的,包括从本地文件系统加载的插件。 运行时仍然会单独加载插件模块;清单仅用于发现和验证。 如果你的插件依赖原生模块,请记录构建步骤以及所有包管理器允许列表要求(例如 pnpm 的 allow-build-scripts - pnpm rebuild <package>)。