Skip to content

Docs claim Node.js 18+ is required, but node:sqlite requires Node.js 22.5+ — crashes on Node 20 #357

Description

@escharmony

What happened?

The Getting Started docs state that Node.js 18 or higher is required. However, cline (Cline Kanban) fails to start on Node.js 20 because it internally tries to load node:sqlite, a built-in module that was only introduced in Node.js 22.5.0.

The app falls back to file-based session storage, but then immediately crashes with ECOMPROMISED lock errors, making it completely unusable on Node 20.

Error output:

SQLite session persistence unavailable, falling back to file-based session storage. Error [ERR_UNKNOWN_BUILTIN_MODULE]: No such built-in module: node:sqlite
    at Module._load (node:internal/modules/cjs/loader:1031:13)
    ...
    code: 'ERR_UNKNOWN_BUILTIN_MODULE'

Error: Unable to update lock within the stale threshold
    ...
    code: 'ECOMPROMISED'

Fix needed: Either update the docs to state Node.js 22.5+ is required, or implement a fallback that actually works on Node 18/20.

Steps to reproduce

  1. Install Node.js 20 (e.g. via Homebrew: brew install node@20)
    2. Install Cline Kanban globally: npm i -g cline
    3. cd into any git repository
    4. Run cline
    5. Observe the crash in terminal output

Expected behavior

Cline Kanban should either work correctly on Node.js 18+ as documented, or the docs should be updated to reflect the actual minimum required version (Node.js 22.5+, when node:sqlite was introduced).

Kanban version

1.6.2

Environment

macOS 12.7.5, Node 20

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions