一键导入
analyze-ci-speed
Analyze compilation time and test durations from CI logs. Use when the user asks about slow builds, slow tests, or wants to optimize CI time.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Analyze compilation time and test durations from CI logs. Use when the user asks about slow builds, slow tests, or wants to optimize CI time.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Detect breaking changes by analyzing git diff against dev branch. Checks for state access changes in call/genesis handlers, state item ordering violations, and demo-rollup-schema.json changes.
Identify flaky tests by comparing failures across multiple CI runs. Use when the user suspects flaky tests, sees intermittent failures, or wants to analyze test reliability.
Debug failed CI tests by fetching workflow logs from GitHub Actions and analyzing failures. Use when the user mentions CI failures, test failures, or wants to understand why their PR's CI is failing.
基于 SOC 职业分类
| name | analyze-ci-speed |
| description | Analyze compilation time and test durations from CI logs. Use when the user asks about slow builds, slow tests, or wants to optimize CI time. |
Analyze compilation time and test durations from CI logs to identify optimization opportunities.
gh CLI installed and authenticated (gh auth login)Get latest successful run from dev branch:
gh run list --workflow=Rust --branch=dev --limit=1 --status=success --json databaseId,conclusion,headSha,createdAt
Get test jobs (nextest, nextest_all_features, coverage):
gh run view <run-id> --json jobs --jq '.jobs[] | select(.name == "nextest" or .name == "nextest_all_features" or .name == "coverage") | {id: .databaseId, name: .name}'
Download logs, stripping ANSI codes:
mkdir -p ci-logs/speed-analysis/
gh run view --job <job-id> --log | perl -pe 's/\e\[[0-9;]*m//g' > ci-logs/speed-analysis/<job_name>.log
Search for cargo build summary in logs:
Finished ... in Xm Ys
Also look for incremental compilation info and cache hit rates.
Parse nextest output for test durations. Look for patterns like:
PASS [ 1.234s] crate_name::module::test_name
SLOW [ 15.678s] crate_name::module::slow_test
Extract all test durations and sort to find top 10 slowest tests.
Provide summary: