openclaw - 💡(How to fix) Fix [Bug]: sqlite-vec fails to load on Node 22 Linux x64 (Vector store: unknown, distinct from #64776 and #65033)

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

On Ubuntu 24.04 with Node v22.22.2, the sqlite-vec extension fails to load during gateway runtime, resulting in "Vector store: unknown" and memory_search returning 0 hits.

Root Cause

Root cause appears in loadSqliteVecExtension() ESM import fallback chain in bundled runtime. This is NOT the same as #64776 (macOS, CLI worked) or #65033 (Node 24 specific).

Code Example

Key diagnostic: vec0.so loads fine in Node 22's node:sqlite manually:
  const { DatabaseSync } = require('node:sqlite');
  const db = new DatabaseSync(':memory:', { allowExtension: true });
  db.loadExtension('/path/to/vec0.so'); // WORKS ✅

Root cause appears in loadSqliteVecExtension() ESM import fallback chain in bundled runtime.
This is NOT the same as #64776 (macOS, CLI worked) or #65033 (Node 24 specific).
RAW_BUFFERClick to expand / collapse

Bug type

Behavior bug (incorrect output/state without crash)

Beta release blocker

No

Summary

On Ubuntu 24.04 with Node v22.22.2, the sqlite-vec extension fails to load during gateway runtime, resulting in "Vector store: unknown" and memory_search returning 0 hits.

Steps to reproduce

  1. Install OpenClaw 2026.5.28 on Ubuntu 24.04.4 LTS (Proxmox VM) with Node.js v22.22.2
  2. Configure memorySearch with any embedding provider (e.g., DashScope text-embedding-v4)
  3. Run openclaw memory status → "Vector store: unknown"
  4. Memory index completes (645 chunks), but memory_search returns 0 hits

Expected behavior

The sqlite-vec extension loads successfully during gateway runtime, "Vector store" shows "sqlite-vec" as the vector backend, and memory_search returns vector similarity results matching the stored embeddings.

Actual behavior

"Vector store: unknown" for all agents despite sqlite-vec v0.1.9 (linux-x64 vec0.so) present. memory_search returns 0 hits. vec0.so binary is valid (ldd passes). Setting store.vector.extensionPath does NOT fix the issue.

OpenClaw version

OpenClaw version: 2026.5.28 (e932160)

Operating system

Ubuntu 24.04.4 LTS, Linux 7.0.2-7-pve, x86_64

Install method

npm global

Model

Qwen3.6-27B

Provider / routing chain

Default config → dashscope (Alibaba/text-embedding-v4) via dashscope.aliyuncs.com Note: embedding API works fine (DashScope returns vectors); the failure is in local sqlite-vec extension loading

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Key diagnostic: vec0.so loads fine in Node 22's node:sqlite manually:
  const { DatabaseSync } = require('node:sqlite');
  const db = new DatabaseSync(':memory:', { allowExtension: true });
  db.loadExtension('/path/to/vec0.so'); // WORKS ✅

Root cause appears in loadSqliteVecExtension() ESM import fallback chain in bundled runtime.
This is NOT the same as #64776 (macOS, CLI worked) or #65033 (Node 24 specific).

Impact and severity

No response

Additional information

No response

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

The sqlite-vec extension loads successfully during gateway runtime, "Vector store" shows "sqlite-vec" as the vector backend, and memory_search returns vector similarity results matching the stored embeddings.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix [Bug]: sqlite-vec fails to load on Node 22 Linux x64 (Vector store: unknown, distinct from #64776 and #65033)