Clickhouse install auth
Install @clickhouse/client and configure authentication to ClickHouse Cloud or self-hosted. Use when setting up a new ClickHouse project, configuring connection strings, or initializing the official Node.js or Python client. Trigger with "install clickhouse", "setup clickhouse client", "clickhouse auth", "connect to clickhouse", "clickhouse credentials".From its SKILL.md
npx -y skills add jeremylongshore/claude-code-plugins-plus-skills --skill clickhouse-install-authAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.8 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it
ClickHouse Install & Auth
Overview
Set up the official ClickHouse client for Node.js or Python and configure authentication to ClickHouse Cloud or a self-hosted instance. The workflow below is the high-level path; each step links to a full walkthrough with complete code in references/implementation.md.
Prerequisites
- Node.js 18+ or Python 3.8+
- A running ClickHouse instance (Cloud or self-hosted)
- Connection credentials (host, port, user, password)
Instructions
Follow these five steps. Read the current project for an existing .env before
writing one; write credentials to .env (never commit it).
-
Install the official client. Node.js uses the HTTP-based
@clickhouse/client; Python usesclickhouse-connect.npm install @clickhouse/client # Node.js pip install clickhouse-connect # Python -
Configure environment variables. Put host, user, and password in
.envand add it to.gitignore. Cloud hosts use port8443(HTTPS); self-hosted uses8123(HTTP). -
Create the client. Pass
url,username, andpasswordtocreateClient()(Node.js) orget_client()(Python). Cloud requires TLS — supply anhttps://URL and the client handles it.import { createClient } from '@clickhouse/client'; const client = createClient({ url: process.env.CLICKHOUSE_HOST, username: process.env.CLICKHOUSE_USER, password: process.env.CLICKHOUSE_PASSWORD, }); -
Verify the connection with
client.ping()plus aSELECT version()probe. -
Python alternative — same shape via
clickhouse_connect.get_client(...)withsecure=Truefor Cloud.
Full code for every step (Cloud + self-hosted variants, the verify routine,
and the Python client): references/implementation.md.
Every createClient() option and a Cloud-vs-self-hosted comparison:
references/connection-reference.md.
Output
After completing the workflow you have:
- The official client installed (
@clickhouse/clientorclickhouse-connect). - A
.envholdingCLICKHOUSE_HOST/CLICKHOUSE_USER/CLICKHOUSE_PASSWORD(gitignored). - An initialized client module that reads those variables.
- A successful
ping()returningsuccess: trueand aSELECT version()probe printing the server version and uptime — proof the connection and auth both work.
Error Handling
| Error | Cause | Solution |
|---|---|---|
ECONNREFUSED | Server not running | Check host/port, verify ClickHouse is up |
Authentication failed | Wrong user/password | Verify credentials in ClickHouse users.xml or Cloud console |
CERTIFICATE_VERIFY_FAILED | TLS mismatch | Use https:// for Cloud, check CA certs for self-hosted |
TIMEOUT | Network/firewall | Check IP allowlists in Cloud console, firewall rules |
Database not found | Wrong database name | Run SHOW DATABASES to list available databases |
Examples
Connect to ClickHouse Cloud (Node.js). With .env populated, create the
client against the https://…:8443 host and verify:
const alive = await client.ping(); // { success: true }
const rs = await client.query({
query: 'SELECT version() AS ver',
format: 'JSONEachRow',
});
console.log((await rs.json())[0].ver); // e.g. "24.8.1"
Connect to a local self-hosted instance (no TLS). Point at the HTTP
interface on 8123 with an empty password:
const localClient = createClient({
url: 'http://localhost:8123',
username: 'default',
password: '',
});
The full Cloud + self-hosted + Python set is in references/implementation.md.
Resources
- Official Node.js Client
- Official Python Client
- ClickHouse Cloud Quick Start
- HTTP Interface Reference
Next Steps
Proceed to clickhouse-hello-world to create your first table and run an
insert-and-select round trip against the connection you just verified.
What ships with it: 2 files
3.3 KB alongside SKILL.md
references/
- connection-reference.md1.1 KB
- implementation.md2.2 KB