Benjamin Jesuiter
1861e76360
Memory: clamp QMD citations to injected budget
2026-02-02 23:45:05 -08:00
Benjamin Jesuiter
c248da0317
Memory: harden QMD memory_get path checks
2026-02-02 23:45:05 -08:00
Benjamin Jesuiter
b7f4755020
Memory: fix QMD scope channel parsing
2026-02-02 23:45:05 -08:00
Benjamin Jesuiter
3e82cbd55b
Memory: parse quoted qmd command
2026-02-02 23:45:05 -08:00
Benjamin Jesuiter
11a968f5c3
Docs: align QMD state dir with OpenClaw
2026-02-02 23:45:05 -08:00
Benjamin Jesuiter
5d8c665baf
Tests: use OPENCLAW_STATE_DIR in qmd manager
2026-02-02 23:45:05 -08:00
vignesh07
9df78b3379
fix(memory/qmd): throttle embed + citations auto + restore --force
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
20578da204
Add how to trigger model downloads for qmd in documentation
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
564fe6f089
fix(memory-qmd): create collections via qmd CLI (no YAML)
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
dd8373a424
fix(memory-qmd): write XDG index.yml + legacy compat
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
9be3c27bb7
fix(qmd): use XDG dirs for qmd home; drop ollama docs
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
e12184661e
Fix build errors
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
3a57106c1e
Add more tests; make fall back more resilient and visible
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
2c30ba400b
Make memory more resilient to failure
2026-02-02 23:45:05 -08:00
Vignesh Natarajan
5d3af3bc62
feat (memory): Implement new (opt-in) QMD memory backend
2026-02-02 23:45:05 -08:00
Shakker
e9f182def7
fix: error handling in restore failure reporting
2026-02-03 06:22:51 +00:00
Shakker
1b31e2f345
Onboarding/TUI: prevent prompt overlap and auto-open
...
- Stop onboarding output once TUI launches
- Avoid background Web UI open on TUI path
- Restore terminal state on exit
- Add terminal restore helper
2026-02-03 06:18:33 +00:00
Shakker
58d5b39c9a
Onboarding: keep TUI flow exclusive
2026-02-03 06:11:11 +00:00
Shakker
157d6d2db7
CLI: restore terminal state on exit
2026-02-03 06:10:19 +00:00
Tak Hoffman
d5593d647c
chore: fix formatting
2026-02-02 22:58:04 -06:00
Tak Hoffman
83715eca49
Security: tune bootstrap healthcheck prompt + healthcheck wording
2026-02-02 22:33:43 -06:00
Gustavo Madeira Santana
7dfa99a6f7
chore: fix formatting
2026-02-02 21:49:15 -05:00
Gustavo Madeira Santana
ac2b71f240
chore: fix CI
2026-02-02 21:44:31 -05:00
Tak Hoffman
578bde1e0d
Security: healthcheck skill ( #7641 ) (thanks @Takhoffman)
2026-02-02 20:36:58 -06:00
Tak Hoffman
e2c03845c7
Security: refine healthcheck workflow
2026-02-02 20:36:58 -06:00
Tak Hoffman
1523ef2494
Security: remove openclaw-system-admin skill path
2026-02-02 20:36:58 -06:00
Tak Hoffman
cdec53b22b
Security: rename openclaw-system-admin skill to healthcheck
2026-02-02 20:36:58 -06:00
Tak Hoffman
a6afcb4c1d
Security: new openclaw-system-admin skill + bootstrap audit
2026-02-02 20:36:58 -06:00
Gustavo Madeira Santana
2a68bcbeb3
feat(ui): add Agents dashboard
2026-02-02 21:31:17 -05:00
Aldo
c8af8e9555
Docs: clarify whats new FAQ heading ( #7394 )
2026-02-02 21:16:31 -05:00
cpojer
e77988f747
chore: Fix CI.
2026-02-03 10:25:32 +09:00
Peter Steinberger
96ad19a627
style(ui): format resizable divider
2026-02-02 17:01:17 -08:00
Peter Steinberger
fe81b1d712
fix(gateway): require shared auth before device bypass
2026-02-02 16:56:38 -08:00
Peter Steinberger
d1ecb46076
fix: harden exec allowlist parsing
2026-02-02 16:53:15 -08:00
Peter Steinberger
fff59da962
fix(slack): fail closed on slash command channel type lookup
2026-02-02 16:53:07 -08:00
cpojer
9e3ea2687c
chore: Update deps.
2026-02-03 09:09:03 +09:00
Shakker
cfd6b21d0e
fix: repair malformed tool calls and session transcripts ( #7473 ) (thanks @justinhuangcode)
2026-02-02 23:56:27 +00:00
Shakker
118507953b
Docs: simplify transcript hygiene scope
2026-02-02 23:56:27 +00:00
Shakker
befa421a57
Agents: flush pending tool results on drop
2026-02-02 23:56:27 +00:00
Shakker
e6fdac7bfb
Agents: harden session file repair
2026-02-02 23:56:27 +00:00
Justin
67f90dae54
Agents: fix lint in tool-call sanitizers
2026-02-02 23:56:27 +00:00
Justin
31face5740
Changelog: note tool call repair
2026-02-02 23:56:27 +00:00
Justin
0da6de6624
Agent: repair malformed tool calls and session files
2026-02-02 23:56:27 +00:00
Tak Hoffman
0eae9f456c
Docs: fix compatibility shim note
2026-02-02 17:22:22 -06:00
Shakker
561a10c491
fix(telegram): recover from grammY long-poll timeouts ( #7466 ) (thanks @macmimi23)
2026-02-02 22:38:57 +00:00
mac mimi
c6b4de520a
fix(telegram): recover from grammY "timed out" long-poll errors ( #7239 )
...
grammY getUpdates returns "Request to getUpdates timed out after 500 seconds"
but RECOVERABLE_MESSAGE_SNIPPETS only had "timeout". Since
"timed out".includes("timeout") === false, the error was not classified as
recoverable, causing the polling loop to exit permanently.
Add "timed out" to RECOVERABLE_MESSAGE_SNIPPETS so the polling loop retries
instead of dying silently.
Fixes #7239
Fixes #7255
2026-02-02 22:37:22 +00:00
Ji
f49297e2c1
fix: skip audio files from text extraction to prevent binary processing ( #7475 )
...
* fix: skip audio files from text extraction early
Audio files should not be processed through extractFileBlocks for text
extraction - they are handled by the dedicated audio transcription
capability (STT).
Previously, audio files were only skipped if they didn't "look like text"
(looksLikeUtf8Text check). This caused issues where some audio binary
data (e.g., long Telegram voice messages) could accidentally pass the
heuristic check and get processed as text content.
This fix:
1. Adds audio to the early skip alongside image/video (more efficient)
2. Removes the redundant secondary check that had the flawed condition
Fixes audio binary being incorrectly processed as text in Telegram and
other platforms.
* Media: skip binary media in file extraction (#7475 ) (thanks @AlexZhangji)
---------
Co-authored-by: Shakker <shakkerdroid@gmail.com>
2026-02-02 22:20:04 +00:00
bqcfjwhz85-arch
966228a6a9
fix(tools): ensure file_path alias passes validation in read/write tools ( #7451 )
...
Co-authored-by: lotusfall <lotusfall@outlook.com>
2026-02-02 21:33:36 +00:00
Shakker
5fb8f779ca
fix: validate AbortSignal instances before calling AbortSignal.any() ( #7277 ) (thanks @Elarwei001)
2026-02-02 20:42:40 +00:00
Elarwei
88e29c728c
refactor: use structural typing instead of instanceof for AbortSignal check
...
Address P1 review feedback from Greptile: instanceof AbortSignal may be
unreliable across different realms (VM, iframe, etc.) where the AbortSignal
constructor may differ. Use structural typing (checking for aborted property
and addEventListener method) for more robust cross-realm compatibility.
2026-02-02 20:42:40 +00:00