/lcx-report-bug
Create a high-signal bug issue or PR in the repo that owns the defect. Use this whenever the user asks to report, file, open, or triage a LazyCodex, lazycodex-ai, omo-codex, Codex plugin, or upstream Codex CLI bug, especially when they need source-backed root cause, reproduction
$ npx -y skills add code-yeongyu/lazycodex --skill lcx-report-bug --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/lcx-report-bug
Context preview
The summary Claude sees to decide when to auto-load this skill.
Create a high-signal bug issue or PR in the repo that owns the defect. Use this whenever the user asks to report, file, open, or triage a LazyCodex, lazycodex-ai, omo-codex, Codex plugin, or upstream Codex CLI bug, especially when they need source-backed root cause, reproduction
SKILL.md
lcx-report-bug.SKILL.mdname: lcx-report-bug
description: "Create a high-signal bug issue or PR in the repo that owns the defect. Use this whenever the user asks to report, file, open, or triage a LazyCodex, lazycodex-ai, omo-codex, Codex plugin, or upstream Codex CLI bug, especially when they need source-backed root cause, reproduction steps, fix guidance, and GitHub routing."
metadata:
short-description: Route LazyCodex or Codex bugs with source evidence
lcx-report-bug
You are a LazyCodex bug router and reporter. Produce one useful GitHub issue or PR in English, backed by runtime evidence and source evidence rather than guesses. Route it to the repository that owns the defect:
- `code-yeongyu/lazycodex` for LazyCodex, lazycodex-ai, omo-codex, marketplace, bundled skill, hook, MCP, installer, or packaging bugs. The artifact for this repo is always an issue — never a PR, because its contents are regenerated from the source tree on every release, so PRs there cannot be merged.
- `openai/codex` for upstream Codex CLI bugs that reproduce without LazyCodex or are caused by Codex core behavior. This is the only repo where this skill may create a PR.
Use GPT-5.5 style: outcome first, concise, evidence-bound. Keep the workflow moving, but do not file an issue until the root cause and reproduction path are concrete enough for a maintainer to act.
Goal
Create or prepare a GitHub issue or PR that includes:
- clear title
- target repository decision
- environment
- reproducible steps
- expected behavior
- actual behavior
- confirmed or strongly evidenced root cause
- fix approach, including files or components likely involved
- verification plan
- `lazycodex-generated` label and footer tag
Required Workflow
1. Read the user's bug report and identify the affected surface: LazyCodex installer, Codex plugin, skill, hook, MCP, CLI alias, GitHub marketplace sync, or web/docs. 2. Invoke `$omo:debugging` for the investigation. If Codex exposes only unqualified skill names in the current session, invoke `$debugging` and state that it is the OMO debugging skill. 3. Materialize the latest LazyCodex and upstream Codex sources under `LAZYCODEX_SOURCE_ROOT="${LAZYCODEX_SOURCE_ROOT:-${TMPDIR:-/tmp}/lazycodex-sources}"` before deciding ownership. Re-sync on every run so a cached checkout cannot go stale, and validate cached checkouts before reuse so an incomplete `.git` directory cannot produce wrong routing and dead line references:
LAZYCODEX_SOURCE_ROOT="${LAZYCODEX_SOURCE_ROOT:-${TMPDIR:-/tmp}/lazycodex-sources}"
mkdir -p "$LAZYCODEX_SOURCE_ROOT"
valid_source_checkout() {
DEST="$1"
git -C "$DEST" rev-parse --is-inside-work-tree >/dev/null 2>&1 &&
git -C "$DEST" config --get remote.origin.url >/dev/null 2>&1
}
recover_corrupt_source_checkout() {
DEST="$1"
if [ -e "$DEST" ] && ! valid_source_checkout "$DEST"; then
QUARANTINED="$DEST.corrupt.$(date +%Y%m%d%H%M%S)"
mv "$DEST" "$QUARANTINED"
echo "Moved corrupt source cache $DEST to $QUARANTINED" >&2
fi
}
sync_latest_source() {
REPO="$1"; DEST="$2"
recover_corrupt_source_checkout "$DEST"
if [ ! -d "$DEST" ]; then
gh repo clone "$REPO" "$DEST" -- --depth=1 \
|| git clone --depth=1 "https://github.com/$REPO" "$DEST"
fi
if ! valid_source_checkout "$DEST"; then
echo "Source cache $DEST is not a usable git checkout after clone" >&2
return 1
fi
git -C "$DEST" remote set-url origin "https://github.com/$REPO.git" >/dev/null 2>&1 || true
DEFAULT_BRANCH="$(git -C "$DEST" remote show origin | sed -n '/HEAD branch/s/.*: //p')"
if [ -z "$DEFAULT_BRANCH" ]; then
DEFAULT_BRANCH="$(git -C "$DEST" symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null | sed 's#^origin/##')"
fi
if [ -z "$DEFAULT_BRANCH" ]; then
echo "Could not determine default branch for $REPO in $DEST" >&2
return 1
fi
git -C "$DEST" fetch --depth=1 origin "$DEFAULT_BRANCH"
git -C "$DEST" checkout -B "$DEFAULT_BRANCH" FETCH_HEAD
}
sync_latest_source code-yeongyu/lazycodex "$LAZYCODEX_SOURCE_ROOT/lazycodex-source"
sync_latest_source openai/codex "$LAZYCODEX_SOURCE_ROOT/openai-codex-source"4. Follow the debugging skill far enough to gather runtime evidence:
- form at least three plausible hypotheses
- run the smallest reproduction that exercises the real surface
- confirm the root cause by observing the failing state
- identify the minimal fix path or maintainer action
5. Compare runtime evidence with both `$LAZYCODEX_SOURCE_ROOT/lazycodex-source` and `$LAZYCODEX_SOURCE_ROOT/openai-codex-source` before choosing the target repo. Cite exact files, commands, logs, or source paths that support the routing decision. 6. Choose the target repo:
- Use `code-yeongyu/lazycodex` when the bug is in LazyCodex integration, distribution, bundled plugin code, skills, hooks, MCP wiring, installer behavior, aliases, marketplace sync, docs, or any behavior that disappears in clean upstream Codex.
- Use `openai/codex` when the bug reproduces in clean upstream Codex without LazyCodex, or the failing behavior comes from Codex CLI core, plugin API contracts, sandboxing, approvals, config loading, or built-in tool behavior.
- If ownership remains ambiguous after evidence gathering, do not guess. Prepare the issue body with the uncertainty and ask one narrow routing question.
7. Search for an existing issue in the selected repo before creating a new one. Search the other repo too when the ownership boundary is close:
TARGET_REPO="code-yeongyu/lazycodex" # or openai/codex
gh issue list --repo "$TARGET_REPO" --search "<short error or symptom>" --state open
8. If a matching open issue exists, add a comment with the new evidence instead of creating a duplicate. 9. Ensure the generated label exists in repositories you control:
LABEL_ARGS=()
if gh label create lazycodex-generated --repo "$TARGET_REPO" --color "7C3AED" --description "Created by LazyCodex" --force; then
LABEL_ARGS=(--label lazycodex
Read more
name: lcx-report-bug description: "Create a high-signal bug issue or PR in the repo that owns the defect. Use this whenever the user asks to report, file, open, or triage a LazyCodex, lazycodex-ai, omo-codex, Codex plugin, or upstream Codex CLI bug, especially when they need source-backed root cause, reproduction steps, fix guidance, and GitHub routing." metadata: short-description: Route LazyCodex or Codex bugs with source evidence
lcx-report-bug
You are a LazyCodex bug router and reporter. Produce one useful GitHub issue or PR in English, backed by runtime evidence and source evidence rather than guesses. Route it to the repository that owns the defect:
- `code-yeongyu/lazycodex` for LazyCodex, lazycodex-ai, omo-codex, marketplace, bundled skill, hook, MCP, installer, or packaging bugs. The artifact for this repo is always an issue — never a PR, because its contents are regenerated from the source tree on every release, so PRs there cannot be merged.
- `openai/codex` for upstream Codex CLI bugs that reproduce without LazyCodex or are caused by Codex core behavior. This is the only repo where this skill may create a PR.
Use GPT-5.5 style: outcome first, concise, evidence-bound. Keep the workflow moving, but do not file an issue until the root cause and reproduction path are concrete enough for a maintainer to act.
Goal
Create or prepare a GitHub issue or PR that includes:
- clear title
- target repository decision
- environment
- reproducible steps
- expected behavior
- actual behavior
- confirmed or strongly evidenced root cause
- fix approach, including files or components likely involved
- verification plan
- `lazycodex-generated` label and footer tag
Required Workflow
1. Read the user's bug report and identify the affected surface: LazyCodex installer, Codex plugin, skill, hook, MCP, CLI alias, GitHub marketplace sync, or web/docs. 2. Invoke `$omo:debugging` for the investigation. If Codex exposes only unqualified skill names in the current session, invoke `$debugging` and state that it is the OMO debugging skill. 3. Materialize the latest LazyCodex and upstream Codex sources under `LAZYCODEX_SOURCE_ROOT="${LAZYCODEX_SOURCE_ROOT:-${TMPDIR:-/tmp}/lazycodex-sources}"` before deciding ownership. Re-sync on every run so a cached checkout cannot go stale, and validate cached checkouts before reuse so an incomplete `.git` directory cannot produce wrong routing and dead line references:
LAZYCODEX_SOURCE_ROOT="${LAZYCODEX_SOURCE_ROOT:-${TMPDIR:-/tmp}/lazycodex-sources}"
mkdir -p "$LAZYCODEX_SOURCE_ROOT"
valid_source_checkout() {
DEST="$1"
git -C "$DEST" rev-parse --is-inside-work-tree >/dev/null 2>&1 &&
git -C "$DEST" config --get remote.origin.url >/dev/null 2>&1
}
recover_corrupt_source_checkout() {
DEST="$1"
if [ -e "$DEST" ] && ! valid_source_checkout "$DEST"; then
QUARANTINED="$DEST.corrupt.$(date +%Y%m%d%H%M%S)"
mv "$DEST" "$QUARANTINED"
echo "Moved corrupt source cache $DEST to $QUARANTINED" >&2
fi
}
sync_latest_source() {
REPO="$1"; DEST="$2"
recover_corrupt_source_checkout "$DEST"
if [ ! -d "$DEST" ]; then
gh repo clone "$REPO" "$DEST" -- --depth=1 \
|| git clone --depth=1 "https://github.com/$REPO" "$DEST"
fi
if ! valid_source_checkout "$DEST"; then
echo "Source cache $DEST is not a usable git checkout after clone" >&2
return 1
fi
git -C "$DEST" remote set-url origin "https://github.com/$REPO.git" >/dev/null 2>&1 || true
DEFAULT_BRANCH="$(git -C "$DEST" remote show origin | sed -n '/HEAD branch/s/.*: //p')"
if [ -z "$DEFAULT_BRANCH" ]; then
DEFAULT_BRANCH="$(git -C "$DEST" symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null | sed 's#^origin/##')"
fi
if [ -z "$DEFAULT_BRANCH" ]; then
echo "Could not determine default branch for $REPO in $DEST" >&2
return 1
fi
git -C "$DEST" fetch --depth=1 origin "$DEFAULT_BRANCH"
git -C "$DEST" checkout -B "$DEFAULT_BRANCH" FETCH_HEAD
}
sync_latest_source code-yeongyu/lazycodex "$LAZYCODEX_SOURCE_ROOT/lazycodex-source"
sync_latest_source openai/codex "$LAZYCODEX_SOURCE_ROOT/openai-codex-source"4. Follow the debugging skill far enough to gather runtime evidence:
- form at least three plausible hypotheses
- run the smallest reproduction that exercises the real surface
- confirm the root cause by observing the failing state
- identify the minimal fix path or maintainer action
5. Compare runtime evidence with both `$LAZYCODEX_SOURCE_ROOT/lazycodex-source` and `$LAZYCODEX_SOURCE_ROOT/openai-codex-source` before choosing the target repo. Cite exact files, commands, logs, or source paths that support the routing decision. 6. Choose the target repo:
- Use `code-yeongyu/lazycodex` when the bug is in LazyCodex integration, distribution, bundled plugin code, skills, hooks, MCP wiring, installer behavior, aliases, marketplace sync, docs, or any behavior that disappears in clean upstream Codex.
- Use `openai/codex` when the bug reproduces in clean upstream Codex without LazyCodex, or the failing behavior comes from Codex CLI core, plugin API contracts, sandboxing, approvals, config loading, or built-in tool behavior.
- If ownership remains ambiguous after evidence gathering, do not guess. Prepare the issue body with the uncertainty and ask one narrow routing question.
7. Search for an existing issue in the selected repo before creating a new one. Search the other repo too when the ownership boundary is close:
TARGET_REPO="code-yeongyu/lazycodex" # or openai/codex gh issue list --repo "$TARGET_REPO" --search "<short error or symptom>" --state open
8. If a matching open issue exists, add a comment with the new evidence instead of creating a duplicate. 9. Ensure the generated label exists in repositories you control:
LABEL_ARGS=() if gh label create lazycodex-generated --repo "$TARGET_REPO" --color "7C3AED" --description "Created by LazyCodex" --force; then LABEL_ARGS=(--label lazycodex
The one and only agent harness for complex codebases. Project memory, planning, execution, and verified completion inside Codex.
Repo: code-yeongyu/lazycodex
Other skills on lazycodex.
- /comment-checker
Use when Codex needs to understand or respond to automatic comment-checker feedback emitted after an edit-like PostToolUse hook.
Open skill - /lcx-contribute-bug-fix
Contribute a verified bug fix for LazyCodex, lazycodex-ai, omo-codex, bundled Codex skills, or upstream Codex CLI bugs. Opens a fork PR only for upstream openai/codex; LazyCodex-owned defects become a verified-fix issue on code-yeongyu/lazycodex (never a PR — that repo is a
Open skill - /lcx-doctor
Diagnose LazyCodex and Codex CLI installation health against the latest sources. Use whenever the user asks for a doctor or health check, says LazyCodex, lazycodex-ai, omo-codex, or Codex behaves oddly after an install, update, or config change, suspects a stale, drifted, or
Open skill - /lsp
Use when Codex needs language-server diagnostics, definitions, references, symbols, or rename safety checks in the current workspace.
Open skill - /rules
Use when the user asks about Codex Rules behavior, injected project rules, supported rule file locations, matching, or environment configuration.
Open skill - /teammode
Codex-only team orchestration: run a named team of cooperating Codex workers with durable, script-managed state. MUST USE when the user asks Codex to create, run, coordinate, inspect, archive, or delete a team of agents/threads/sessions, or to work on something as a team in
Open skill

