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.
Debug ClickHouse deserialization errors in Rust caused by column ORDER mismatch when using SELECT alias.
$ npx skills add divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install divinevideo/divine-mobile clickhouse-rust-view-column-order --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/divinevideo/divine-mobile.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/clickhouse-rust-view-column-order .claude/skills/clickhouse-rust-view-column-order && 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-rust-view-column-order" agent skill from https://github.com/divinevideo/divine-mobile/tree/main/.agents/skills/clickhouse-rust-view-column-order into .claude/skills/clickhouse-rust-view-column-order/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-rust-view-column-order", 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/divinevideo/divine-mobile/tree/main/.agents/skills/clickhouse-rust-view-column-orderType 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 divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install divinevideo/divine-mobile clickhouse-rust-view-column-order --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/divinevideo/divine-mobile.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/clickhouse-rust-view-column-order .agents/skills/clickhouse-rust-view-column-order && 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-rust-view-column-order" agent skill from https://github.com/divinevideo/divine-mobile/tree/main/.agents/skills/clickhouse-rust-view-column-order into .agents/skills/clickhouse-rust-view-column-order/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-rust-view-column-order", 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 divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install divinevideo/divine-mobile clickhouse-rust-view-column-order --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/divinevideo/divine-mobile.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/clickhouse-rust-view-column-order .cursor/skills/clickhouse-rust-view-column-order && 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-rust-view-column-order" agent skill from https://github.com/divinevideo/divine-mobile/tree/main/.agents/skills/clickhouse-rust-view-column-order into .cursor/skills/clickhouse-rust-view-column-order/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-rust-view-column-order", 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/divinevideo/divine-mobile.git --path .agents/skills/clickhouse-rust-view-column-order--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 divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install divinevideo/divine-mobile clickhouse-rust-view-column-order --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/divinevideo/divine-mobile.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/clickhouse-rust-view-column-order .gemini/skills/clickhouse-rust-view-column-order && 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-rust-view-column-order" agent skill from https://github.com/divinevideo/divine-mobile/tree/main/.agents/skills/clickhouse-rust-view-column-order into .gemini/skills/clickhouse-rust-view-column-order/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-rust-view-column-order", 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 divinevideo/divine-mobile clickhouse-rust-view-column-orderInstalls 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 divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/divinevideo/divine-mobile.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/clickhouse-rust-view-column-order .github/skills/clickhouse-rust-view-column-order && 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-rust-view-column-order" agent skill from https://github.com/divinevideo/divine-mobile/tree/main/.agents/skills/clickhouse-rust-view-column-order into .github/skills/clickhouse-rust-view-column-order/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-rust-view-column-order", 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 divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install divinevideo/divine-mobile clickhouse-rust-view-column-order --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/divinevideo/divine-mobile.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/clickhouse-rust-view-column-order .opencode/skills/clickhouse-rust-view-column-order && 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-rust-view-column-order" agent skill from https://github.com/divinevideo/divine-mobile/tree/main/.agents/skills/clickhouse-rust-view-column-order into .opencode/skills/clickhouse-rust-view-column-order/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "clickhouse-rust-view-column-order", 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-rust-view-column-orderDebug ClickHouse deserialization errors in Rust caused by column ORDER mismatch when using SELECT alias.
Clickhouse Rust View Column Order is an agent skill from divinevideo/divine-mobile. Debug ClickHouse deserialization errors in Rust caused by column ORDER mismatch when using SELECT alias. on a VIEW that adds computed columns. Use when: (1) Some query variants (e.g. sort=trending) return 500 but others (sort=recent) succeed, (2) Queries use SELECT viewalias., extracols FROM view JOIN ..., (3) The Rust Row struct has the right number and types of fields but deserialization fails anyway (wrong type error, not "not enough data"), (4) The VIEW was recently extended with a computed column (e.g…
Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Databases, covering Data warehousing. It works with Rust and ClickHouse. The licence is MPL-2.0.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 6487b05. 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.
Shell commands in SKILL.md call:
curlFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
docs.rsFrom 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 Rust View Column Order loads about 1.6k tokens when it runs. Until then it costs about 142 tokens; SKILL.md has 572 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 divinevideo/divine-mobile at commit 6487b05, republished under its MPL-2.0 licence (© divinevideo). 572 words, ~1,562 tokens.
.claude/skills/clickhouse-rust-view-column-order/SKILL.md (or your agent's skills folder).When using SELECT alias.* , extra_col FROM my_view alias LEFT JOIN ..., ClickHouse
expands alias.* to include ALL columns defined in the view — including any computed
columns added by the view itself (e.g. SELECT *, expr AS trending_score FROM base).
Those computed columns appear INSIDE the alias.* expansion, BEFORE any columns
appended after it in the outer query.
The clickhouse Rust crate (#[derive(Row)]) deserializes positionally — field N
in the Rust struct receives column N from the query result. If the struct field order
doesn't match the actual SQL column order, the wrong bytes land in the wrong fields,
causing type errors at deserialization even though the column count is correct.
sort=trending, sort=popular) but not others
(e.g. sort=recent) that query a different view or table"cannot decode Float64 from String" or similar type mismatchSuppose trending_videos is defined as:
CREATE VIEW trending_videos AS
SELECT
*, -- all base columns
(views * 0.5 + likes * 2.0) AS trending_score -- computed column APPENDED HERE
FROM video_stats;An outer query then does:
SELECT
tv.*, -- expands to: base_cols..., trending_score
text_track_ref, -- subtitle columns come AFTER
text_track_content
FROM trending_videos tv
LEFT JOIN subtitle_subquery USING (id);The actual SQL result column order is:
[...base_cols, trending_score, text_track_ref, text_track_content]But if the Rust struct was written with subtitle fields before trending_score:
pub struct TrendingVideo {
// ...base fields...
pub text_track_ref: String, // position N <- WRONG: gets trending_score bytes
pub text_track_content: String, // position N+1 <- WRONG: gets text_track_ref bytes
pub trending_score: f64, // position N+2 <- WRONG: gets text_track_content bytes
}ClickHouse sends a Float64 where Rust expects a String → deserialization error → 500.
The sort=recent variant queries video_stats directly with vs.* — that view has
no extra computed columns, so subtitle columns land at the same relative position the
struct expects. Only the trending_videos view adds trending_score inside vs.*,
shifting everything after it.
Identify which query variants fail vs. succeed. Failing ones likely use a
different view or have a different SELECT * source.
Expand the failing SELECT alias.* — run the inner view query directly:
curl -u 'user:pass' 'https://clickhouse-host:8443' \
--data-binary "SELECT * FROM trending_videos LIMIT 0 FORMAT TabSeparated"Or use DESCRIBE TABLE trending_videos to see declared column order.
List actual column order of the full outer query:
curl ... --data-binary \
"SELECT tv.*, '' as text_track_ref, '' as text_track_content
FROM trending_videos tv LIMIT 0 FORMAT TabSeparatedWithNames"Compare with Rust struct field order line by line — they must match exactly.
Find the misplaced field — look for computed columns added to the view that
appear inside alias.* but after columns that appear in the outer SELECT.
Reorder the Rust struct fields to match the actual SQL column order — computed VIEW columns belong before any columns appended in the outer SELECT:
pub struct TrendingVideo {
// ...base fields in same order as base table...
// trending_score comes from tv.* (view-computed), so it appears
// BEFORE the subtitle columns we append in the outer query
pub trending_score: f64,
// Subtitle columns are appended after tv.* in the outer SELECT
pub text_track_ref: String,
pub text_track_content: String,
}Do NOT change the SQL query or the view — just align the struct field order.
When a ClickHouse VIEW adds a computed column via
SELECT *, expr AS col FROM base, that column becomes part of the view's column list. AnySELECT alias.*in an outer query will emit it in the view's declared order — BEFORE any extra columns appended afteralias.*in the outer SELECT. The Rust#[derive(Row)]struct must reflect this exact order.
SELECT alias.* and update field ordering.SELECT col1, col2, ..., trending_score, text_track_ref, text_track_content
(explicit column list instead of *) in the outer query to make ordering explicit
and immune to view schema changes.clickhouse-rust-type-mismatches — covers "not enough data" (column COUNT mismatch),
FixedString encoding, Option vs String nullability issues. This skill covers column
ORDER mismatch (column count is correct, types match, but positional order is wrong).SELECT * expansion: follows column declaration order of the source table/view© divinevideo, MPL-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/clickhouse-rust-view-column-order of divinevideo/divine-mobile.
Open the folder on GitHubat commit 6487b05
Clickhouse Rust View Column Order 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 Rust View Column Order this skilldivinevideo/divine-mobile | 266 | — | ~1.6k | Automated safety check: Pass | MPL-2.0 | |
| Webapp Buildersidequery/sidemantic | 129 | — | ~5.5k | Automated safety check: Pass | AGPL-3.0 | |
| Querying Tempotempoxyz/tidx | 107 | — | ~3.1k | Automated safety check: Pass | MIT | |
| Adding Ingestion WarningsPostHog/posthog | 40k | — | ~3.7k | Automated safety check: Pass | Custom licence | |
| Clickhouse Logs Queriessupabase/supabase | 111k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Keeper Stress AnalysisClickHouse/ClickHouse | 50k | — | ~4.7k | Automated safety check: Pass | Apache-2.0 |
sidequery/sidemantic
Build interactive analytics webapps, demos, dashboards, or embedded app surfaces from Sidemantic semantic models using copyable component primitives and deterministic query inspection.
tempoxyz/tidx
Query indexed Tempo chain data via tidx HTTP API and CLI. An agent skill from tempoxyz/tidx.
PostHog/posthog
How to add a new ingestion warning type to the event ingestion pipeline.
supabase/supabase
Write, review, and migrate Supabase logs queries against the ClickHouse-backed logs table (the logs.all.otel analytics endpoint).
ClickHouse/ClickHouse
Analyze ClickHouse Keeper stress-test results from play.clickhouse.com / keeperstresstests data warehouse.
ClickHouse/ClickHouse
Evaluate ClickHouse performance test results from existing CI/dashboard data or local perf.py runs.
divinevideo/divine-mobile
Fix ArgoCD ExternalSecret deployment failing with "namespace X is not permitted in project Y".
divinevideo/divine-mobile
Art direction for any content — reads text, PDF, Word, HTML, PPT, then proposes 2-3 creative directions with photography style, mood, and visual language.
divinevideo/divine-mobile
Fix "Null check operator used on a null value" errors when an object is set to null during an async await.
divinevideo/divine-mobile
Add custom metadata headers (x-amz-meta-) to AWS v4 signed requests for GCS S3-compatible API.
divinevideo/divine-mobile
Fix password/secret authentication failures caused by trailing newlines when creating Google Cloud secrets (or similar) with bash here-strings.
divinevideo/divine-mobile
Fix silent video/media processing failures caused by URL extraction code that filters on file extensions (.mp4, .webm, .webp).
Works with
Categories
Debug ClickHouse deserialization errors in Rust caused by column ORDER mismatch when using SELECT alias. Clickhouse Rust View Column Order is an agent skill from divinevideo/divine-mobile. Debug ClickHouse deserialization errors in Rust caused by column ORDER mismatch when using SELECT alias.
Clickhouse Rust View Column Order fits situations like: some query variants (e.g; tasks that involve Data warehousing.
Run `npx skills add divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a claude-code`. Or copy the skill folder (.agents/skills/clickhouse-rust-view-column-order in divinevideo/divine-mobile) into .claude/skills/clickhouse-rust-view-column-order in your project. Claude Code loads it when a task matches its description.
Run `npx skills add divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -a codex`. Or copy the skill folder (.agents/skills/clickhouse-rust-view-column-order in divinevideo/divine-mobile) into .agents/skills/clickhouse-rust-view-column-order 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 divinevideo/divine-mobile --skill clickhouse-rust-view-column-order -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-rust-view-column-order, .gemini/skills/clickhouse-rust-view-column-order, .github/skills/clickhouse-rust-view-column-order and .opencode/skills/clickhouse-rust-view-column-order in your project.
Going by SKILL.md and its folder, Clickhouse Rust View Column Order needs the command-line tools its instructions call (curl).
SKILL.md names 1 domain. As links in the text: docs.rs. 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 Rust View Column Order is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.2k 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 Rust View Column Order: Webapp Builder (sidequery/sidemantic, 129 stars), Querying Tempo (tempoxyz/tidx, 107 stars), Adding Ingestion Warnings (PostHog/posthog, 40k stars) and Clickhouse Logs Queries (supabase/supabase, 111k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
divinevideo (a GitHub organization) maintains it in divinevideo/divine-mobile, which has 266 GitHub stars. The repository holds 103 skills in this directory. The repository was last updated on October 9, 2026.
Source: divinevideo/divine-mobile on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.