mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-12 21:53:00 -06:00
docs: rewrite published docs grounded in current source (#100142)
Source-grounded rewrite of 529 published docs pages with per-unit information-loss verification: 1,713 factual corrections cited to src/**, generated surfaces regenerated, frontmatter titles preserved for i18n, release notes pages untouched. All docs gates green. Closes #100141
This commit is contained in:
committed by
GitHub
parent
e069cb26f7
commit
f7d7148cf0
+51
-60
@@ -9,15 +9,10 @@ title: "Transcripts CLI"
|
||||
|
||||
# `openclaw transcripts`
|
||||
|
||||
Inspect transcripts written by OpenClaw's core `transcripts` tool. This CLI is
|
||||
read-only; capture, import, and summarization are owned by the agent tool and
|
||||
configured auto-start sources.
|
||||
Read-only inspector for transcripts written by the `transcripts` agent tool.
|
||||
Capture, import, and summarization run through that tool, not this CLI.
|
||||
|
||||
Use the CLI when you want to find yesterday's notes, open the Markdown file in
|
||||
an editor, feed a transcript to another tool, or debug where a session landed on
|
||||
disk. It does not start or stop capture.
|
||||
|
||||
Artifacts live under the OpenClaw state directory:
|
||||
Artifacts live under the state directory:
|
||||
|
||||
```text
|
||||
$OPENCLAW_STATE_DIR/transcripts/YYYY-MM-DD/<session>/
|
||||
@@ -27,9 +22,9 @@ $OPENCLAW_STATE_DIR/transcripts/YYYY-MM-DD/<session>/
|
||||
summary.md
|
||||
```
|
||||
|
||||
The default state directory is `~/.openclaw`; set `OPENCLAW_STATE_DIR` to use a
|
||||
different one. The date directory comes from the session start time, and the
|
||||
session directory is a safe filesystem segment derived from the session id.
|
||||
Default state directory is `~/.openclaw`; override with `OPENCLAW_STATE_DIR`.
|
||||
The date directory comes from the session start time; the session directory is
|
||||
a filesystem-safe slug derived from the session id.
|
||||
|
||||
## Commands
|
||||
|
||||
@@ -47,51 +42,45 @@ openclaw transcripts show <session> --json
|
||||
openclaw transcripts path <session> --json
|
||||
```
|
||||
|
||||
- `list`: list stored sessions, date-qualified selector, start time, title, and `summary.md` path.
|
||||
- `show <session>`: print the stored `summary.md`.
|
||||
- `path <session>`: print the `summary.md` path.
|
||||
- `path <session> --dir`: print the session directory.
|
||||
- `path <session> --metadata`: print `metadata.json`.
|
||||
- `path <session> --transcript`: print `transcript.jsonl`.
|
||||
- `--json`: print machine-readable output.
|
||||
| Command | Description |
|
||||
| ----------------------------- | ----------------------------------------------- |
|
||||
| `list` | List stored sessions. |
|
||||
| `show <session>` | Print the stored `summary.md`. |
|
||||
| `path <session>` | Print the `summary.md` path. |
|
||||
| `path <session> --dir` | Print the session directory. |
|
||||
| `path <session> --metadata` | Print `metadata.json`. |
|
||||
| `path <session> --transcript` | Print `transcript.jsonl`. |
|
||||
| `--json` | Print machine-readable output (any subcommand). |
|
||||
|
||||
When a human session id repeats across days, use the date-qualified selector
|
||||
from `list`, for example `openclaw transcripts show 2026-05-22/standup`.
|
||||
Default session ids include a timestamp and random suffix; configure fixed
|
||||
session ids only when they are unique within the day.
|
||||
`<session>` accepts either a bare session id or a date-qualified selector
|
||||
(`YYYY-MM-DD/<session>`). Use the qualified form when the same session id
|
||||
occurs on more than one day, for example `openclaw transcripts show
|
||||
2026-05-22/standup`. Default session ids include a timestamp and random
|
||||
suffix; give a session a fixed id only when that id is unique within the day.
|
||||
|
||||
## Output
|
||||
|
||||
`list` prints one session per line:
|
||||
`list` prints one tab-separated line per session: selector, start time, title,
|
||||
summary path.
|
||||
|
||||
```text
|
||||
2026-05-22/standup 2026-05-22T09:00:00.000Z Weekly standup /Users/alex/.openclaw/transcripts/2026-05-22/standup/summary.md
|
||||
2026-05-22/standup 2026-05-22T09:00:00.000Z Weekly standup /Users/user/.openclaw/transcripts/2026-05-22/standup/summary.md
|
||||
```
|
||||
|
||||
The output is tab-separated. The columns are selector, start time, title, and
|
||||
summary path. The selector is the safest value to pass back to `show` or `path`.
|
||||
The selector is the safest value to pass back to `show` or `path`.
|
||||
|
||||
`list --json` prints objects with:
|
||||
`list --json` returns objects with `sessionId`, `selector`, `date`, `title`,
|
||||
`startedAt`, `stoppedAt`, `source`, `path`, `summaryPath`, `hasSummary`.
|
||||
|
||||
- `sessionId`
|
||||
- `selector`
|
||||
- `date`
|
||||
- `title`
|
||||
- `startedAt`
|
||||
- `stoppedAt`
|
||||
- `source`
|
||||
- `path`
|
||||
- `summaryPath`
|
||||
- `hasSummary`
|
||||
`show --json` returns the stored session metadata, selector, session
|
||||
directory, summary path, and summary Markdown text.
|
||||
|
||||
`show --json` returns the stored session metadata, selector, session directory,
|
||||
summary path, and summary Markdown text. `path --json` returns the selected path
|
||||
and whether that file exists.
|
||||
`path --json` returns the selected path and whether that file exists.
|
||||
|
||||
## Many meetings per day
|
||||
## Many sessions per day
|
||||
|
||||
Transcripts groups sessions by date, then by session id. Ten meetings on one
|
||||
day become ten sibling folders:
|
||||
Sessions group by date, then by session id. Ten meetings on one day become
|
||||
ten sibling folders:
|
||||
|
||||
```text
|
||||
~/.openclaw/transcripts/2026-05-22/
|
||||
@@ -100,23 +89,24 @@ day become ten sibling folders:
|
||||
standup/
|
||||
```
|
||||
|
||||
Use default generated ids for most automation. Use a fixed id such as `standup`
|
||||
only when the same id will not be used twice on the same date.
|
||||
Use default generated ids for automation. Use a fixed id like `standup` only
|
||||
when it will not repeat on the same date.
|
||||
|
||||
## Missing summaries
|
||||
|
||||
Live sessions write `summary.md` when the session stops. Imported transcripts
|
||||
write `summary.md` immediately after import. A session can still appear in
|
||||
`list` without a summary when capture is active, a provider failed during stop,
|
||||
or metadata was written before any utterances arrived.
|
||||
Live sessions write `summary.md` when the session stops; imported transcripts
|
||||
write it immediately after import. A session can appear in `list` without a
|
||||
summary while capture is still active, if a provider failed during stop, or if
|
||||
metadata was written before any utterances arrived.
|
||||
|
||||
Use `path <session> --transcript` to inspect the append-only transcript, and use
|
||||
the `transcripts` tool action `summarize` to regenerate the Markdown summary.
|
||||
Use `path <session> --transcript` to inspect the raw append-only transcript,
|
||||
or run the `transcripts` tool's `summarize` action to regenerate the Markdown
|
||||
summary.
|
||||
|
||||
## Configuration
|
||||
|
||||
Transcript capture is opt-in because live sources can join and record meeting
|
||||
audio. Enable the tool with top-level `transcripts.enabled`:
|
||||
Capture is opt-in (live sources can join and record meeting audio). Enable it
|
||||
with:
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -127,8 +117,14 @@ audio. Enable the tool with top-level `transcripts.enabled`:
|
||||
}
|
||||
```
|
||||
|
||||
Configure auto-start sources with `transcripts.autoStart` in `openclaw.json`.
|
||||
Each entry is enabled by being present; omit an entry to disable that source.
|
||||
- `enabled` (default `false`): turn the tool on.
|
||||
- `maxUtterances` (default `2000`, clamped 1-10000): utterance buffer size per
|
||||
session.
|
||||
|
||||
Configure auto-start sources with `transcripts.autoStart`. Each entry is
|
||||
enabled by being present; omit an entry to disable that source. `discord-voice`
|
||||
is the bundled auto-start-capable source and requires `guildId` and
|
||||
`channelId`:
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -139,11 +135,6 @@ Each entry is enabled by being present; omit an entry to disable that source.
|
||||
"providerId": "discord-voice",
|
||||
"guildId": "1234567890",
|
||||
"channelId": "2345678901"
|
||||
},
|
||||
{
|
||||
"providerId": "slack-huddle",
|
||||
"accountId": "workspace",
|
||||
"channelId": "C123"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user