Webapp Builder
sidequery/sidemantic
Build interactive analytics webapps, demos, dashboards, or embedded app surfaces from Sidemantic semantic models using copyable component primitives and deterministic query inspection.
MUST USE when reviewing ClickHouse schemas, queries, or configurations.
$ npx skills add vemetric/vemetric --skill clickhouse-best-practices -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install vemetric/vemetric clickhouse-best-practices --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/vemetric/vemetric.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/clickhouse-best-practices .claude/skills/clickhouse-best-practices && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "clickhouse-best-practices" agent skill from https://github.com/vemetric/vemetric/tree/main/.agents/skills/clickhouse-best-practices into .claude/skills/clickhouse-best-practices/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-best-practices", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/vemetric/vemetric/tree/main/.agents/skills/clickhouse-best-practicesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add vemetric/vemetric --skill clickhouse-best-practices -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install vemetric/vemetric clickhouse-best-practices --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vemetric/vemetric.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/clickhouse-best-practices .agents/skills/clickhouse-best-practices && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "clickhouse-best-practices" agent skill from https://github.com/vemetric/vemetric/tree/main/.agents/skills/clickhouse-best-practices into .agents/skills/clickhouse-best-practices/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-best-practices", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add vemetric/vemetric --skill clickhouse-best-practices -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install vemetric/vemetric clickhouse-best-practices --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vemetric/vemetric.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/clickhouse-best-practices .cursor/skills/clickhouse-best-practices && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "clickhouse-best-practices" agent skill from https://github.com/vemetric/vemetric/tree/main/.agents/skills/clickhouse-best-practices into .cursor/skills/clickhouse-best-practices/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-best-practices", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/vemetric/vemetric.git --path .agents/skills/clickhouse-best-practices--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add vemetric/vemetric --skill clickhouse-best-practices -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install vemetric/vemetric clickhouse-best-practices --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vemetric/vemetric.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/clickhouse-best-practices .gemini/skills/clickhouse-best-practices && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "clickhouse-best-practices" agent skill from https://github.com/vemetric/vemetric/tree/main/.agents/skills/clickhouse-best-practices into .gemini/skills/clickhouse-best-practices/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-best-practices", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install vemetric/vemetric clickhouse-best-practicesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add vemetric/vemetric --skill clickhouse-best-practices -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/vemetric/vemetric.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/clickhouse-best-practices .github/skills/clickhouse-best-practices && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "clickhouse-best-practices" agent skill from https://github.com/vemetric/vemetric/tree/main/.agents/skills/clickhouse-best-practices into .github/skills/clickhouse-best-practices/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-best-practices", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add vemetric/vemetric --skill clickhouse-best-practices -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install vemetric/vemetric clickhouse-best-practices --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vemetric/vemetric.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/clickhouse-best-practices .opencode/skills/clickhouse-best-practices && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "clickhouse-best-practices" agent skill from https://github.com/vemetric/vemetric/tree/main/.agents/skills/clickhouse-best-practices into .opencode/skills/clickhouse-best-practices/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-best-practices", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
clickhouse-best-practicesMUST USE when reviewing ClickHouse schemas, queries, or configurations.
Clickhouse Best Practices is an agent skill from vemetric/vemetric. MUST USE when reviewing ClickHouse schemas, queries, or configurations. Contains 31 rules that MUST be checked before providing recommendations. Always read relevant rule files and cite specific rules in responses.
Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 36 other files (for example `AGENTS.md`, `README.md` and `rules/_sections.md`).
It sits in Databases, covering Data warehousing. It works with ClickHouse and Model Context Protocol. The repository describes itself as: Simple, yet powerful Web- & Product Analytics. The licence is Apache-2.0.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 2352ee8. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
clickhouse.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Clickhouse Best Practices loads about 2.6k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 1,000 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from vemetric/vemetric at commit 2352ee8, republished under its Apache-2.0 licence (© vemetric). 1,000 words, ~2,585 tokens.
.claude/skills/clickhouse-best-practices/SKILL.md (or your agent's skills folder). This skill also uses 35 other files; get the full folder from GitHub.Comprehensive guidance for ClickHouse covering schema design, query optimization, data ingestion, and AI agent connectivity. Contains 31 rules across 4 main categories (schema, query, insert, agent), prioritized by impact.
Official docs: ClickHouse Best Practices
Before answering ClickHouse questions, follow this priority order:
rules/ directoryrule-name..."Why rules take priority: ClickHouse has specific behaviors (columnar storage, sparse indexes, merge tree mechanics) where general database intuition can be misleading. The rules encode validated, ClickHouse-specific guidance.
Before querying ClickHouse, agents must establish a connection and follow the discovery workflow:
rules/agent-connect-mcp.md - Connection setup (MCP + CLI), credential discovery, output format selectionrules/agent-discovery-schema.md - CRITICAL: 7-step schema discovery workflowrules/agent-query-safety.md - CRITICAL: LIMIT, timeouts, progressive explorationEvery agent session should follow this sequence:
agent-connect-mcp)agent-query-safety)If your system dispatches ClickHouse tasks to specialized subagents:
Read these rule files in order:
rules/schema-pk-plan-before-creation.md - ORDER BY is immutablerules/schema-pk-cardinality-order.md - Column ordering in keysrules/schema-pk-prioritize-filters.md - Filter column inclusionrules/schema-types-native-types.md - Proper type selectionrules/schema-types-minimize-bitwidth.md - Numeric type sizingrules/schema-types-lowcardinality.md - LowCardinality usagerules/schema-types-avoid-nullable.md - Nullable vs DEFAULTrules/schema-partition-low-cardinality.md - Partition count limitsrules/schema-partition-lifecycle.md - Partitioning purposeCheck for:
Read these rule files:
rules/query-join-choose-algorithm.md - Algorithm selectionrules/query-join-filter-before.md - Pre-join filteringrules/query-join-use-any.md - ANY vs regular JOINrules/query-index-skipping-indices.md - Secondary index usagerules/schema-pk-filter-on-orderby.md - Filter alignment with ORDER BYCheck for:
Read these rule files:
rules/insert-batch-size.md - Batch sizing requirementsrules/insert-mutation-avoid-update.md - UPDATE alternativesrules/insert-mutation-avoid-delete.md - DELETE alternativesrules/insert-async-small-batches.md - Async insert usagerules/insert-optimize-avoid-final.md - OPTIMIZE TABLE risksCheck for:
Structure your response as follows:
## Rules Checked
- `rule-name-1` - Compliant / Violation found
- `rule-name-2` - Compliant / Violation found
...
## Findings
### Violations
- **`rule-name`**: Description of the issue
- Current: [what the code does]
- Required: [what it should do]
- Fix: [specific correction]
### Compliant
- `rule-name`: Brief note on why it's correct
## Recommendations
[Prioritized list of changes, citing rules]| Priority | Category | Impact | Prefix | Rule Count |
|---|---|---|---|---|
| 1 | Primary Key Selection | CRITICAL | schema-pk- | 4 |
| 2 | Data Type Selection | CRITICAL | schema-types- | 5 |
| 3 | JOIN Optimization | CRITICAL | query-join- | 5 |
| 4 | Insert Batching | CRITICAL | insert-batch- | 1 |
| 5 | Mutation Avoidance | CRITICAL | insert-mutation- | 2 |
| 6 | Partitioning Strategy | HIGH | schema-partition- | 4 |
| 7 | Skipping Indices | HIGH | query-index- | 1 |
| 8 | Materialized Views | HIGH | query-mv- | 2 |
| 9 | Async Inserts | HIGH | insert-async- | 2 |
| 10 | OPTIMIZE Avoidance | HIGH | insert-optimize- | 1 |
| 11 | JSON Usage | MEDIUM | schema-json- | 1 |
| 12 | Agent Schema Discovery | CRITICAL | agent-discovery- | 1 |
| 13 | Agent Query Safety | CRITICAL | agent-query- | 1 |
| 14 | Agent Connectivity + Formats | HIGH | agent-connect- | 1 |
schema-pk-plan-before-creation - Plan ORDER BY before table creation (immutable)schema-pk-cardinality-order - Order columns low-to-high cardinalityschema-pk-prioritize-filters - Include frequently filtered columnsschema-pk-filter-on-orderby - Query filters must use ORDER BY prefixschema-types-native-types - Use native types, not String for everythingschema-types-minimize-bitwidth - Use smallest numeric type that fitsschema-types-lowcardinality - LowCardinality for <10K unique stringsschema-types-enum - Enum for finite value sets with validationschema-types-avoid-nullable - Avoid Nullable; use DEFAULT insteadschema-partition-low-cardinality - Keep partition count 100-1,000schema-partition-lifecycle - Use partitioning for data lifecycle, not queriesschema-partition-query-tradeoffs - Understand partition pruning trade-offsschema-partition-start-without - Consider starting without partitioningschema-json-when-to-use - JSON for dynamic schemas; typed columns for knownquery-join-choose-algorithm - Select algorithm based on table sizesquery-join-use-any - ANY JOIN when only one match neededquery-join-filter-before - Filter tables before joiningquery-join-consider-alternatives - Dictionaries/denormalization vs JOINquery-join-null-handling - join_use_nulls=0 for default valuesquery-index-skipping-indices - Skipping indices for non-ORDER BY filtersquery-mv-incremental - Incremental MVs for real-time aggregationsquery-mv-refreshable - Refreshable MVs for complex joinsinsert-batch-size - Batch 10K-100K rows per INSERTinsert-async-small-batches - Async inserts for high-frequency small batchesinsert-format-native - Native format for best performanceinsert-mutation-avoid-update - ReplacingMergeTree instead of ALTER UPDATEinsert-mutation-avoid-delete - Lightweight DELETE or DROP PARTITIONinsert-optimize-avoid-final - Let background merges workagent-discovery-schema - Always discover schema before queryingagent-query-safety - LIMIT, timeouts, progressive explorationagent-connect-mcp - MCP + CLI setup, credential discovery, output format selectionThis skill activates when you encounter:
AI agent connecting to ClickHouse (MCP, CLI, HTTP)
Agent workflow design for ClickHouse
Schema discovery or exploration requests
CREATE TABLE statements
ALTER TABLE modifications
ORDER BY or PRIMARY KEY discussions
Data type selection questions
Slow query troubleshooting
JOIN optimization requests
Data ingestion pipeline design
Update/delete strategy questions
ReplacingMergeTree or other specialized engine usage
Partitioning strategy decisions
Each rule file in rules/ contains:
For the complete guide with all rules expanded inline: AGENTS.md
Use AGENTS.md when you need to check multiple rules quickly without reading individual files.
© vemetric, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 35 other files in .agents/skills/clickhouse-best-practices of vemetric/vemetric.
Open the folder on GitHubat commit 2352ee8
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in vemetric/vemetric, which our catalogue first saw on October 7, 2026.
Clickhouse Best Practices next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Clickhouse Best Practices this skillvemetric/vemetric | 395 | 2 repos | ~2.6k | Automated safety check: Pass | Apache-2.0 | |
| Webapp Buildersidequery/sidemantic | 129 | — | ~5.5k | Automated safety check: Pass | AGPL-3.0 | |
| Releasehypequery/hypequery | 103 | — | ~623 | Automated safety check: Pass | Custom licence | |
| Modelersidequery/sidemantic | 129 | — | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Semantic Analystsidequery/sidemantic | 129 | — | ~982 | Automated safety check: Pass | AGPL-3.0 | |
| Manual Testhypequery/hypequery | 103 | — | ~618 | Automated safety check: Pass | Custom licence |
sidequery/sidemantic
Build interactive analytics webapps, demos, dashboards, or embedded app surfaces from Sidemantic semantic models using copyable component primitives and deterministic query inspection.
hypequery/hypequery
Cut a stable hypequery release via Changesets, or explain/check the canary flow.
sidequery/sidemantic
Build, validate, and manage semantic models using Sidemantic.
sidequery/sidemantic
Answer analytical, KPI, metric, trend, cohort, and business-performance questions through a Sidemantic semantic layer.
hypequery/hypequery
Execute one of the model-runnable E2E test specs in testing/ (cli, datasets, serve, mcp, react) against a real ClickHouse instance.
pytorch/test-infra
Load this FIRST whenever working with PyTorch CI data (any pytorch/ org repo), the torchci/HUD codebase, or the PyTorch HUD ClickHouse database.
vemetric/vemetric
A skill your agent uses when the user has tabular data (pandas DataFrame, parquet, csv, Arrow, json) and wants to filter, group, aggregate, join, or speed up slow pandas.
vemetric/vemetric
A skill your agent uses when the user wants to run SQL — especially analytical SQL — on local files (parquet/csv/json), URLs, S3 paths, or remote databases (Postgres, MySQL, MongoDB, ClickHouse…
vemetric/vemetric
MUST USE when designing ClickHouse architectures, selecting between ingestion or modeling patterns, or translating best practices into workload-specific system designs.
vemetric/vemetric
Write idiomatic application code with the ClickHouse Node.js client (@clickhouse/client).
vemetric/vemetric
Troubleshoot and resolve common issues with the ClickHouse Node.js client (@clickhouse/client).
Works with
Categories
MUST USE when reviewing ClickHouse schemas, queries, or configurations. Clickhouse Best Practices is an agent skill from vemetric/vemetric. MUST USE when reviewing ClickHouse schemas, queries, or configurations.
Clickhouse Best Practices fits situations like: reviewing ClickHouse schemas; tasks that involve Data warehousing.
Run `npx skills add vemetric/vemetric --skill clickhouse-best-practices -a claude-code`. Or copy the skill folder (.agents/skills/clickhouse-best-practices in vemetric/vemetric) into .claude/skills/clickhouse-best-practices in your project. Claude Code loads it when a task matches its description.
Run `npx skills add vemetric/vemetric --skill clickhouse-best-practices -a codex`. Or copy the skill folder (.agents/skills/clickhouse-best-practices in vemetric/vemetric) into .agents/skills/clickhouse-best-practices in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add vemetric/vemetric --skill clickhouse-best-practices -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/clickhouse-best-practices, .gemini/skills/clickhouse-best-practices, .github/skills/clickhouse-best-practices and .opencode/skills/clickhouse-best-practices in your project.
SKILL.md names no scripts, command-line tools or credentials: Clickhouse Best Practices is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: clickhouse.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Clickhouse Best Practices is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Clickhouse Best Practices: Webapp Builder (sidequery/sidemantic, 129 stars), Release (hypequery/hypequery, 103 stars), Modeler (sidequery/sidemantic, 129 stars) and Semantic Analyst (sidequery/sidemantic, 129 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
vemetric (a GitHub organization) maintains it in vemetric/vemetric, which has 395 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 9, 2026.
Source: vemetric/vemetric on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.