ClickHouse database patterns, query optimization, analytics, and data engineering best practices for high-performance analytical workloads.
38
23%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/clickhouse-io/SKILL.mdQuality
Discovery
32%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description identifies ClickHouse as the target domain which provides some distinctiveness, but it reads more like a topic list than an actionable skill description. It lacks specific concrete actions, misses a 'Use when...' clause entirely, and uses broad terms that could overlap with other database skills.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user asks about ClickHouse queries, MergeTree engine configuration, columnar storage optimization, or analytical database design.'
Replace broad categories with specific concrete actions, e.g., 'Writes and optimizes ClickHouse SQL queries, configures MergeTree table engines, designs materialized views, and tunes aggregation performance.'
Include more natural trigger terms users would say, such as 'OLAP', 'columnar database', 'MergeTree', 'ReplacingMergeTree', 'ClickHouse SQL', or 'analytical queries'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (ClickHouse database) and some general action areas (query optimization, analytics, data engineering), but these are broad categories rather than concrete specific actions like 'write materialized views' or 'optimize GROUP BY queries'. | 2 / 3 |
Completeness | Describes what it covers at a high level but completely lacks a 'Use when...' clause or any explicit trigger guidance for when Claude should select this skill. Per the rubric, a missing 'Use when...' clause caps completeness at 2, and the 'what' portion is also fairly weak, so this scores a 1. | 1 / 3 |
Trigger Term Quality | Includes 'ClickHouse' which is a strong natural trigger term, plus 'query optimization' and 'analytics' which users might say. However, it misses common variations like 'columnar database', 'OLAP', 'MergeTree', 'aggregating tables', or specific ClickHouse file extensions/tools. | 2 / 3 |
Distinctiveness Conflict Risk | 'ClickHouse' is a distinctive trigger that separates it from generic database skills, but terms like 'query optimization', 'analytics', and 'data engineering best practices' are broad enough to overlap with general SQL, PostgreSQL, or other database-related skills. | 2 / 3 |
Total | 7 / 12 Passed |
Implementation
14%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill reads more like a ClickHouse tutorial or reference manual than a focused skill file. It is excessively long, explains concepts Claude already knows (what ClickHouse is, what column-oriented storage means), and lacks workflow validation steps for potentially destructive operations like bulk inserts and schema changes. The content would benefit significantly from aggressive trimming, splitting into referenced sub-files, and adding validation checkpoints.
Suggestions
Cut the overview section entirely (Claude knows what ClickHouse is) and remove generic analytics query patterns (funnel, cohort, retention) that aren't ClickHouse-specific — focus only on ClickHouse-unique syntax and gotchas.
Split content into separate files: keep SKILL.md as a concise overview with references to files like ENGINES.md, QUERY_PATTERNS.md, DATA_PIPELINES.md, and MONITORING.md.
Add explicit validation steps: after table creation (DESCRIBE TABLE, check system.parts), after bulk inserts (SELECT count(), verify row counts), and after materialized view creation (verify data flows correctly).
Fix the TypeScript bulk insert example to use parameterized queries instead of string interpolation, and either complete the streaming insert example with working code or remove it.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is extremely verbose at ~400+ lines. It explains what ClickHouse is ('column-oriented DBMS for OLAP'), lists key features Claude already knows, includes an unnecessary 'When to Activate' section, and provides extensive example queries (funnel analysis, cohort analysis, retention analysis) that are general SQL patterns rather than ClickHouse-specific knowledge. The overview section and best practices bullet points largely restate common database knowledge. | 1 / 3 |
Actionability | The SQL examples are mostly executable and concrete, which is good. However, the TypeScript code uses string interpolation for SQL values (SQL injection vulnerability), the streaming insert example is incomplete/non-functional pseudocode, and the ETL/CDC patterns are skeletal outlines rather than executable code. The bulk insert example uses an unspecified 'clickhouse' npm package with unclear API. | 2 / 3 |
Workflow Clarity | There are no clear multi-step workflows with validation checkpoints. The ETL pattern is a vague 3-step outline without error handling or validation. Table creation has no verification steps (e.g., checking if the table was created correctly, validating data after insertion). The CDC pattern lacks error recovery. For operations involving bulk data insertion and schema changes, the absence of any validation or feedback loops is a significant gap. | 1 / 3 |
Progressive Disclosure | This is a monolithic wall of content with no references to external files and no bundle files. Everything from basic table design to advanced cohort analysis, ETL pipelines, and CDC patterns is crammed into a single file. Content like common analytics queries, data pipeline patterns, and performance monitoring could easily be split into separate referenced files. | 1 / 3 |
Total | 5 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
841beea
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.