Warehouse SQL
HybridAIOne/hybridclaw
Review and run read-only natural-language SQL against a customer data warehouse with cached schema introspection and explicit write grants.
OpenFlare / Wavelet:当新增或修改日志/分析用途表(节点访问日志、用户访问日志、可观测时序)、接入 internal/repository/logstore、切换日志主库、实现 PG/SQLite 回落,或判断一张表该走业务主库还是日志库时必须使用。
$ npx skills add Rain-kl/OpenFlare --skill logstore -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Rain-kl/OpenFlare logstore --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/logstore .claude/skills/logstore && 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 "logstore" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/logstore into .claude/skills/logstore/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "logstore", 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/logstoreType 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 logstore -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Rain-kl/OpenFlare logstore --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/logstore .agents/skills/logstore && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "logstore" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/logstore into .agents/skills/logstore/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "logstore", 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 logstore -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Rain-kl/OpenFlare logstore --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/logstore .cursor/skills/logstore && 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 "logstore" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/logstore into .cursor/skills/logstore/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "logstore", 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/logstore--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 logstore -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Rain-kl/OpenFlare logstore --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/logstore .gemini/skills/logstore && 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 "logstore" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/logstore into .gemini/skills/logstore/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "logstore", 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 logstoreInstalls 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 logstore -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/logstore .github/skills/logstore && 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 "logstore" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/logstore into .github/skills/logstore/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "logstore", 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 logstore -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 logstore --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/logstore .opencode/skills/logstore && 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 "logstore" agent skill from https://github.com/Rain-kl/OpenFlare/tree/main/.agents/skills/logstore into .opencode/skills/logstore/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "logstore", 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.
logstoreOpenFlare / Wavelet:当新增或修改日志/分析用途表(节点访问日志、用户访问日志、可观测时序)、接入 internal/repository/logstore、切换日志主库、实现 PG/SQLite 回落,或判断一张表该走业务主库还是日志库时必须使用。
Logstore is an agent skill from Rain-kl/OpenFlare. OpenFlare / Wavelet:当新增或修改日志/分析用途表(节点访问日志、用户访问日志、可观测时序)、接入 internal/repository/logstore、切换日志主库、实现 PG/SQLite 回落,或判断一张表该走业务主库还是日志库时必须使用。
Its SKILL.md is about 750 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. It works with SQLite, Cloudflare, ClickHouse and SQL. 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.
10 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 7c2304d. 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.
Logstore loads about 751 tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 187 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 7c2304d, republished under its Apache-2.0 licence (© Rain-kl). 187 words, ~751 tokens.
.claude/skills/logstore/SKILL.md (or your agent's skills folder).开始前阅读根目录 AGENTS.md。DDL 用 database-migration;高频写入队列用 clickhouse-batchwriter;切换任务用 new-async-task。本技能只回答:这张表是不是日志表,以及如何接入可切换的日志主库。
设计背景见 日志存储解耦。
日志表同时满足:
不要做成日志表:Zone、节点、配置版本、任务执行、上传元数据。这些走主库 repository。
当前日志域:
| 域 | 接口 | 表 |
|---|---|---|
| 节点访问日志 | AccessLogStore | of_node_access_logs |
| 可观测 | ObservabilityStore | of_node_metric_snapshots / of_node_edge_health / of_node_obs_frps / of_node_obs_frpc |
| 用户访问审计 | UserAccessLogStore | w_user_access_logs |
| 层级 | 路径 | 职责 |
|---|---|---|
| 抽象 | internal/repository/logstore | 接口 + Active/BuildForMigration;apps 只面向这里或 repository 门面 |
| CH 实现 | logstore/clickhouse_store.go 委托 analytics | 原生批量 + 现有聚合 SQL |
| 主库实现 | logstore/postgres_store.go | PG(按月分区)与 SQLite(普通表)共用 GORM |
| Model | internal/model/analytics | 实体与批量 SQL,无 IO |
| 入队 | chwriter / risk_control + batchwriter | flush 调 logstore BatchInsert*;CH 入队经 hooks |
| 切换 | of_log_db_switch | 冻结 → chwriter.Drain → 逐表复制 → 翻转 |
| 约束 | logstore/imports_test.go | apps 禁止 import repository/analytics |
log_database 只能是「随主库」或 clickhouse。log_database / log_db_migration 受保护。
internal/model/analytics):TableName + InsertColumns / BatchInsertSQL。MergeTree + toYYYYMM;PG PARTITION BY RANGE(时间列)(主键含分区键);SQLite 普通表。不要在主库建 CH 物化视图,聚合实时算。AccessLogStore / ObservabilityStore / UserAccessLogStore 就不要再拆包。新域才新增接口并放进 Store。BatchInsert(含 ensureWritable)、业务查询、ListForMigration、MigrationRange、DeleteAll、DeleteBefore、EnsurePartitions(仅 PG 预建)。analyticsrepo;GORM 共用一套,方言 SQL 放 dialect_*.go。零值 id 用 idgen.NextUint64ID()。buildStore:CH / GORM 两分支都挂上。batchwriter;FlushFunc → logstore.Active。节点日志/可观测走 SetAccessLogHooks / SetObservabilityHooks,不要让 apps 碰 ChConn。clearTarget + copy* 增加该表;源数据不删,失败不翻转。log_retention_days_*;性能指标走 metric_retention_days。不要擅自共用错误的 TTL。analytics 或 infra/persistence(batchwriter/idgen 除外)的 import 必须失败。analyticsrepo / db.ChConn / db.ChDB 做日志读写PrepareBatchlog_database / log_db_migrationgo test ./internal/repository/logstore ./internal/repository/analytics
go test ./internal/apps/openflare/... ./internal/apps/admin/logs ./internal/apps/admin/status
make swagger
make code-check对照:of_node_access_logs 或 w_user_access_logs 的 model、三库 goose、logstore 双实现、chwriter/risk_control flush、LogDBSwitchHandler。
© 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/logstore of Rain-kl/OpenFlare.
Open the folder on GitHubat commit 7c2304d
Logstore 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 |
|---|---|---|---|---|---|---|
| Logstore this skillRain-kl/OpenFlare | 288 | — | ~751 | Automated safety check: Pass | Apache-2.0 | |
| Warehouse SQLHybridAIOne/hybridclaw | 158 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Cloudflare D1secondsky/claude-skills | 227 | — | ~3.9k | Automated safety check: Pass | MIT | |
| Clickhouse Logs Queriessupabase/supabase | 111k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| SQL Database Support for pRESTprest/prest | 4.6k | — | ~1.6k | Automated safety check: Pass | MIT | |
| Chdb SQLvemetric/vemetric | 395 | 1 repos | ~1.2k | Automated safety check: Pass | Apache-2.0 |
HybridAIOne/hybridclaw
Review and run read-only natural-language SQL against a customer data warehouse with cached schema introspection and explicit write grants.
secondsky/claude-skills
Cloudflare D1 serverless SQLite on edge. An agent skill from secondsky/claude-skills.
supabase/supabase
Write, review, and migrate Supabase logs queries against the ClickHouse-backed logs table (the logs.all.otel analytics endpoint).
prest/prest
Guides classifying, gap-analyzing and scaffolding support for a new SQL database in pREST, from Postgres-compatible variants to entirely new dialects.
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…
ClickHouse/ClickHouse
Bisect a ClickHouse regression using pre-built master binaries from CI.
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 项目专用:当新增或修改数据库表结构、索引、初始化数据、系统配置 seed、模板 seed、默认管理员、goose SQL 迁移、internal/infra/persistence/migrator、ClickHouse 分析库 DDL 或数据库升级流程时必须使用。本技能指导在 internal/infra/persistence/migrator/goose 下编写…
Works with
Categories
OpenFlare / Wavelet:当新增或修改日志/分析用途表(节点访问日志、用户访问日志、可观测时序)、接入 internal/repository/logstore、切换日志主库、实现 PG/SQLite 回落,或判断一张表该走业务主库还是日志库时必须使用。. Logstore is an agent skill from Rain-kl/OpenFlare.
Logstore fits situations like: databases work in your project.
Run `npx skills add Rain-kl/OpenFlare --skill logstore -a claude-code`. Or copy the skill folder (.agents/skills/logstore in Rain-kl/OpenFlare) into .claude/skills/logstore in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Rain-kl/OpenFlare --skill logstore -a codex`. Or copy the skill folder (.agents/skills/logstore in Rain-kl/OpenFlare) into .agents/skills/logstore 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 logstore -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/logstore, .gemini/skills/logstore, .github/skills/logstore and .opencode/skills/logstore in your project.
Going by SKILL.md and its folder, Logstore 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.
Logstore 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 751 tokens (SKILL.md is roughly 3k 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 Logstore: Warehouse SQL (HybridAIOne/hybridclaw, 158 stars), Cloudflare D1 (secondsky/claude-skills, 227 stars), Clickhouse Logs Queries (supabase/supabase, 111k stars) and SQL Database Support for pREST (prest/prest, 4.6k 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 8, 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.