diff --git a/docs/channels/telegram.md b/docs/channels/telegram.md index a0c679988d3..37be3bf1111 100644 --- a/docs/channels/telegram.md +++ b/docs/channels/telegram.md @@ -782,6 +782,11 @@ openclaw message poll --channel telegram --target -1001234567890:topic:42 \ - `--poll-public` - `--thread-id` for forum topics (or use a `:topic:` target) + Telegram send also supports: + + - `--buttons` for inline keyboards when `channels.telegram.capabilities.inlineButtons` allows it + - `--force-document` to send outbound images and GIFs as documents instead of compressed photo or animated-media uploads + Action gating: - `channels.telegram.actions.sendMessage=false` disables outbound Telegram messages, including polls diff --git a/docs/cli/gateway.md b/docs/cli/gateway.md index 96367774948..16b05baefce 100644 --- a/docs/cli/gateway.md +++ b/docs/cli/gateway.md @@ -95,6 +95,7 @@ openclaw gateway health --url ws://127.0.0.1:18789 ```bash openclaw gateway status openclaw gateway status --json +openclaw gateway status --require-rpc ``` Options: @@ -105,11 +106,13 @@ Options: - `--timeout `: probe timeout (default `10000`). - `--no-probe`: skip the RPC probe (service-only view). - `--deep`: scan system-level services too. +- `--require-rpc`: exit non-zero when the RPC probe fails. Cannot be combined with `--no-probe`. Notes: - `gateway status` resolves configured auth SecretRefs for probe auth when possible. - If a required auth SecretRef is unresolved in this command path, probe auth can fail; pass `--token`/`--password` explicitly or resolve the secret source first. +- Use `--require-rpc` in scripts and automation when a listening service is not enough and you need the Gateway RPC itself to be healthy. - On Linux systemd installs, service auth drift checks read both `Environment=` and `EnvironmentFile=` values from the unit (including `%h`, quoted paths, multiple files, and optional `-` files). ### `gateway probe` diff --git a/docs/cli/index.md b/docs/cli/index.md index 2796e7927d2..ddedc7ca1aa 100644 --- a/docs/cli/index.md +++ b/docs/cli/index.md @@ -780,7 +780,7 @@ Subcommands: Notes: - `gateway status` probes the Gateway RPC by default using the service’s resolved port/config (override with `--url/--token/--password`). -- `gateway status` supports `--no-probe`, `--deep`, and `--json` for scripting. +- `gateway status` supports `--no-probe`, `--deep`, `--require-rpc`, and `--json` for scripting. - `gateway status` also surfaces legacy or extra gateway services when it can detect them (`--deep` adds system-level scans). Profile-named OpenClaw services are treated as first-class and aren't flagged as "extra". - `gateway status` prints which config path the CLI uses vs which config the service likely uses (service env), plus the resolved probe target URL. - On Linux systemd installs, status token-drift checks include both `Environment=` and `EnvironmentFile=` unit sources. diff --git a/docs/cli/message.md b/docs/cli/message.md index 195e884a01d..1633554f316 100644 --- a/docs/cli/message.md +++ b/docs/cli/message.md @@ -59,6 +59,7 @@ Name lookup: - Required: `--target`, plus `--message` or `--media` - Optional: `--media`, `--reply-to`, `--thread-id`, `--gif-playback` - Telegram only: `--buttons` (requires `channels.telegram.capabilities.inlineButtons` to allow it) + - Telegram only: `--force-document` (send images and GIFs as documents to avoid Telegram compression) - Telegram only: `--thread-id` (forum topic id) - Slack only: `--thread-id` (thread timestamp; `--reply-to` uses the same field) - WhatsApp only: `--gif-playback` @@ -258,3 +259,10 @@ Send Telegram inline buttons: openclaw message send --channel telegram --target @mychat --message "Choose:" \ --buttons '[ [{"text":"Yes","callback_data":"cmd:yes"}], [{"text":"No","callback_data":"cmd:no"}] ]' ``` + +Send a Telegram image as a document to avoid compression: + +```bash +openclaw message send --channel telegram --target @mychat \ + --media ./diagram.png --force-document +``` diff --git a/docs/concepts/memory.md b/docs/concepts/memory.md index 8ed755b394c..2649125dc45 100644 --- a/docs/concepts/memory.md +++ b/docs/concepts/memory.md @@ -23,6 +23,8 @@ The default workspace layout uses two memory layers: - Read today + yesterday at session start. - `MEMORY.md` (optional) - Curated long-term memory. + - If both `MEMORY.md` and `memory.md` exist at the workspace root, OpenClaw only loads `MEMORY.md`. + - Lowercase `memory.md` is only used as a fallback when `MEMORY.md` is absent. - **Only load in the main, private session** (never in group contexts). These files live under the workspace (`agents.defaults.workspace`, default diff --git a/docs/help/faq.md b/docs/help/faq.md index 37f5f96c815..236097634c1 100644 --- a/docs/help/faq.md +++ b/docs/help/faq.md @@ -1358,7 +1358,8 @@ Your **workspace** (AGENTS.md, memory files, skills, etc.) is separate and confi These files live in the **agent workspace**, not `~/.openclaw`. - **Workspace (per agent)**: `AGENTS.md`, `SOUL.md`, `IDENTITY.md`, `USER.md`, - `MEMORY.md` (or `memory.md`), `memory/YYYY-MM-DD.md`, optional `HEARTBEAT.md`. + `MEMORY.md` (or legacy fallback `memory.md` when `MEMORY.md` is absent), + `memory/YYYY-MM-DD.md`, optional `HEARTBEAT.md`. - **State dir (`~/.openclaw`)**: config, credentials, auth profiles, sessions, logs, and shared skills (`~/.openclaw/skills`). diff --git a/docs/reference/AGENTS.default.md b/docs/reference/AGENTS.default.md index 6e2869403f5..7427f53c071 100644 --- a/docs/reference/AGENTS.default.md +++ b/docs/reference/AGENTS.default.md @@ -48,7 +48,8 @@ cp docs/reference/AGENTS.default.md ~/.openclaw/workspace/AGENTS.md ## Session start (required) -- Read `SOUL.md`, `USER.md`, `memory.md`, and today+yesterday in `memory/`. +- Read `SOUL.md`, `USER.md`, and today+yesterday in `memory/`. +- Read `MEMORY.md` when present; only fall back to lowercase `memory.md` when `MEMORY.md` is absent. - Do it before responding. ## Soul (required) @@ -65,8 +66,9 @@ cp docs/reference/AGENTS.default.md ~/.openclaw/workspace/AGENTS.md ## Memory system (recommended) - Daily log: `memory/YYYY-MM-DD.md` (create `memory/` if needed). -- Long-term memory: `memory.md` for durable facts, preferences, and decisions. -- On session start, read today + yesterday + `memory.md` if present. +- Long-term memory: `MEMORY.md` for durable facts, preferences, and decisions. +- Lowercase `memory.md` is legacy fallback only; do not keep both root files on purpose. +- On session start, read today + yesterday + `MEMORY.md` when present, otherwise `memory.md`. - Capture: decisions, preferences, constraints, open loops. - Avoid secrets unless explicitly requested.