$npx -y skills add ClickHouse/agent-skills --skill clickhouse-js-node-troubleshootingTroubleshoot and resolve common issues with the ClickHouse Node.js client (@clickhouse/client). Use this skill whenever a user reports errors, unexpected behavior, or configuration questions involving the Node.js client specifically — including socket hang-up errors, Keep-Alive p
| 1 | # ClickHouse Node.js Client Troubleshooting |
| 2 | |
| 3 | Reference: https://clickhouse.com/docs/integrations/javascript |
| 4 | |
| 5 | > **⚠️ Node.js runtime only.** This skill covers the `@clickhouse/client` package running in a **Node.js runtime** exclusively — including **Next.js Node runtime** API routes, React Server Components, Server Actions, and standard Node.js processes. Do **not** apply this skill to browser client components, Web Workers, **Next.js Edge runtime**, Cloudflare Workers, or any usage of `@clickhouse/client-web`. For browser/edge environments, the correct package is `@clickhouse/client-web`. |
| 6 | |
| 7 | --- |
| 8 | |
| 9 | ## How to Use This Skill |
| 10 | |
| 11 | 1. **Identify the issue** — match symptoms to the Issue Index below and read the corresponding reference file. |
| 12 | 2. **Lead with the diagnosis** — explain what's likely causing the issue before giving the fix. |
| 13 | 3. **Note version constraints** — flag if a fix requires a minimum client version and check it against what the user provided. |
| 14 | 4. **Ask only what's missing** — if the fix is version-dependent and you don't know their version, ask; otherwise help immediately. |
| 15 | |
| 16 | --- |
| 17 | |
| 18 | ## Issue Index |
| 19 | |
| 20 | Identify the user's issue from the list below and read the corresponding reference file for detailed troubleshooting steps. |
| 21 | |
| 22 | | Issue | Symptoms | Reference file | |
| 23 | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------- | |
| 24 | | **Socket Hang-Up / ECONNRESET** | `socket hang up`, `ECONNRESET`, intermittent connection drops, long-running queries timing out | `reference/socket-hangup.md` | |
| 25 | | **Data Type Mismatches** | Large integers returned as strings, decimal precision loss, Date/DateTime insertion failures, `CANNOT_PARSE_INPUT_ASSERTION_FAILED` inserting a UUID into a `UInt128` column | `reference/data-types.md` | |
| 26 | | **Read-Only User Errors** | Errors when using response compression with `readonly=1` users | `reference/readonly-users.md` | |
| 27 | | **Proxy / Pathname URL Confusion** | Wrong database selected, requests failing behind a proxy with a path prefix | `reference/proxy-pathname.md` | |
| 28 | | **TLS / Certificate Errors** | TLS handshake failures, certificate verification issues, mutual TLS setup | `reference/tls.md` | |
| 29 | | **Compression Not Working** | GZIP compression not activating for requests or responses | `reference/compression.md` | |
| 30 | | **Logging Not Showing Anything** | No log output, need custom logger integration | `reference/logging.md` | |
| 31 | | **Query Parameters Not Interpolated** | Parameterized queries not working, SQL injection concerns | `reference/query-params.md` | |
| 32 | | **FORMAT Clause / `SHOW POLICIES` Errors** | Syntax error from a duplicate `FORMAT`, or `SHOW [ROW] POLICIES` failing even with a format provided | `reference/query-format-clause.md` | |
| 33 | |
| 34 | --- |
| 35 | |
| 36 | ## Still Stuck? |
| 37 | |
| 38 | - [JS client source + full examples](https://github.com/ClickHouse/clickhouse-js/tree/main/examples) |
| 39 | - [ClickHouse JS client docs](https://click |