Turning Engineering Analytics Into Insights
PostHog/posthog
Converts engineering analytics (PR / CI) data into saved PostHog insights, dashboards, and subscriptions, and explains how to query the product data directly with SQL.
Audit open "flaky test" GitHub issues and close those whose tests are no longer failing on master.
$ npx skills add ClickHouse/ClickHouse --skill close-flaky-issues -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ClickHouse/ClickHouse close-flaky-issues --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/ClickHouse/ClickHouse.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/close-flaky-issues .claude/skills/close-flaky-issues && 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 "close-flaky-issues" agent skill from https://github.com/ClickHouse/ClickHouse/tree/master/.claude/skills/close-flaky-issues into .claude/skills/close-flaky-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "close-flaky-issues", 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/ClickHouse/ClickHouse/tree/master/.claude/skills/close-flaky-issuesType 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 ClickHouse/ClickHouse --skill close-flaky-issues -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ClickHouse/ClickHouse close-flaky-issues --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ClickHouse/ClickHouse.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/close-flaky-issues .agents/skills/close-flaky-issues && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "close-flaky-issues" agent skill from https://github.com/ClickHouse/ClickHouse/tree/master/.claude/skills/close-flaky-issues into .agents/skills/close-flaky-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "close-flaky-issues", 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 ClickHouse/ClickHouse --skill close-flaky-issues -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ClickHouse/ClickHouse close-flaky-issues --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ClickHouse/ClickHouse.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/close-flaky-issues .cursor/skills/close-flaky-issues && 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 "close-flaky-issues" agent skill from https://github.com/ClickHouse/ClickHouse/tree/master/.claude/skills/close-flaky-issues into .cursor/skills/close-flaky-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "close-flaky-issues", 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/ClickHouse/ClickHouse.git --path .claude/skills/close-flaky-issues--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 ClickHouse/ClickHouse --skill close-flaky-issues -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ClickHouse/ClickHouse close-flaky-issues --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ClickHouse/ClickHouse.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/close-flaky-issues .gemini/skills/close-flaky-issues && 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 "close-flaky-issues" agent skill from https://github.com/ClickHouse/ClickHouse/tree/master/.claude/skills/close-flaky-issues into .gemini/skills/close-flaky-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "close-flaky-issues", 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 ClickHouse/ClickHouse close-flaky-issuesInstalls 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 ClickHouse/ClickHouse --skill close-flaky-issues -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ClickHouse/ClickHouse.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/close-flaky-issues .github/skills/close-flaky-issues && 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 "close-flaky-issues" agent skill from https://github.com/ClickHouse/ClickHouse/tree/master/.claude/skills/close-flaky-issues into .github/skills/close-flaky-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "close-flaky-issues", 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 ClickHouse/ClickHouse --skill close-flaky-issues -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ClickHouse/ClickHouse close-flaky-issues --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ClickHouse/ClickHouse.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/close-flaky-issues .opencode/skills/close-flaky-issues && 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 "close-flaky-issues" agent skill from https://github.com/ClickHouse/ClickHouse/tree/master/.claude/skills/close-flaky-issues into .opencode/skills/close-flaky-issues/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "close-flaky-issues", 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.
close-flaky-issuesAudit open "flaky test" GitHub issues and close those whose tests are no longer failing on master.
Close Flaky Issues is an agent skill from ClickHouse/ClickHouse. Audit open "flaky test" GitHub issues and close those whose tests are no longer failing on master. Cross-references CI history from play.clickhouse.com with git log to attribute fixes.
Its SKILL.md is about 1.9k 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 Testing & QA, covering Failing and flaky tests and Data warehousing. It works with ClickHouse, Git, GitHub and SQL. The repository describes itself as: ClickHouse® is a real-time analytics database management system. The licence is Apache-2.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit cd023af. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadGrepGlobFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghgitjqcurlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
play.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.
Close Flaky Issues loads about 1.9k tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 803 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, Grep, GlobAutomated 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 ClickHouse/ClickHouse at commit cd023af, republished under its Apache-2.0 licence (© ClickHouse). 803 words, ~1,941 tokens.
.claude/skills/close-flaky-issues/SKILL.md (or your agent's skills folder).$0 (optional): number of days the test must be failure-free on master before it is eligible for closing. Default: 14.$1 (optional): pass dry-run to print the table of close candidates and stop without calling gh issue close. Any other value (or none) runs the full sweep.Sweep open flaky test issues and close ones where:
These issues are auto-generated by the CI bot — closing one is safe because the bot reopens automatically if the test fails again on master.
mkdir -p tmp/flaky
gh issue list --repo ClickHouse/ClickHouse --label "flaky test" --state open \
--limit 200 --json number,title,body > tmp/flaky/issues.jsonEach body has the format:
Test name: <test_name>
Failure reason: <reason>
CI report: <url>
Failing test history: <play.clickhouse.com link with base64 SQL>Extract (number, test_name) pairs:
jq -r '.[] | [.number, ((.body | capture("Test name: (?<n>.+)")? | .n) // "")] | @tsv' tmp/flaky/issues.jsonThe trailing ? after capture is required: without it, an issue with a null body or one that doesn't contain Test name: raises an error that aborts the whole pipeline and silently drops every subsequent issue. With ?, those rows produce an empty string instead, and you can fall back to the title or to the base64 SQL after # in the Failing test history URL — some old issues use the title rather than Test name: in the body.
Run one batch query against play.clickhouse.com for all extracted test names. The checks table is publicly readable via the play user.
Before running the query, guard against an empty list. If jq extracted no non-empty test names (zero open flaky test issues, or all bodies missing Test name:), test_name IN () is invalid SQL and aborts the sweep. Skip the query in that case and report "nothing to close".
Escape single quotes in test names before interpolation. Per ClickHouse SQL rules, a literal ' inside a string literal is written as ''. Names that contain a quote (e.g. parametrized integration tests like test_foo[a'b]) will otherwise produce invalid SQL or, worse, parse as a different list. Apply s/'/''/g to each extracted name before joining them with , .
curl -sS 'https://play.clickhouse.com/?user=play' --data-binary "
SELECT test_name,
countIf(test_status IN ('FAIL','ERROR')) AS failures_90d,
countIf(test_status IN ('FAIL','ERROR') AND check_start_time >= now() - INTERVAL 30 DAY) AS failures_30d,
countIf(test_status IN ('FAIL','ERROR') AND check_start_time >= now() - INTERVAL 14 DAY) AS failures_14d,
countIf(test_status IN ('FAIL','ERROR') AND check_start_time >= now() - INTERVAL 7 DAY) AS failures_7d,
maxIf(check_start_time, test_status IN ('FAIL','ERROR')) AS last_fail
FROM checks
WHERE check_start_time >= now() - INTERVAL 90 DAY
AND test_name IN ( '<test1>', '<test2>', ... )
AND (pull_request_number = 0 OR base_ref IN ('master',''))
GROUP BY test_name
ORDER BY failures_7d DESC, failures_14d DESC
FORMAT TabSeparatedWithNames
"Important:
pull_request_number = 0 OR base_ref IN ('master','') filters to master commits and PRs targeting master — fork-PR noise is dropped. The empty-string case covers older rows where base_ref was not populated for direct-master runs.last_fail defaults to 1970-01-01 if the test never failed.For each issue, decide based on failures_<threshold-days>d:
0 failures in the window → close candidate>= 1 failure in the window → keep openDefault threshold is 14 days. Use 7 days for an aggressive sweep, 30 days for a conservative one.
For each close candidate, search git log:
# Look for "fix flaky" commits naming the test
git log origin/master --since="<date 90 days ago>" --format="%H %s" \
--grep="<test_name_fragment>" -i
# Look at recent direct modifications to the test file
git log origin/master --since="<date 90 days ago>" --format="%H %s" -- "<test_path>"Not every close candidate has an explicit fix commit — some stabilize via surrounding infra changes. That's fine; close those too, just without a commit reference.
For integration tests (test_X/test.py::...), search the directory: tests/integration/test_X/.
For stateless tests (NNNNN_name), search: tests/queries/0_stateless/NNNNN_name.*.
Before issuing gh issue close, print a table showing:
The user already authorized closing when they invoked the skill, so do not ask follow-up questions — proceed to step 6 immediately after printing. The table is for after-the-fact spot-checking, not for interactive approval. If the user wants a preview without changes, they can pass dry-run as a second argument and the skill should stop here.
For each closeable issue, post a closing comment that names what fixed it and how recent the last failure was:
# With fix commit linked
gh issue close <N> --repo ClickHouse/ClickHouse \
--comment "Fixed by <SHA> (\`<commit subject>\`). No failures on master in the last <D> days (last seen <YYYY-MM-DD>). Closing."
# Without a specific fix
gh issue close <N> --repo ClickHouse/ClickHouse \
--comment "No failures on master in the last <D> days (last seen <YYYY-MM-DD>). Closing as no longer flaky; will reopen automatically by CI bot if it fails again."Use full 40-char SHAs in comments — short SHAs can become ambiguous later.
Wrap test names, commit subjects, and identifiers in backticks per the project's CLAUDE.md style rule.
End-of-task summary: how many were closed (split into "with fix linked" vs "stabilized without fix"), how many remain open, and whether any high-frequency offenders are left (e.g. tests still failing >5 times per week — those may need an owner ping rather than a sweep).
DO NOT modify the body content. DO NOT remove labels. because CI matches against them. Closing with a comment is the only allowed action.tmp/flaky/ for working files, never /tmp (per CLAUDE.md).failures_14d == 0. Tests can have multi-week dormancy and then reappear — 14 days is a reasonable balance between cleaning up cruft and avoiding premature closure.© ClickHouse, 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 .claude/skills/close-flaky-issues of ClickHouse/ClickHouse.
Open the folder on GitHubat commit cd023af
Close Flaky Issues 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 |
|---|---|---|---|---|---|---|
| Close Flaky Issues this skillClickHouse/ClickHouse | 50k | — | ~1.9k | Automated safety check: Notes | Apache-2.0 | |
| Turning Engineering Analytics Into InsightsPostHog/posthog | 40k | — | ~2.9k | Automated safety check: Pass | Custom licence | |
| Update Keyword Engine ListsClickHouse/clickhouse-java | 1.6k | — | ~457 | Automated safety check: Pass | Apache-2.0 | |
| Testingar-io/ar-io-node | 127 | — | ~2.6k | Automated safety check: Notes | AGPL-3.0 | |
| MAUI UI Test Writerdotnet/maui | 23k | — | ~3k | Automated safety check: Pass | MIT | |
| CI Fix MonitorZaxbyHub/opencode-swarm | 490 | — | ~551 | Automated safety check: Pass | MIT |
PostHog/posthog
Converts engineering analytics (PR / CI) data into saved PostHog insights, dashboards, and subscriptions, and explains how to query the product data directly with SQL.
ClickHouse/clickhouse-java
Update ALLOWEDKEYWORDALIASES in ClickHouseSqlUtils.java and ENGINETOTABLETYPE in DatabaseMetaDataImpl.java from failing test output.
ar-io/ar-io-node
Decision guide for testing in the ar-io-node repo — which test layer to use, how to run it, and which helpers to reach for.
dotnet/maui
Writes UI tests that reproduce a GitHub issue in .NET MAUI and keeps iterating until the tests actually fail, proving they catch the bug.
ZaxbyHub/opencode-swarm
Codex adapter for monitoring and fixing CI failures on opencode-swarm PRs.
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.
ClickHouse/ClickHouse
Check whether ClickHouse's supported versions (last 3 majors + latest LTS) have recent stable patch releases, diagnose why the scheduled AutoReleases pipeline failed, and identify which releases…
ClickHouse/ClickHouse
Analyze a jemalloc (or other) allocation profile in collapsed stack format.
ClickHouse/ClickHouse
Bisect a ClickHouse regression using pre-built master binaries from CI.
ClickHouse/ClickHouse
Generate PR descriptions for ClickHouse/ClickHouse that match maintainer expectations.
Works with
Categories
Audit open "flaky test" GitHub issues and close those whose tests are no longer failing on master. Close Flaky Issues is an agent skill from ClickHouse/ClickHouse. Audit open "flaky test" GitHub issues and close those whose tests are no longer failing on master.
Close Flaky Issues fits situations like: tasks that involve Failing and flaky tests; tasks that involve Data warehousing.
Run `npx skills add ClickHouse/ClickHouse --skill close-flaky-issues -a claude-code`. Or copy the skill folder (.claude/skills/close-flaky-issues in ClickHouse/ClickHouse) into .claude/skills/close-flaky-issues in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ClickHouse/ClickHouse --skill close-flaky-issues -a codex`. Or copy the skill folder (.claude/skills/close-flaky-issues in ClickHouse/ClickHouse) into .agents/skills/close-flaky-issues 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 ClickHouse/ClickHouse --skill close-flaky-issues -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/close-flaky-issues, .gemini/skills/close-flaky-issues, .github/skills/close-flaky-issues and .opencode/skills/close-flaky-issues in your project.
Going by SKILL.md and its folder, Close Flaky Issues needs the command-line tools its instructions call (gh, git, jq and curl). Its frontmatter pre-approves these tools: Bash, Read, Grep, Glob.
SKILL.md names 1 domain. In commands or code: play.clickhouse.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Close Flaky Issues 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.9k tokens (SKILL.md is roughly 7.8k 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 Close Flaky Issues: Turning Engineering Analytics Into Insights (PostHog/posthog, 40k stars), Update Keyword Engine Lists (ClickHouse/clickhouse-java, 1.6k stars), Testing (ar-io/ar-io-node, 127 stars) and MAUI UI Test Writer (dotnet/maui, 23k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ClickHouse (a GitHub organization) maintains it in ClickHouse/ClickHouse, which has 50,288 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 8, 2026.
Source: ClickHouse/ClickHouse on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.