packages/shared-skills/skills/lcx-contribute-bug-fix/SKILL.md
Use this skill to debug a concrete LazyCodex or Codex defect, implement the smallest correct fix in a fresh temporary workspace, and open a GitHub PR. Work in English, keep the PR body short, and support every claim with runtime or source evidence.
Route ownership the same way as $lcx-report-bug:
code-yeongyu/lazycodex for LazyCodex, lazycodex-ai, omo-codex, bundled skills, hooks, MCP wiring, installer behavior, marketplace sync, docs, or packaging.openai/codex for upstream Codex CLI bugs that reproduce without LazyCodex or come from Codex core behavior.Create a PR that includes:
/tmp clone/worktreelazycodex-generated when label management is availableTag: lazycodex-generated$omo:debugging for the investigation. If only unqualified skill names are exposed, invoke $debugging and state that it is the OMO debugging skill./tmp/openai-codex-source before choosing.TARGET_REPO="code-yeongyu/lazycodex" # or openai/codex
WORK_ROOT="$(mktemp -d /tmp/lazycodex-fix-XXXXXX)"
gh repo clone "$TARGET_REPO" "$WORK_ROOT/repo" -- --depth=1
cd "$WORK_ROOT/repo"
BASE_BRANCH="$(git remote show origin | sed -n '/HEAD branch/s/.*: //p')"
git fetch origin "$BASE_BRANCH" --depth=1
BRANCH_NAME="lazycodex/bug-fix-<short-slug>"
git worktree add "$WORK_ROOT/worktree" -b "$BRANCH_NAME" "origin/$BASE_BRANCH"
cd "$WORK_ROOT/worktree"
If gh cannot clone, use git clone --depth=1 "https://github.com/$TARGET_REPO" "$WORK_ROOT/repo" and continue with the same worktree flow.
/tmp/lazycodex-fix-<short-slug>-repro.log.git status --short
git add -A
git commit -m "fix: <short bug-fix summary>"
git log --oneline "origin/$BASE_BRANCH..HEAD"
scripts/create-pr-body.mjs.LABEL_ARGS=()
if gh label create lazycodex-generated --repo "$TARGET_REPO" --color "7C3AED" --description "Created by LazyCodex" --force; then
LABEL_ARGS=(--label lazycodex-generated)
else
echo "Label management unavailable for $TARGET_REPO; keeping the footer tag only."
fi
openai/codex, fork first and use the fork as the head repository:PUSH_REMOTE="origin"
PR_HEAD="$BRANCH_NAME"
if [ "$TARGET_REPO" = "openai/codex" ]; then
gh repo fork "$TARGET_REPO" --remote --remote-name fork
PUSH_REMOTE="fork"
GH_USER="$(gh api user --jq .login)"
PR_HEAD="$GH_USER:$BRANCH_NAME"
fi
git push -u "$PUSH_REMOTE" "$BRANCH_NAME"
gh pr create --repo "$TARGET_REPO" --base "$BASE_BRANCH" --head "$PR_HEAD" --title "<short fix title>" "${LABEL_ARGS[@]}" --body-file "$PR_BODY"
cd /
git -C "$WORK_ROOT/repo" worktree remove "$WORK_ROOT/worktree"
find "$WORK_ROOT" -mindepth 1 -maxdepth 1 -exec rm -r -- {} +
rmdir "$WORK_ROOT"
Return the PR URL, the reproduction command, the verification command, and the cleanup receipt.
Use the bundled script to generate the PR body. Create a JSON file with this shape:
{
"title": "Fix short user-visible failure",
"targetRepository": "code-yeongyu/lazycodex",
"problem": "What is broken for the user.",
"reproductionLogs": "Exact failing command, log excerpt, or trace.",
"approach": "What changed and why this is the smallest correct fix.",
"confidence": "Why the diagnosis and fix are strongly supported.",
"risks": "Risk level and what could regress.",
"userVisibleBehaviorChanges": "What changes for the user after the PR.",
"verification": ["failing test before fix", "passing test after fix", "manual QA command"]
}
Run:
PR_INPUT="/tmp/lazycodex-fix-<short-slug>-pr.json"
PR_BODY="/tmp/lazycodex-fix-<short-slug>-pr.md"
node "<skill-root>/scripts/create-pr-body.mjs" "$PR_INPUT" "$PR_BODY"
The generated body must follow this structure:
## Problem Situation
[What failed for the user.]
## Reproduction Logs
[Exact failing command and relevant log excerpt.]
## Approach
[What changed and why.]
## Why I Am Confident
[Evidence that proves the root cause and fix.]
## Risks
[Risk level and possible regressions.]
## User-Visible Behavior Changes
[What users experience after this PR.]
## Verification
- [RED test output or repro before the fix]
- [GREEN test output after the fix]
- [Manual QA command and result]
---
This PR was debugged, implemented, and created with [LazyCodex](https://github.com/code-yeongyu/lazycodex).
Tag: lazycodex-generated
Stop and ask one narrow question only when:
Do not open:
Tag: lazycodex-generated footer