ワンクリックで
unop-fix-issue
Formulate and apply a fix for a confirmed Unop issue, commit and push
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Formulate and apply a fix for a confirmed Unop issue, commit and push
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Scan recent Steam comments for bug reports and open or update GitHub issues for them
Adversarially review a PR's diff against main with inline comments and a verdict, appending to the shared file if one exists
Analyze a GitHub issue, classify it, post a comment, and write findings to a file
SOC 職業分類に基づく
| name | unop-fix-issue |
| description | Formulate and apply a fix for a confirmed Unop issue, commit and push |
| argument-hint | <issue-number> |
Formulate a fix approach for a confirmed Unop issue, apply it, run tiger, commit, and push. Read full context from a shared file and append a ## Fix N section with the approach and changes.
This skill runs autonomously, without asking for approval. Any human gates belong to the calling workflow, not here. It reports a summary at the end.
ProZeratul/CrusaderKings3UnofficialPatch. Use the gh CLI for all GitHub operations.tmp/issue-<N>.md — the handover document. Other skills may create it with the ## Analysis section and append ## Review N sections. This skill reads both and appends ## Fix N.419).fixer.CLAUDE.md first.<identity>): begin each comment's first line with **<identity>:**. A comment containing @<identity> is addressed to you.## Analysis section and every prior ## Fix N and ## Review N.Findings and file-verified facts, but treat any Fix directions recorded there as one unverified hypothesis, not a spec. Re-derive the approach from the facts and choose the altitude.make tiger reports new warnings, invoke the tiger skill to fix them properly.examples.md for relevant past investigations when a situation it covers comes up.Read the shared file for the investigation findings, classification, and any prior fix/review cycles.
Re-fix due to review. If a ## Review N section is present, read the most recent one and treat its High and Medium findings as the work list for this attempt — every one must be addressed before you consider the fix ready. Low findings are optional. Earlier ## Fix N sections show what was already tried.
Re-fix due to PR feedback. If the fix has a linked PR and there is feedback after your last **<identity>:** comment (especially any addressing @<identity>), read its conversation and review comments — gh pr view <PR> --comments, plus inline comments via gh api repos/ProZeratul/CrusaderKings3UnofficialPatch/pulls/<PR>/comments. Take into account any feedback from the maintainers but vet each against the code; if you disagree, say so in the ## Fix N rather than silently complying.
Re-read the relevant Unop and vanilla files to refresh the context before formulating the fix.
Work out how to fix the bug before writing any code.
examples.md (#420).examples.md (#498).examples.md (#498).examples.md (#440, #501).is_shown / is_valid / can_create. If another guard still blocks the reporter's case, the fix doesn't work. See examples.md (#440).examples.md (#213).Fix directions in the shared file are candidates, not defaults — re-derive the approach from the verified facts. Watch for fixes that destroy state other systems still depend on. See examples.md (#213, #498)..info/log line); if it can't be confirmed, flag it for in-game testing. See examples.md (#498).Paradox Script Gotchas:
custom_description is a tooltip wrapper, not a condition. custom_description = { text = X; <trigger> } evaluates <trigger> and labels failures with X's loc — the text = line is not a separate condition.Following the project CLAUDE.md "General", "Style", and "Opening PRs" guidelines:
Be on a fix branch. If you're on the default branch (main), create one from a clean tree; otherwise you're already on the fix branch — use it.
# First attempt, only when on main. Working tree should be clean apart from .claude/; if not, stop.
git status --porcelain | grep -v '^.. \.claude/'
git checkout main && git pull --ff-only
git checkout -b <git-user>-fix-<short-slug> # from the issue title, no issue number
Apply the fix. Minimal change; #Unop comment on the first changed line; comment out rather than delete unneeded vanilla code. When enclosing existing code in a scope, indent it properly. New vanilla files should be added without modifications in a separate commit.
Validate: run make tiger and ensure no new errors or warnings.
tiger skill to handle tiger error reports.Commit fix files scoped by path. Stage explicitly (git add -- <path>, never git add -A) and commit with a pathspec: git commit -m "<summary>" -- <path...>. Before committing, run git diff --cached --name-only and confirm only the fix files are listed. Commit message: short imperative summary.
Open or update the PR:
First fix attempt: open a draft PR whose description contains a Fixes #<N> line and a concise description of the fix prefixed with **<identity>:**. The Fixes #<N> line auto-links the issue, which already contains the analysis comment and labels. This description is your first-fix comment — don't also post a separate PR comment.
gh pr create --draft --title "<title>" --body "$(cat <<'EOF'
Fixes #<N>
**<identity>:** <short description of the fix>
EOF
)"
Re-fix attempt: push to the existing branch — the PR updates automatically. Then post a concise **<identity>:** PR comment explaining what changed (gh pr comment <PR>, resolving <PR> with gh pr view --json number -q .number on the checked-out branch); if the re-fix addressed PR feedback, reply to those comments directly.
Append a ## Fix N section to the shared file (N = 1 for the first attempt, 2 for the second, etc.):
## Fix N
**Approach:** <one-sentence description>
**Addresses review:** <which Review findings this resolves; omit on the first attempt>
**Files changed:**
- `<path>` — <one-line note>
**Key assumption:** <the single behavioral assumption the fix depends on, and its corroboration — or "test in-game" if unconfirmed>
**Commit:** <commit message>
**PR:** <PR URL> | existing PR updated
When done, report to the user:
error.log for errors related to the fix.examples.md contains past investigations, one section per issue. Read the relevant section when its situation comes up.
/unop-fix-issue 419