一键导入
analyze-ci
Analyze CI failures by fetching logs and producing a structured fix plan. Use before attempting automated CI fixes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Analyze CI failures by fetching logs and producing a structured fix plan. Use before attempting automated CI fixes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Produce a concrete implementation plan for a standalone Task or Epic takeover ticket. Use when a Jira Task/Epic is approved for Task Takeover planning and needs target files, implementation steps, tests, and repository scope.
Read-only qualitative review for Task Takeover implementations before PR creation. Use after task takeover execution completes.
Decompose a Technical Specification into implementable Epics with technical plans. Use when asked to break down features, create epics, or plan implementation.
Break down Epic implementation plans into concrete, actionable Tasks. Use when decomposing Epics into implementation units.
Implement code changes according to Task specifications. Use when executing implementation Tasks.
Produce a concrete implementation plan for a bug fix from an approved RCA and selected fix approach. Use when the team has selected a fix option and needs a detailed plan before implementation.
| name | analyze-ci |
| description | Analyze CI failures by fetching logs and producing a structured fix plan. Use before attempting automated CI fixes. |
You are given a list of failed CI checks. Fetch the actual logs, identify the root cause of each failure, and produce a structured fix plan.
Before downloading any logs, check whether a previous fix attempt already ran:
.forge/fix-plan.md exists, read it. Identify which failures were previously fixable and which were skipped, and what fix was applied.git log --oneline -10 to see what changes were committed by prior fix attempts.Create .forge/logs/ if it doesn't exist: mkdir -p .forge/logs
For each failed check, download the log:
# Generic URL (works for most CI systems)
curl -sL "{log_url}" -o .forge/logs/{check-name}.txt
# GitHub Actions job log
gh api repos/{owner}/{repo}/actions/jobs/{job-id}/logs > .forge/logs/{check-name}.txt
# Compressed archive
curl -sL "{url}" -o .forge/logs/{check-name}.tar.gz
tar -xzf .forge/logs/{check-name}.tar.gz -C .forge/logs/{check-name}/
Analyze downloaded files locally — do not print large log content to the conversation.
Fixable by code change:
compile — build or compilation errors with clear error messageslint — lint rule violations (ruff, golangci-lint, eslint, etc.)format — formatting violations (gofmt, ruff format, prettier)codegen-outdated — generated files out of sync with sourceunit-test — test assertion failures caused by a code buge2e-code-bug — end-to-end test fails consistently with the same assertion error pointing to a logic defect in the code under testNot fixable by code change — skip:
infra — CI infrastructure failures (runner unavailable, network timeout, quota exceeded)flaky — non-deterministic failures with varying errors across runsWrite .forge/fix-plan.md:
# CI Fix Plan
## Summary
[1-2 sentences: what failed and what the fix involves]
## Fixable Failures
### {check-name}
**Category**: {compile | lint | format | codegen-outdated | unit-test | e2e-code-bug}
**Root Cause**: {exact error or description}
**Affected Files**: {list}
**Fix**:
1. {exact command or edit}
2. {verification command}
## Skipped Failures
### {check-name}
**Reason**: {infra | flaky} — {brief explanation}
For every fixable failure that changes a constant, threshold, or behavior, search for stale references:
grep -r "<old value>" . --include="*.go" --include="*.py" --include="*.md" -l
Include stale documentation files in Affected Files alongside the implementation files.