Plugins 导读
Meeting Notes 新本领插件:这块新积木往哪儿卡
Meeting Notes 新本领插件 这页像在教你把一块新积木卡进主机身上。你先看它负责哪段本领、说明纸塞在哪里、外面的世界怎么从它这道门进来,以及哪些 secret、route、manifest 最不能写歪。原文最响的一记鼓点,其实是:The Meeting Notes 新本领插件 is the generic notes layer for live calls and imported meeting…。
先听这页的人话版
Meeting Notes plugin
这一页不是在堆术语,它像把“Meeting Notes 新本领插件”这台小机器搬到桌上,当着你的面拆开给你看。你先不用全记住,先抓住它到底在忙什么:The Meeting Notes 新本领插件 is the generic notes layer for live calls and imported meeting transcri…。
如果把这页当成“给普通人看的版本”,你最应该带走的是:它到底在教你一件什么事、什么时候要这样做、以及哪里最容易踩坑。
第 1 站
Start Here
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
你理解的是能力边界,不只是功能名字。
如果这节里同时出现命令、配置和例子,优先先看例子,再回头看配置。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:The Meeting Notes 新本领插件 is the generic notes layer for live calls and imported meeting transcripts. It owns transcript…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:The Meeting Notes 新本领插件 is the generic notes layer for live calls and imported meeting transcripts. It owns transcript…。
The Meeting Notes plugin is the generic notes layer for live calls and imported meeting transcripts. It owns transcript storage, summary rendering, and the meeting_notes tool. Channel plugins own capture, authentication, and platform-specific meeting joins.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use this page when you want OpenClaw to capture Discord voice notes today, when you want to import a transcript from an…。
Use this page when you want OpenClaw to capture Discord voice notes today, when you want to import a transcript from another meeting system, or when you are building a Google Meet, Slack huddle, Zoom, or calendar-owned source provider.
第 2 站
Source 聪明脑袋模型
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
你理解的是能力边界,不只是功能名字。
如果这节里同时出现命令、配置和例子,优先先看例子,再回头看配置。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting sources register meetingNotesSourceProviders through the 新本领插件 SDK. The first live provider is discord-voice; t…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting sources register meetingNotesSourceProviders through the 新本领插件 SDK. The first live provider is discord-voice; t…。
Meeting sources register meetingNotesSourceProviders through the plugin SDK. The first live provider is discord-voice; the built-in manual-transcript provider imports post-meeting transcripts.
这一串条目别硬背,把它当成“Source model”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:live-audio: source joins or listens to a…、live-caption: source reads captions from…、posthoc-transcript: source imports a tran…、recording-stt: source transcribes a recor…。
live-audio: source joins or listens to a call and streams final utterances.live-caption: source reads captions from a browser or meeting surface.posthoc-transcript: source imports a transcript or notes artifact after the meeting.recording-stt: source transcribes a recording before importing utterances.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:This keeps Discord, Google Meet, Slack huddles, and future meeting surfaces out of the notes engine. Each source suppli…。
This keeps Discord, Google Meet, Slack huddles, and future meeting surfaces out of the notes engine. Each source supplies speaker-labeled utterances; Meeting Notes writes the artifacts and summary.
第 3 站
Install and enable
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这种内容决定了 OpenClaw 是“能做”还是“现在还不能做”,读懂它比记术语更重要。
你可以把这一节当成权限说明书,真正配置时优先盯住 default、required、allow、deny 这几个词。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting Notes is an external source 新本领插件 in this repository. It is not part of the core OpenClaw npm package and becom…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting Notes is an external source 新本领插件 in this repository. It is not part of the core OpenClaw npm package and becom…。
Meeting Notes is an external source plugin in this repository. It is not part of the core OpenClaw npm package and becomes available only when the plugin is installed as a plugin or loaded from a source checkout that contains extensions/meeting-notes.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Once the 新本领插件 is loaded, it is enabled by default unless one of these settings blocks it:。
Once the plugin is loaded, it is enabled by default unless one of these settings blocks it:
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:but disables the meeting_notes 工具小帮手 and auto-start service.
but disables the meeting_notes tool and auto-start service.
这一串条目别硬背,把它当成“Install and enable”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:新本领插件s.enabled: false disables all 新本领插件s.、新本领插件s.deny contains meeting-notes.、新本领插件s.allow is set and does not contain…、新本领插件s.entries.meeting-notes.enabled: fal…。
plugins.enabled: falsedisables all plugins.plugins.denycontainsmeeting-notes.plugins.allowis set and does not containmeeting-notes.plugins.entries.meeting-notes.enabled: falsedisables this plugin entry.plugins.entries.meeting-notes.config.enabled: falsekeeps the plugin loaded
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:The normal user 设置说明书 file is ~/.openclaw/openclaw.json. The 新本领插件s section controls 新本领插件 loading, and the nested entr…。
The normal user config file is ~/.openclaw/openclaw.json. The plugins section controls plugin loading, and the nested entries.<pluginId>.config object is passed to that plugin as plugin-specific config. A separate config: { ... } block under meeting-notes is expected; it is how plugins receive their own options without adding core config keys.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use this shape when your 设置说明书 has a 新本领插件 allowlist:。
Use this shape when your config has a plugin allowlist:
这段不是对白,而是一叠设置卡片,像在给系统贴门牌、路线和规矩。
- 大括号像两只手把同一组设置拢住,意思是“这些东西算一伙”。
- 这里在给“plugins”挂牌子,告诉系统它该指向“{”。
- 这里在给“allow”挂牌子,告诉系统它该指向“[discord meeting-notes]”。
{
plugins: {
allow: ["discord", "meeting-notes"],
entries: {
"meeting-notes": {
enabled: true,
config: {
enabled: true,
maxUtterances: 2000,
autoStart: [],
},
},
},
},
}
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Run a 设置说明书 check after editing:。
Run a config check after editing:
这是一句直接对 OpenClaw 说的话,像你把任务清清楚楚塞到它手里。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw config validate”。你可以把它想成一句说出口就要执行的差事。
openclaw config validate
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:门口的小门卫 设置说明书 hot reload applies 新本领插件 allowlist and 新本领插件-entry changes. Restart the 门口的小门卫 if you are also changing th…。
Gateway config hot reload applies plugin allowlist and plugin-entry changes. Restart the Gateway if you are also changing the source plugin itself, installing new plugin files, or changing Discord voice credentials.
第 4 站
设置说明书uration
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这种内容决定了 OpenClaw 是“能做”还是“现在还不能做”,读懂它比记术语更重要。
你可以把这一节当成权限说明书,真正配置时优先盯住 default、required、allow、deny 这几个词。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting Notes has three 新本领插件 设置说明书 fields: disable the 工具小帮手 and auto-start service. N utterances from transcript.json…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting Notes has three 新本领插件 设置说明书 fields:。
Meeting Notes has three plugin config fields:
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:disable the 工具小帮手 and auto-start service.
disable the tool and auto-start service.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:N utterances from transcript.jsonl; valid values are clamped to 1 through 10000.
N utterances from transcript.jsonl; valid values are clamped to 1 through 10000.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:门口的小门卫 starts or reloads the 新本领插件.
Gateway starts or reloads the plugin.
这一串条目别硬背,把它当成“Configuration”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:enabled: true by default. Set false to le…、maxUtterances: 2000 by default. Summary g…、autoStart: empty by default. Each entry s…。
enabled:trueby default. Setfalseto leave the plugin installed butmaxUtterances:2000by default. Summary generation reads only the newestautoStart: empty by default. Each entry starts a live notes source when the
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:An autoStart entry accepts:。
An autoStart entry accepts:
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:starting it.
starting it.
这一串条目别硬背,把它当成“Configuration”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:providerId: required. Use discord-voice f…、enabled: optional, default true. Set fals…、sessionId: optional. If omitted, OpenClaw…、title: optional human-readable title for…。
providerId: required. Usediscord-voicefor Discord voice.enabled: optional, defaulttrue. Setfalseto keep an entry withoutsessionId: optional. If omitted, OpenClaw generates a timestamped id.title: optional human-readable title for summaries and CLI output.accountId: optional source account id when more than one account exists.guildId: provider-specific Discord guild id.channelId: provider-specific Discord voice channel id.meetingUrl: provider-specific meeting URL for browser or calendar sources.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use autoStart when OpenClaw should begin notes capture automatically on 门口的小门卫 startup:。
Use autoStart when OpenClaw should begin notes capture automatically on gateway startup:
这段不是对白,而是一叠设置卡片,像在给系统贴门牌、路线和规矩。
- 大括号像两只手把同一组设置拢住,意思是“这些东西算一伙”。
- 这里在给“plugins”挂牌子,告诉系统它该指向“{”。
- 这里在给“entries”挂牌子,告诉系统它该指向“{”。
{
plugins: {
entries: {
"meeting-notes": {
config: {
autoStart: [
{
providerId: "discord-voice",
guildId: "123",
channelId: "456",
title: "Weekly planning",
},
],
},
},
},
},
}
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Auto-start retries startup failures up to 12 times with a five-second delay. This lets the notes service wait for 消息通道…。
Auto-start retries startup failures up to 12 times with a five-second delay. This lets the notes service wait for channel plugins such as Discord to finish initializing. Sessions that were started by auto-start are stopped and summarized when the plugin service stops cleanly.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Discord voice capture still needs normal Discord voice setup and permissions. See Discord voice.
Discord voice capture still needs normal Discord voice setup and permissions. See Discord voice.
第 5 站
Discord voice
这一节更像安装或配置步骤,重点不是概念,而是“按什么顺序做才不会卡住”。
这一节更像安装或配置步骤,重点不是概念,而是“按什么顺序做才不会卡住”。
很多文档看起来长,其实是在防你漏掉前置条件。
真正照做时,先找前置条件,再找必填项,最后看验证方法。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Discord is the first live source. The Discord 新本领插件 owns the voice connection, speaker detection, audio decoding, and t…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Discord is the first live source. The Discord 新本领插件 owns the voice connection, speaker detection, audio decoding, and t…。
Discord is the first live source. The Discord plugin owns the voice connection, speaker detection, audio decoding, and transcription. Meeting Notes receives final speaker-labeled utterances and persists them.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:For Discord live capture:。
For Discord live capture:
这一串条目别硬背,把它当成“Discord voice”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:Enable and 设置说明书ure the Discord 新本领插件 fir…、设置说明书ure Discord voice mode so OpenClaw c…、Use providerId: "discord-voice".、Provide guildId and 消息通道Id.
- Enable and configure the Discord plugin first.
- Configure Discord voice mode so OpenClaw can join the target voice channel.
- Use
providerId: "discord-voice". - Provide
guildIdandchannelId. - Add
accountIdonly when you run more than one Discord account.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:The transcription 聪明脑袋模型 is not chosen by Meeting Notes. In Discord stt-tts voice mode, STT uses 工具小帮手s.media.audio; vo…。
The transcription model is not chosen by Meeting Notes. In Discord stt-tts voice mode, STT uses tools.media.audio; voice.model controls the agent reply model, not transcription. In realtime voice modes, transcription follows the configured realtime provider and model. See Discord voice for the current Discord voice model and provider knobs.
第 6 站
Google Meet, Slack huddles, and other sources
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
你理解的是能力边界,不只是功能名字。
如果这节里同时出现命令、配置和例子,优先先看例子,再回头看配置。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting Notes is intentionally source-neutral. Google Meet, Slack huddles, Zoom, calendar recordings, or browser captio…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Meeting Notes is intentionally source-neutral. Google Meet, Slack huddles, Zoom, calendar recordings, or browser captio…。
Meeting Notes is intentionally source-neutral. Google Meet, Slack huddles, Zoom, calendar recordings, or browser caption capture should be separate source providers that register with the plugin SDK.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Recommended source choices:。
Recommended source choices:
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:that accepts meetingUrl and emits final caption utterances.
that accepts meetingUrl and emits final caption utterances.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:posthoc-transcript or use manual-transcript until a provider exists.
posthoc-transcript or use manual-transcript until a provider exists.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Slack does not expose a general bot-join live huddle audio 对话接口.
Slack does not expose a general bot-join live huddle audio API.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Slack auth, artifact lookup, and transcript normalization.
Slack auth, artifact lookup, and transcript normalization.
这一串条目别硬背,把它当成“Google Meet, Slack huddles, and other sources”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:Google Meet live browser/caption support:…、Google Meet recordings or downloaded tran…、Slack huddles today: import post-meeting…、Slack huddles later: keep the Slack-owned…。
- Google Meet live browser/caption support: implement a
live-captionprovider - Google Meet recordings or downloaded transcripts: implement
- Slack huddles today: import post-meeting huddle notes or transcript artifacts.
- Slack huddles later: keep the Slack-owned source provider responsible for
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:The notes engine should not contain platform joins, browser 自动小闹钟, Slack 对话接口 polling, or Discord voice logic. Those be…。
The notes engine should not contain platform joins, browser automation, Slack API polling, or Discord voice logic. Those belong to the owning source plugin.
第 7 站
工具小帮手
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
你理解的是能力边界,不只是功能名字。
如果这节里同时出现命令、配置和例子,优先先看例子,再回头看配置。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use meeting_notes with an action: Discord live notes require providerId: "discord-voice", plus guildId and 消息通道Id. acco…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use meeting_notes with an action:。
Use meeting_notes with an action:
这一串条目别硬背,把它当成“Tool”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:status: list registered providers and act…、start: start a live notes session.、stop: stop a live session and write summa…、import: import a transcript and write sum…。
status: list registered providers and active sessions.start: start a live notes session.stop: stop a live session and writesummary.md.import: import a transcript and writesummary.md.summarize: regenerate a summary for an existing session.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Discord live notes require providerId: "discord-voice", plus guildId and 消息通道Id. accountId is optional when only one Di…。
Discord live notes require providerId: "discord-voice", plus guildId and channelId. accountId is optional when only one Discord account is active.
这段不是对白,而是一叠设置卡片,像在给系统贴门牌、路线和规矩。
- 大括号像两只手把同一组设置拢住,意思是“这些东西算一伙”。
- 这里在给“action”挂牌子,告诉系统它该指向“start”。
- 这里在给“providerId”挂牌子,告诉系统它该指向“discord-voice”。
{
"action": "start",
"providerId": "discord-voice",
"guildId": "123",
"channelId": "456",
"title": "Weekly planning"
}
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Stop by session id:。
Stop by session id:
这段不是对白,而是一叠设置卡片,像在给系统贴门牌、路线和规矩。
- 大括号像两只手把同一组设置拢住,意思是“这些东西算一伙”。
- 这里在给“action”挂牌子,告诉系统它该指向“stop”。
- 这里在给“sessionId”挂牌子,告诉系统它该指向“meeting-2026-05-22T10-00-00-000Z-a1b2c3d4”。
{
"action": "stop",
"sessionId": "meeting-2026-05-22T10-00-00-000Z-a1b2c3d4"
}
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Import a transcript:。
Import a transcript:
这段不是对白,而是一叠设置卡片,像在给系统贴门牌、路线和规矩。
- 大括号像两只手把同一组设置拢住,意思是“这些东西算一伙”。
- 这里在给“action”挂牌子,告诉系统它该指向“import”。
- 这里在给“providerId”挂牌子,告诉系统它该指向“manual-transcript”。
{
"action": "import",
"providerId": "manual-transcript",
"title": "Design review",
"transcript": "Alex: We decided to ship the Discord source first.\nSam: Action item: add Slack huddle import later."
}
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:manual-transcript splits plain transcript text into utterances. Use it for copied Google Meet notes, Slack huddle summa…。
manual-transcript splits plain transcript text into utterances. Use it for copied Google Meet notes, Slack huddle summaries, calendar transcripts, or any source that already produced text.
第 8 站
Storage layout
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这种内容决定了 OpenClaw 是“能做”还是“现在还不能做”,读懂它比记术语更重要。
你可以把这一节当成权限说明书,真正配置时优先盯住 default、required、allow、deny 这几个词。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Artifacts are stored under the OpenClaw state directory: If OPENCLAW_STATE_DIR is unset, the default state directory is…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Artifacts are stored under the OpenClaw state directory:。
Artifacts are stored under the OpenClaw state directory:
这段像放在桌上的操作卡,谁来照着做,现场就会动起来。
- 这一行“$OPENCLAW_STATE_DIR/meeting-notes/YYYY-MM-DD/<session>/”是在给电脑递一张小纸条,告诉它眼下该做哪一步。
- 这一行“metadata.json”是在给电脑递一张小纸条,告诉它眼下该做哪一步。
- 这一行“transcript.jsonl”是在给电脑递一张小纸条,告诉它眼下该做哪一步。
$OPENCLAW_STATE_DIR/meeting-notes/YYYY-MM-DD/<session>/
metadata.json
transcript.jsonl
summary.json
summary.md
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:If OPENCLAW_STATE_DIR is unset, the default state directory is ~/.openclaw. A normal local install therefore writes not…。
If OPENCLAW_STATE_DIR is unset, the default state directory is ~/.openclaw. A normal local install therefore writes notes under ~/.openclaw/meeting-notes/....
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Each file has one job:。
Each file has one job:
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:and provider metadata.
and provider metadata.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:object with the utterance text and the session id.
object with the utterance text and the session id.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:speaker-labeled transcript window used for the generated summary.
speaker-labeled transcript window used for the generated summary.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:workflows, including a speaker-labeled transcript section.
workflows, including a speaker-labeled transcript section.
这一串条目别硬背,把它当成“Storage layout”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:metadata.json: session id, source provide…、transcript.jsonl: append-only speaker utt…、summary.json: structured summary data use…、summary.md: human-readable notes for term…。
metadata.json: session id, source provider, title, start time, stop time,transcript.jsonl: append-only speaker utterances. Each line is one JSONsummary.json: structured summary data used by tooling, including thesummary.md: human-readable notes for terminals, editors, and document
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:The date directory comes from the session start time, so multiple meetings per day stay 大家一起的房间ed. If a human session i…。
The date directory comes from the session start time, so multiple meetings per day stay grouped. If a human session id repeats across days, use the date-qualified selector from openclaw meeting-notes list, such as 2026-05-22/standup.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:By default, OpenClaw generates timestamped session ids:。
By default, OpenClaw generates timestamped session ids:
这段像放在桌上的操作卡,谁来照着做,现场就会动起来。
- 这一行“meeting-2026-05-22T10-00-00-000Z-a1b2c3d4”是在给电脑递一张小纸条,告诉它眼下该做哪一步。
meeting-2026-05-22T10-00-00-000Z-a1b2c3d4
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:That means ten meetings on the same day become ten sibling directories:。
That means ten meetings on the same day become ten sibling directories:
这段像放在桌上的操作卡,谁来照着做,现场就会动起来。
- 这一行“~/.openclaw/meeting-notes/2026-05-22/”是在给电脑递一张小纸条,告诉它眼下该做哪一步。
- 这一行“meeting-2026-05-22T09-00-00-000Z-a1b2c3d4/”是在给电脑递一张小纸条,告诉它眼下该做哪一步。
- 这一行“meeting-2026-05-22T10-30-00-000Z-b2c3d4e5/”是在给电脑递一张小纸条,告诉它眼下该做哪一步。
~/.openclaw/meeting-notes/2026-05-22/
meeting-2026-05-22T09-00-00-000Z-a1b2c3d4/
meeting-2026-05-22T10-30-00-000Z-b2c3d4e5/
meeting-2026-05-22T13-00-00-000Z-c3d4e5f6/
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:设置说明书ure sessionId only when that id is unique for the day. Human ids such as standup are fine for one recurring meetin…。
Configure sessionId only when that id is unique for the day. Human ids such as standup are fine for one recurring meeting per day. If the same id appears on multiple days, use the date-qualified selector in the CLI.
第 9 站
CLI access
这一节主要在解释“CLI access”到底是干什么的,以及你什么时候会遇到它。
这一节主要在解释“CLI access”到底是干什么的,以及你什么时候会遇到它。
如果你是第一次接触 OpenClaw,这一节最值得看的不是术语本身,而是它背后的使用场景和限制。
真正动手时,先看它有没有默认值、有没有必须打开的选项、以及会不会影响安全边界。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use the read-only CLI to find or print stored summaries: See Meeting Notes CLI for the full 魔法口令 reference.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use the read-only CLI to find or print stored summaries:。
Use the read-only CLI to find or print stored summaries:
这是一句直接对 OpenClaw 说的话,像你把任务清清楚楚塞到它手里。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw meeting-notes list”。你可以把它想成一句说出口就要执行的差事。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw meeting-notes show <session>”。你可以把它想成一句说出口就要执行的差事。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw meeting-notes path <session>”。你可以把它想成一句说出口就要执行的差事。
openclaw meeting-notes list
openclaw meeting-notes show <session>
openclaw meeting-notes path <session>
openclaw meeting-notes path <session> --transcript
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:See Meeting Notes CLI for the full 魔法口令 reference.
See Meeting Notes CLI for the full command reference.
第 10 站
Long meetings
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这种内容决定了 OpenClaw 是“能做”还是“现在还不能做”,读懂它比记术语更重要。
你可以把这一节当成权限说明书,真正配置时优先盯住 default、required、allow、deny 这几个词。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:For long meetings, utterances are appended to transcript.jsonl as they arrive. Summary generation reads a bounded windo…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:For long meetings, utterances are appended to transcript.jsonl as they arrive. Summary generation reads a bounded windo…。
For long meetings, utterances are appended to transcript.jsonl as they arrive. Summary generation reads a bounded window controlled by plugins.entries.meeting-notes.config.maxUtterances (default: 2000) so a multi-hour call does not require unbounded summary memory.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:This means the transcript can keep growing on disk, while summarization stays bounded. Increase maxUtterances when you…。
This means the transcript can keep growing on disk, while summarization stays bounded. Increase maxUtterances when you need more of a multi-hour meeting in the generated summary and speaker-labeled transcript section. Decrease it when summaries are too slow or too large.
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Current summaries are generated when a session stops, after an import, or when the summarize action runs. They are not…。
Current summaries are generated when a session stops, after an import, or when the summarize action runs. They are not continuously rewritten for every utterance.
第 11 站
`meeting_notes` is missing
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这一节在讲规则和边界:什么默认允许、什么必须显式打开、什么被禁止。
这种内容决定了 OpenClaw 是“能做”还是“现在还不能做”,读懂它比记术语更重要。
你可以把这一节当成权限说明书,真正配置时优先盯住 default、required、allow、deny 这几个词。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Check that the 新本领插件 is installed or loaded from source, and that 新本领插件 loading does not exclude it: If 新本领插件s.allow is…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Check that the 新本领插件 is installed or loaded from source, and that 新本领插件 loading does not exclude it:。
Check that the plugin is installed or loaded from source, and that plugin loading does not exclude it:
这是一句直接对 OpenClaw 说的话,像你把任务清清楚楚塞到它手里。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw config validate”。你可以把它想成一句说出口就要执行的差事。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw meeting-notes list”。你可以把它想成一句说出口就要执行的差事。
openclaw config validate
openclaw meeting-notes list
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:If 新本领插件s.allow is set, it must include meeting-notes. If 新本领插件s.deny contains meeting-notes, remove it.
If plugins.allow is set, it must include meeting-notes. If plugins.deny contains meeting-notes, remove it.
第 12 站
Auto-start does not join Discord
这一节主要在解释“Auto-start does not join Discord”到底是干什么的,以及你什么时候会遇到它。
这一节主要在解释“Auto-start does not join Discord”到底是干什么的,以及你什么时候会遇到它。
如果你是第一次接触 OpenClaw,这一节最值得看的不是术语本身,而是它背后的使用场景和限制。
真正动手时,先看它有没有默认值、有没有必须打开的选项、以及会不会影响安全边界。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Confirm the autoStart entry uses providerId: "discord-voice" and includes both guildId and 消息通道Id. If you run multiple…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Confirm the autoStart entry uses providerId: "discord-voice" and includes both guildId and 消息通道Id. If you run multiple…。
Confirm the autoStart entry uses providerId: "discord-voice" and includes both guildId and channelId. If you run multiple Discord accounts, include accountId. Also verify Discord voice works outside Meeting Notes by joining the same voice channel through the Discord voice commands.
第 13 站
Summary is missing
这一节主要在解释“Summary is missing”到底是干什么的,以及你什么时候会遇到它。
这一节主要在解释“Summary is missing”到底是干什么的,以及你什么时候会遇到它。
如果你是第一次接触 OpenClaw,这一节最值得看的不是术语本身,而是它背后的使用场景和限制。
真正动手时,先看它有没有默认值、有没有必须打开的选项、以及会不会影响安全边界。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Live sessions write summary.md when stopped. Stop the session with meeting_notes action stop, then inspect it: Use meet…。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Live sessions write summary.md when stopped. Stop the session with meeting_notes action stop, then inspect it:。
Live sessions write summary.md when stopped. Stop the session with meeting_notes action stop, then inspect it:
这是一句直接对 OpenClaw 说的话,像你把任务清清楚楚塞到它手里。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw meeting-notes list”。你可以把它想成一句说出口就要执行的差事。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw meeting-notes path <session>”。你可以把它想成一句说出口就要执行的差事。
openclaw meeting-notes list
openclaw meeting-notes path <session>
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:Use meeting_notes action summarize to regenerate summary.md for an existing stored session.
Use meeting_notes action summarize to regenerate summary.md for an existing stored session.
第 14 站
Selector is ambiguous
这一节主要在解释“Selector is ambiguous”到底是干什么的,以及你什么时候会遇到它。
这一节主要在解释“Selector is ambiguous”到底是干什么的,以及你什么时候会遇到它。
如果你是第一次接触 OpenClaw,这一节最值得看的不是术语本身,而是它背后的使用场景和限制。
真正动手时,先看它有没有默认值、有没有必须打开的选项、以及会不会影响安全边界。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:If you reused a human session id such as standup, use the date-qualified selector shown by openclaw meeting-notes list:。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:If you reused a human session id such as standup, use the date-qualified selector shown by openclaw meeting-notes list:。
If you reused a human session id such as standup, use the date-qualified selector shown by openclaw meeting-notes list:
这是一句直接对 OpenClaw 说的话,像你把任务清清楚楚塞到它手里。
- 这一句是在直接叫 OpenClaw 动起来:“openclaw meeting-notes show 2026-05-22/standup”。你可以把它想成一句说出口就要执行的差事。
openclaw meeting-notes show 2026-05-22/standup
第 15 站
Related
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
这一节在讲一类能力是怎么工作的:它能做什么、不能做什么、适合在什么场景下调用。
你理解的是能力边界,不只是功能名字。
如果这节里同时出现命令、配置和例子,优先先看例子,再回头看配置。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:---。
这一串条目别硬背,把它当成“Related”门口贴出来的几张便签就行。它们在提醒你先备好什么、别漏掉什么、哪里最容易走错:Meeting Notes CLI、Discord voice、新本领插件 management、新本领插件 architecture。
如果把这一段摆成一个小场景,你会看到几样东西正在互相打招呼、拦路或者传东西。别急着记名词,先抓住它此刻到底在发生什么:---。
---
AdSense 连接验证已经放在页面头部;广告单元等站点审批通过后再启用。
google-adsense-account: ca-pub-3833673520933536