-
-
Notifications
You must be signed in to change notification settings - Fork 52.6k
Description
Summary\n\nOn my self-hosted OpenClaw 2026.2.17 (stable, npm global install), setting to passes ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██
██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██
██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
🦞 OPENCLAW 🦞
┌ OpenClaw doctor
│
◇ Session locks ──────────────────────────────────────────────────────────────╮
│ │
│ - Found 1 session lock file. │
│ - ~/.openclaw/agents/filin/sessions/c8c8dec8-b847-4ae7-9302-f755e9ff8fce.j │
│ sonl.lock │
│ pid=111913 (alive) age=25s stale=no │
│ │
├──────────────────────────────────────────────────────────────────────────────╯
│
◇ Security ─────────────────────────────────╮
│ │
│ - No channel security warnings detected. │
│ - Run: openclaw security audit --deep │
│ │
├────────────────────────────────────────────╯
│
◇ Skills status ────────────╮
│ │
│ Eligible: 10 │
│ Missing requirements: 43 │
│ Blocked by allowlist: 0 │
│ │
├────────────────────────────╯
│
◇ Plugins ──────╮
│ │
│ Loaded: 5 │
│ Disabled: 31 │
│ Errors: 0 │
│ │
├────────────────╯
│
◇ Memory search ──────────────────────────────────────────────────────────╮
│ │
│ Memory search is enabled but no embedding provider is configured. │
│ Semantic recall will not work without an embedding provider. │
│ │
│ Fix (pick one): │
│ - Set OPENAI_API_KEY or GEMINI_API_KEY in your environment │
│ - Add credentials: openclaw auth add --provider openai │
│ - For local embeddings: configure │
│ agents.defaults.memorySearch.provider and local model path │
│ - To disable: openclaw config set agents.defaults.memorySearch.enabled │
│ false │
│ │
│ Verify: openclaw memory status --deep │
│ │
├──────────────────────────────────────────────────────────────────────────╯
Telegram: ok (@owl59_bot) (73ms)
Agents: filin (default), arina, ksenia
Heartbeat interval: 30m (filin)
Session store (filin): /root/.openclaw/agents/filin/sessions/sessions.json (15 entries)
- agent:filin:telegram:direct:1304329396 (0m ago)
- agent:filin:main (0m ago)
- agent:filin:cron:53dc82fe-3f7d-40c6-877b-b689f2ee4cf2 (6m ago)
- agent:filin:cron:53dc82fe-3f7d-40c6-877b-b689f2ee4cf2:run:7bc220d4-e8c4-4a55-9f3b-fd80c7051404 (6m ago)
- agent:filin:cron:e25a3f41-75a0-4cac-b7fc-bbc788e35709 (6m ago)
Run "openclaw doctor --fix" to apply changes.
│
└ Doctor complete. but DM reactions to the bot do not surface as events to the agent. From the agent's perspective, nothing changes when a user reacts to a message in a direct Telegram chat.\n\n## Environment\n\n- OpenClaw: 2026.2.17 (stable)\n- Install:
added 4 packages, removed 12 packages, and changed 670 packages in 3m
125 packages are looking for funding
run npm fund for details on Ubuntu 24.04 (VPS)\n- Gateway: , \n- Channel: Telegram, bot in direct DM with a single user (no groups)\n- Config snippet:\n\n\n\n▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██
██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██
██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
🦞 OPENCLAW 🦞
┌ OpenClaw doctor
│
◇ Session locks ──────────────────────────────────────────────────────────────╮
│ │
│ - Found 1 session lock file. │
│ - ~/.openclaw/agents/filin/sessions/c8c8dec8-b847-4ae7-9302-f755e9ff8fce.j │
│ sonl.lock │
│ pid=111913 (alive) age=2m57s stale=no │
│ │
├──────────────────────────────────────────────────────────────────────────────╯
│
◇ Security ─────────────────────────────────╮
│ │
│ - No channel security warnings detected. │
│ - Run: openclaw security audit --deep │
│ │
├────────────────────────────────────────────╯
│
◇ Skills status ────────────╮
│ │
│ Eligible: 10 │
│ Missing requirements: 43 │
│ Blocked by allowlist: 0 │
│ │
├────────────────────────────╯
│
◇ Plugins ──────╮
│ │
│ Loaded: 5 │
│ Disabled: 31 │
│ Errors: 0 │
│ │
├────────────────╯
│
◇ Memory search ──────────────────────────────────────────────────────────╮
│ │
│ Memory search is enabled but no embedding provider is configured. │
│ Semantic recall will not work without an embedding provider. │
│ │
│ Fix (pick one): │
│ - Set OPENAI_API_KEY or GEMINI_API_KEY in your environment │
│ - Add credentials: openclaw auth add --provider openai │
│ - For local embeddings: configure │
│ agents.defaults.memorySearch.provider and local model path │
│ - To disable: openclaw config set agents.defaults.memorySearch.enabled │
│ false │
│ │
│ Verify: openclaw memory status --deep │
│ │
├──────────────────────────────────────────────────────────────────────────╯
Telegram: not configured
Agents: main (default)
Heartbeat interval: 30m (main)
Session store (main): /root/.openclaw/agents/main/sessions/sessions.json (1 entries)
- agent:main:main (10105m ago)
Run "openclaw doctor --fix" to apply changes.
│
└ Doctor complete. reports no config errors, and OpenClaw status
Overview
┌─────────────────┬───────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Item │ Value │
├─────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Dashboard │ http://127.0.0.1:18789/ │
│ OS │ linux 6.8.0-100-generic (x64) · node 25.6.1 │
│ Tailscale │ off │
│ Channel │ stable (default) │
│ Update │ pnpm · npm latest 2026.2.17 │
│ Gateway │ local · ws://127.0.0.1:18789 (local loopback) · reachable 10ms · auth token · 387900.fuckthem. │
│ │ cloud (192.124.189.44) app 2026.2.9 linux 6.8.0-100-generic │
│ Gateway service │ systemd installed · enabled · running (pid 111913, state active) │
│ Node service │ systemd not installed │
│ Agents │ 3 · 3 bootstrapping · sessions 24 · default filin active 3m ago │
│ Memory │ 0 files · 0 chunks · sources memory · plugin memory-core · vector unknown · fts ready · cache on │
│ │ (0) │
│ Probes │ skipped (use --deep) │
│ Events │ none │
│ Heartbeat │ 30m (filin), disabled (arina), disabled (ksenia) │
│ Sessions │ 24 active · default gpt-5.1 (272k ctx) · 3 stores │
└─────────────────┴───────────────────────────────────────────────────────────────────────────────────────────────────┘
Security audit
Summary: 0 critical · 2 warn · 1 info
WARN Reverse proxy headers are not trusted
gateway.bind is loopback and gateway.trustedProxies is empty. If you expose the Control UI through a reverse proxy, configure trusted proxies so local-client c…
Fix: Set gateway.trustedProxies to your proxy IPs or keep the Control UI local-only.
WARN Some gateway.nodes.denyCommands entries are ineffective
gateway.nodes.denyCommands uses exact command-name matching only. - Unknown command names (not in defaults/allowCommands): camera.snap, camera.clip, screen.rec…
Fix: Use exact command names (for example: canvas.present, canvas.hide, canvas.navigate, canvas.eval, canvas.snapshot, canvas.a2ui.push, canvas.a2ui.pushJSONL, canvas.a2ui.reset). If you need broader restrictions, remove risky commands from allowCommands/default workflows.
Full report: openclaw security audit
Deep probe: openclaw security audit --deep
Channels
┌──────────┬─────────┬────────┬───────────────────────────────────────────────────────────────────────────────────────┐
│ Channel │ Enabled │ State │ Detail │
├──────────┼─────────┼────────┼───────────────────────────────────────────────────────────────────────────────────────┤
│ Telegram │ ON │ OK │ token config (8459…9av4 · len 46) · accounts 1/1 │
└──────────┴─────────┴────────┴───────────────────────────────────────────────────────────────────────────────────────┘
Sessions
┌─────────────────────────────────────────────────────────────────┬────────┬─────────┬──────────────┬─────────────────┐
│ Key │ Kind │ Age │ Model │ Tokens │
├─────────────────────────────────────────────────────────────────┼────────┼─────────┼──────────────┼─────────────────┤
│ agent:filin:telegram:direct:130… │ direct │ 3m ago │ gpt-5.1 │ 176k/272k (65%) │
│ agent:filin:main │ direct │ 3m ago │ gpt-5.1 │ 50k/400k (13%) │
│ agent:filin:cron:53dc82fe-3f7d-… │ direct │ 8m ago │ gpt-5.1 │ 8.8k/272k (3%) │
│ agent:filin:cron:53dc82fe-3f7d-… │ direct │ 8m ago │ gpt-5.1 │ 8.8k/272k (3%) │
│ agent:filin:cron:e25a3f41-75a0-… │ direct │ 9m ago │ gpt-5.1 │ 9.0k/272k (3%) │
│ agent:filin:cron:e25a3f41-75a0-… │ direct │ 9m ago │ gpt-5.1 │ 9.0k/272k (3%) │
│ agent:filin:cron:3bbeac36-a4b4-… │ direct │ 9m ago │ gpt-5.1 │ 9.3k/272k (3%) │
│ agent:filin:cron:3bbeac36-a4b4-… │ direct │ 9m ago │ gpt-5.1 │ 9.3k/272k (3%) │
│ agent:filin:cron:5c253ede-540b-… │ direct │ 11m ago │ gpt-5.2 │ 93k/272k (34%) │
│ agent:filin:cron:5c253ede-540b-… │ direct │ 11m ago │ gpt-5.2 │ 93k/272k (34%) │
└─────────────────────────────────────────────────────────────────┴────────┴─────────┴──────────────┴─────────────────┘
FAQ: https://docs.openclaw.ai/faq
Troubleshooting: https://docs.openclaw.ai/troubleshooting
Next steps:
Need to share? openclaw status --all
Need to debug live? openclaw logs --follow
Need to test channels? openclaw status --deep shows Telegram as .\n\n## Expected behavior\n\nWith in a Telegram DM, I expect that:\n\n- Reactions to messages sent by the bot in that DM are exposed to the agent as events (e.g. system messages / event hooks), so the agent can see that the user reacted with 👍/❤️/etc.\n- The agent can distinguish between "no response" and "user reacted to an existing message".\n\n## Actual behavior\n\nIn practice, after enabling and restarting the gateway:\n\n- The DM works as usual (messages in/out),\n- ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██
██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██
██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
🦞 OPENCLAW 🦞
┌ OpenClaw doctor
│
◇ Session locks ──────────────────────────────────────────────────────────────╮
│ │
│ - Found 1 session lock file. │
│ - ~/.openclaw/agents/filin/sessions/c8c8dec8-b847-4ae7-9302-f755e9ff8fce.j │
│ sonl.lock │
│ pid=111913 (alive) age=3m0s stale=no │
│ │
├──────────────────────────────────────────────────────────────────────────────╯
│
◇ Security ─────────────────────────────────╮
│ │
│ - No channel security warnings detected. │
│ - Run: openclaw security audit --deep │
│ │
├────────────────────────────────────────────╯
│
◇ Skills status ────────────╮
│ │
│ Eligible: 10 │
│ Missing requirements: 43 │
│ Blocked by allowlist: 0 │
│ │
├────────────────────────────╯
│
◇ Plugins ──────╮
│ │
│ Loaded: 5 │
│ Disabled: 31 │
│ Errors: 0 │
│ │
├────────────────╯
│
◇ Memory search ──────────────────────────────────────────────────────────╮
│ │
│ Memory search is enabled but no embedding provider is configured. │
│ Semantic recall will not work without an embedding provider. │
│ │
│ Fix (pick one): │
│ - Set OPENAI_API_KEY or GEMINI_API_KEY in your environment │
│ - Add credentials: openclaw auth add --provider openai │
│ - For local embeddings: configure │
│ agents.defaults.memorySearch.provider and local model path │
│ - To disable: openclaw config set agents.defaults.memorySearch.enabled │
│ false │
│ │
│ Verify: openclaw memory status --deep │
│ │
├──────────────────────────────────────────────────────────────────────────╯
Telegram: ok (@owl59_bot) (18ms)
Agents: filin (default), arina, ksenia
Heartbeat interval: 30m (filin)
Session store (filin): /root/.openclaw/agents/filin/sessions/sessions.json (15 entries)
- agent:filin:telegram:direct:1304329396 (3m ago)
- agent:filin:main (3m ago)
- agent:filin:cron:53dc82fe-3f7d-40c6-877b-b689f2ee4cf2 (8m ago)
- agent:filin:cron:53dc82fe-3f7d-40c6-877b-b689f2ee4cf2:run:7bc220d4-e8c4-4a55-9f3b-fd80c7051404 (8m ago)
- agent:filin:cron:e25a3f41-75a0-4cac-b7fc-bbc788e35709 (9m ago)
Run "openclaw doctor --fix" to apply changes.
│
└ Doctor complete. and OpenClaw security audit
Summary: 0 critical · 2 warn · 1 info
Run deeper: openclaw security audit --deep
WARN
gateway.trusted_proxies_missing Reverse proxy headers are not trusted
gateway.bind is loopback and gateway.trustedProxies is empty. If you expose the Control UI through a reverse proxy, configure trusted proxies so local-client checks cannot be spoofed.
Fix: Set gateway.trustedProxies to your proxy IPs or keep the Control UI local-only.
gateway.nodes.deny_commands_ineffective Some gateway.nodes.denyCommands entries are ineffective
gateway.nodes.denyCommands uses exact command-name matching only.
- Unknown command names (not in defaults/allowCommands): camera.snap, camera.clip, screen.record, calendar.add, contacts.add, reminders.add
Fix: Use exact command names (for example: canvas.present, canvas.hide, canvas.navigate, canvas.eval, canvas.snapshot, canvas.a2ui.push, canvas.a2ui.pushJSONL, canvas.a2ui.reset). If you need broader restrictions, remove risky commands from allowCommands/default workflows.
INFO
summary.attack_surface Attack surface summary
groups: open=0, allowlist=1
tools.elevated: enabled
hooks.webhooks: disabled
hooks.internal: enabled
browser control: enabled remain clean,\n- but when the user reacts to a bot message in that DM, no event surfaces to the agent in this session — there is no visible signal that a reaction happened.\n\nFrom the agent's perspective, it's indistinguishable from no reaction at all.\n\n## Steps to reproduce\n\n1. Set as in the snippet above.\n2. Run ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██
██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██
██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
🦞 OPENCLAW 🦞
┌ OpenClaw doctor
│
◇ Session locks ──────────────────────────────────────────────────────────────╮
│ │
│ - Found 1 session lock file. │
│ - ~/.openclaw/agents/filin/sessions/c8c8dec8-b847-4ae7-9302-f755e9ff8fce.j │
│ sonl.lock │
│ pid=111913 (alive) age=3m2s stale=no │
│ │
├──────────────────────────────────────────────────────────────────────────────╯
│
◇ Security ─────────────────────────────────╮
│ │
│ - No channel security warnings detected. │
│ - Run: openclaw security audit --deep │
│ │
├────────────────────────────────────────────╯
│
◇ Skills status ────────────╮
│ │
│ Eligible: 10 │
│ Missing requirements: 43 │
│ Blocked by allowlist: 0 │
│ │
├────────────────────────────╯
│
◇ Plugins ──────╮
│ │
│ Loaded: 5 │
│ Disabled: 31 │
│ Errors: 0 │
│ │
├────────────────╯
│
◇ Memory search ──────────────────────────────────────────────────────────╮
│ │
│ Memory search is enabled but no embedding provider is configured. │
│ Semantic recall will not work without an embedding provider. │
│ │
│ Fix (pick one): │
│ - Set OPENAI_API_KEY or GEMINI_API_KEY in your environment │
│ - Add credentials: openclaw auth add --provider openai │
│ - For local embeddings: configure │
│ agents.defaults.memorySearch.provider and local model path │
│ - To disable: openclaw config set agents.defaults.memorySearch.enabled │
│ false │
│ │
│ Verify: openclaw memory status --deep │
│ │
├──────────────────────────────────────────────────────────────────────────╯
Telegram: ok (@owl59_bot) (17ms)
Agents: filin (default), arina, ksenia
Heartbeat interval: 30m (filin)
Session store (filin): /root/.openclaw/agents/filin/sessions/sessions.json (15 entries)
- agent:filin:telegram:direct:1304329396 (3m ago)
- agent:filin:main (3m ago)
- agent:filin:cron:53dc82fe-3f7d-40c6-877b-b689f2ee4cf2 (8m ago)
- agent:filin:cron:53dc82fe-3f7d-40c6-877b-b689f2ee4cf2:run:7bc220d4-e8c4-4a55-9f3b-fd80c7051404 (8m ago)
- agent:filin:cron:e25a3f41-75a0-4cac-b7fc-bbc788e35709 (9m ago)
Run "openclaw doctor --fix" to apply changes.
│
└ Doctor complete. (no errors).\n3. Restart the gateway (Restarted systemd service: openclaw-gateway.service or systemd).\n4. In the Telegram DM with the bot:\n - send a message,\n - get a reply from the bot,\n - add a reaction (e.g. 👍) to the bot's reply.\n5. Observe the agent session: there is no event/signal that a reaction occurred (from the agent's point of view, nothing happened after the reaction).\n\n## Notes / Suggestions\n\n- If is currently only wired for group chats or for a different event path than the main agent session, it would be helpful to clarify this in the docs.\n- Ideally, Telegram DM reactions to bot messages (with ) should show up as a well-defined event type that agents can observe and use (e.g. lightweight "ack" or feedback signal).\n\nHappy to test any fixes or additional logging builds on this VPS setup and report back.