Chdb SQL
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…
Wavelet 项目专用:当新增或修改数据库表结构、索引、初始化数据、系统配置 seed、模板 seed、默认管理员、goose SQL 迁移、internal/infra/persistence/migrator、ClickHouse 分析库 DDL 或数据库升级流程时必须使用。本技能指导在 internal/infra/persistence/migrator/goose 下编写…
$ npx skills add Rain-kl/OpenFlare --skill database-migration -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Rain-kl/OpenFlare database-migration --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/Rain-kl/OpenFlare.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/database-migration .claude/skills/database-migration && 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 "database-migration" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/database-migration into .claude/skills/database-migration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "database-migration", 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/Rain-kl/OpenFlare/tree/main/.agents/skills/database-migrationType 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 Rain-kl/OpenFlare --skill database-migration -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Rain-kl/OpenFlare database-migration --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/database-migration .agents/skills/database-migration && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "database-migration" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/database-migration into .agents/skills/database-migration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "database-migration", 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 Rain-kl/OpenFlare --skill database-migration -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Rain-kl/OpenFlare database-migration --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/database-migration .cursor/skills/database-migration && 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 "database-migration" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/database-migration into .cursor/skills/database-migration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "database-migration", 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/Rain-kl/OpenFlare.git --path .agents/skills/database-migration--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 Rain-kl/OpenFlare --skill database-migration -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Rain-kl/OpenFlare database-migration --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/database-migration .gemini/skills/database-migration && 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 "database-migration" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/database-migration into .gemini/skills/database-migration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "database-migration", 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 Rain-kl/OpenFlare database-migrationInstalls 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 Rain-kl/OpenFlare --skill database-migration -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/database-migration .github/skills/database-migration && 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 "database-migration" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/database-migration into .github/skills/database-migration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "database-migration", 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 Rain-kl/OpenFlare --skill database-migration -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Rain-kl/OpenFlare database-migration --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Rain-kl/OpenFlare.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/database-migration .opencode/skills/database-migration && 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 "database-migration" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/database-migration into .opencode/skills/database-migration/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "database-migration", 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.
database-migrationWavelet 项目专用:当新增或修改数据库表结构、索引、初始化数据、系统配置 seed、模板 seed、默认管理员、goose SQL 迁移、internal/infra/persistence/migrator、ClickHouse 分析库 DDL 或数据库升级流程时必须使用。本技能指导在 internal/infra/persistence/migrator/goose 下编写…
Database Migration is an agent skill from Rain-kl/OpenFlare. Wavelet 项目专用:当新增或修改数据库表结构、索引、初始化数据、系统配置 seed、模板 seed、默认管理员、goose SQL 迁移、internal/infra/persistence/migrator、ClickHouse 分析库 DDL 或数据库升级流程时必须使用。本技能指导在 internal/infra/persistence/migrator/goose 下编写 PostgreSQL/SQLite 双方言 SQL 迁移,以及在 goose/clickhouse 下编写 ClickHouse 单方言分析表迁移,并完成验证。
Its SKILL.md is about 1.3k 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, Database migrations and SQL. It works with ClickHouse, SQL, PostgreSQL and SQLite. The repository describes itself as: OpenFlare is an open-source CDN orchestration and edge security platform. It supports reverse proxy, centralized configuration synchronization, in-network tunneling (Tunnels)… The licence is Apache-2.0.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 7483897. 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:
gomakeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From 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.
Database Migration loads about 1.3k tokens when it runs. Until then it costs about 73 tokens; SKILL.md has 379 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 Rain-kl/OpenFlare at commit 7483897, republished under its Apache-2.0 licence (© Rain-kl). 379 words, ~1,258 tokens.
.claude/skills/database-migration/SKILL.md (or your agent's skills folder).Wavelet 使用 github.com/pressly/goose/v3 执行 SQL 迁移。迁移入口是 internal/infra/persistence/migrator.Migrate(),SQL 文件嵌入在二进制中。
internal/infra/persistence/migrator/goose/postgres/internal/infra/persistence/migrator/goose/sqlite/-- +goose Up
...
-- +goose Down
...id,必须依靠数据库自增(Identity 或 AUTOINCREMENT)自动分配,防止与用户手动或后续插入的定时任务产生 ID 冲突。"true" / "false",数字写十进制字符串,复杂结构写合法 JSON 字符串。YYYYMMDDNNNN,例如:202606090002_add_example_column.sqlUp:INSERT。IF NOT EXISTS 或 ON CONFLICT ... DO NOTHING。Down:make swagger。go test ./internal/infra/persistence/migrator
go test ./internal/model ./internal/apps/config ./internal/apps/admin/system_config
make code-checkBIGSERIAL;SQLite 自增主键用 INTEGER PRIMARY KEY AUTOINCREMENT。TIMESTAMPTZ;SQLite 使用 DATETIME。JSONB;SQLite 用 JSON 或 TEXT。visibility 使用常量语义:0 不公开,1 通过 /api/v1/config/public 返回。visibility = 1 的配置键值,不要在 handler 中重新硬编码 key 列表。system_configs、默认 admin、内置模板能按预期初始化。ClickHouse 是辅助 OLAP 存储,与 PostgreSQL/SQLite 主库完全独立的迁移与访问管线:
goose_db_version、双方言 SQL。goose_clickhouse_version、单方言 SQL。日志用途表还必须在主库建回落并走 logstore(见该 skill);CH 目录仍只放 CH DDL。不要把 ClickHouse 表结构混入 PG/SQLite 迁移目录,也不要在 support-files/、internal/apps/ 或 internal/repository/ 中手写 DDL。
| 路径 | 职责 |
|---|---|
internal/infra/persistence/migrator/goose/clickhouse/ | 唯一 ClickHouse DDL 来源(goose SQL,嵌入二进制) |
internal/model/analytics/ | 分析表 Go model,列名须与 goose DDL 一致 |
internal/repository/analytics/ | 所有 ClickHouse 读写(批量写入、查询、聚合) |
internal/infra/persistence/clickhouse.go | 连接初始化(ChConn 原生批量、ChDB GORM 查询) |
migrator.MigrateClickHouse(),在 cmd/root.go 的 PreRun 中于 migrator.Migrate() 之后调用。clickhouse.enabled: true 时执行;禁用时直接跳过(见 TestMigrateClickHouseSkipsWhenDisabled)。goose_clickhouse_version,与主库 goose_db_version 分离,互不影响。CREATE TABLE IF NOT EXISTS ...,禁止 GORM AutoMigrate、禁止在 repository 或 handler 中建表。Up/Down 语句独立提交。IF NOT EXISTS;Down 用 DROP TABLE IF EXISTS。DROP TABLE 会立即删除数据,生产环境通常只前滚;仅在开发/测试需要回滚时编写 Down。ENGINE、PARTITION BY、ORDER BY 等,与查询模式对齐(例如按 created_at 分区)。support-files/、apps 初始化逻辑或 repository/analytics 中复制建表语句。按以下顺序落地,避免列名或类型漂移:
internal/model/analytics/ 定义 struct,gorm:"column:..." 与 DDL 列名一一对应;实现 TableName(),批量写入表可提供 InsertColumns() / BatchInsertSQL()。internal/infra/persistence/migrator/goose/clickhouse/ 新增递增版本文件(格式同主库,如 YYYYMMDDNNNN_create_xxx.sql),编写 -- +goose Up / -- +goose Down。internal/repository/analytics/ 实现 BatchInsert*(db.ChConn 一次 PrepareBatch + 多行 Append + 一次 Send)与查询(db.ChDB);连接未初始化时返回明确错误,不要在 handler 写 SQL,不要在 repository 内维护 channel/goroutine。internal/apps/<domain>/ 编排采集与入队;高频写入通过 internal/infra/persistence/batchwriter 各域独立实例异步 flush(详见 clickhouse-batchwriter 技能)。日志/分析用途表还要同时建 PG/SQLite 回落并接入 logstore(见 logstore 技能),FlushFunc 调 logstore.Active 而不是 analyticsrepo;普通业务分析表仍只读 repository。至少运行:
go test ./internal/infra/persistence/migrator
go test ./internal/repository/analytics
make code-check验证重点:
Up。internal/model/analytics 列名、类型与 goose SQL 一致。clickhouse.enabled: false 时启动不报错、不执行迁移。© Rain-kl, 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
Just SKILL.md in .agents/skills/database-migration of Rain-kl/OpenFlare.
Open the folder on GitHubat commit 7483897
Database Migration 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 |
|---|---|---|---|---|---|---|
| Database Migration this skillRain-kl/OpenFlare | 288 | — | ~1.3k | Automated safety check: Pass | Apache-2.0 | |
| Chdb SQLvemetric/vemetric | 394 | 1 repos | ~1.2k | Automated safety check: Pass | Apache-2.0 | |
| Querying Tempotempoxyz/tidx | 107 | — | ~3.1k | Automated safety check: Pass | MIT | |
| Semantic Analystsidequery/sidemantic | 129 | — | ~982 | Automated safety check: Pass | AGPL-3.0 | |
| Database MarchatCod-e-Codes/marchat | 137 | — | ~985 | Automated safety check: Pass | MIT | |
| Warehouse SQLHybridAIOne/hybridclaw | 158 | — | ~1.8k | Automated safety check: Pass | MIT |
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…
tempoxyz/tidx
Query indexed Tempo chain data via tidx HTTP API and CLI. An agent skill from tempoxyz/tidx.
sidequery/sidemantic
Answer analytical, KPI, metric, trend, cohort, and business-performance questions through a Sidemantic semantic layer.
Cod-e-Codes/marchat
Changes marchat SQL schema and queries across SQLite, PostgreSQL, and MySQL using dialect helpers.
HybridAIOne/hybridclaw
Review and run read-only natural-language SQL against a customer data warehouse with cached schema introspection and explicit write grants.
speakeasy-api/gram
A skill your agent uses when adding a new feature or changing an existing one that surfaces data in the dashboard — the demo org (app.getgram.ai/explore-demo) must show it — and when editing or…
Rain-kl/OpenFlare
Provides comprehensive code review guidance for React 19, Vue 3, Angular 17+, Svelte 5, Rust, TypeScript, Java, PHP, Python, Django, Go, C/.NET, Kotlin, Swift, NestJS, C/C++, and more.
Rain-kl/OpenFlare
在选择日志方案、配置 slog、编写结构化日志语句或决定日志级别时使用。也适用于设置生产日志、为日志添加请求作用域上下文或从 log 迁移到 slog 的场景,即使用户未明确提及日志。不涵盖错误处理策略(参见 go-error-handling)。
Rain-kl/OpenFlare
Wavelet 项目专用:当新增或修改自定义业务 API、新增业务路由、新增 service 层核心逻辑时必须使用。本技能指导包职责划分、推荐文件结构、路由解耦、Swagger 文档生成与质量门禁验证。
Rain-kl/OpenFlare
Wavelet 项目专用:当新增或修改业务缓存(RAM/Redis/DB 三层读路径)、缓存失效、多节点 pub/sub 同步、或评估高频读是否应接入缓存时必须使用。本技能说明系统标准缓存框架、参考实现、禁止写法与分布式一致性要求。
Rain-kl/OpenFlare
Wavelet 项目专用:当新增或修改 ClickHouse 批量写入、接入 internal/infra/persistence/batchwriter、将业务域异步 flush 到分析表、迁移 riskcontrol/节点访问日志/可观测时序写入、或评估 asyncinsert 与背压策略时必须使用。本技能指导分层职责、各域独立 Writer 实例、repository 批量 API…
Rain-kl/OpenFlare
Wavelet 项目专用:当业务需要上传文件、读取已上传文件、在 Worker/任务中程序化摄取字节流、选择存储引擎能力、或排查 wuploads / 文件统计异常时必须使用。本技能指导 storage 与 upload 分层、upload.Ingest 策略选型、前后端接入与禁止旁路写表。
Works with
Categories
Wavelet 项目专用:当新增或修改数据库表结构、索引、初始化数据、系统配置 seed、模板 seed、默认管理员、goose SQL 迁移、internal/infra/persistence/migrator、ClickHouse 分析库 DDL 或数据库升级流程时必须使用。本技能指导在 internal/infra/persistence/migrator/goose 下编写…. Database Migration is an agent skill from Rain-kl/OpenFlare.
Database Migration fits situations like: tasks that involve Data warehousing; tasks that involve Database migrations; tasks that involve SQL.
Run `npx skills add Rain-kl/OpenFlare --skill database-migration -a claude-code`. Or copy the skill folder (.agents/skills/database-migration in Rain-kl/OpenFlare) into .claude/skills/database-migration in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Rain-kl/OpenFlare --skill database-migration -a codex`. Or copy the skill folder (.agents/skills/database-migration in Rain-kl/OpenFlare) into .agents/skills/database-migration 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 Rain-kl/OpenFlare --skill database-migration -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/database-migration, .gemini/skills/database-migration, .github/skills/database-migration and .opencode/skills/database-migration in your project.
Going by SKILL.md and its folder, Database Migration needs the command-line tools its instructions call (go and make).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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.
Database Migration is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.3k tokens (SKILL.md is roughly 5k 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 Database Migration: Chdb SQL (vemetric/vemetric, 394 stars), Querying Tempo (tempoxyz/tidx, 107 stars), Semantic Analyst (sidequery/sidemantic, 129 stars) and Database Marchat (Cod-e-Codes/marchat, 137 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Rain-kl (a GitHub user) maintains it in Rain-kl/OpenFlare, which has 288 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 7, 2026.
Source: Rain-kl/OpenFlare on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.