Getting Started
chkit manages ClickHouse schemas and migrations in TypeScript and Python, and ingests application APIs through TypeScript streams. Pick the path that matches what you’re working on.
For API data, start with the API sync quickstart or install the authoring skill.
Let an agent set it up
Section titled “Let an agent set it up”Paste this prompt into your coding agent to install chkit, configure the project, and prepare the first migration. The prompt links to the agent instructions.
Set up chkit (ClickHouse schema management) in this repo. First fetch https://chkit.obsessiondb.com/ai-agents.md and follow the instructions there: install the agent skill, scaffold the config, recommend any plugins this project needs, and walk me through the first migration. Don't apply anything to the database without confirming with me first. For manual setup, start with an example or add chkit to an existing project.
Start with an example Scaffold the hello example with create-chkit: two tables and one migration. ClickBench stays available for a full dataset load.
Add to an existing project Install chkit in a TypeScript or Python project and prepare the first migration.
Prerequisites
Section titled “Prerequisites”Both paths need the same baseline:
- Node.js 20+ or Bun 1.3.5+
- A ClickHouse endpoint (
CLICKHOUSE_URL, optionallyCLICKHOUSE_USER,CLICKHOUSE_PASSWORD): ClickHouse 24.x or newer (see compatibility). The example path can claim a free ObsessionDB dev instance from the scaffold prompt instead.
Where to next
Section titled “Where to next”Once either path is working:
- The migration workflow: how generate, snapshot, and migrate fit together, and what to commit
- CLI reference: every command, flag, and expected output
- Configuration: wire up
clickhouse.config.ts - Schema DSL: define tables, views, materialized views, and dictionaries
- Troubleshooting: fixes for common errors if a command fails