From claude-skills
File GitHub issues against joestump/claude-skills when another skill in this repo hits friction during a run. Other skills in this repo delegate their self-evaluation reporting to this skill rather than implementing their own filing logic. Triggers when another skill explicitly invokes self-report after detecting that its trip thresholds were exceeded (tool-call budget, repeated bug retries, material assumptions, render integrity issues, user pushback in same turn), or when the user explicitly invokes /self-report. If multiple skills from this repo ran in the same session and each independently tripped, file one issue per skill — never bundle reports for different skills into a single issue. Each issue is labeled with both skill-self-report and skill:<skill-name> so they can be filtered per-skill on the issues tab. Issue bodies must never contain user data, account balances, names, or document contents — only meta-signals about how the run went.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-skills:self-reportThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill is the single owner of "skill hit friction → file a GitHub issue." Other skills in this repo do not implement their own filing logic. They detect their own trip conditions, then hand off to `self-report` with a skill name, a short title, and a body.
This skill is the single owner of "skill hit friction → file a GitHub issue." Other skills in this repo do not implement their own filing logic. They detect their own trip conditions, then hand off to self-report with a skill name, a short title, and a body.
references/self-eval.md. Common signals (each skill defines its own exact thresholds):
${...}, NaN/undefined in output, missing tabs, etc.)/self-report.Do not self-report this skill. If self-report itself fails, surface the failure to the user in chat. Filing-about-filing is a recursion trap.
If two or more skills from this repo ran in the same session and each independently tripped, file one issue per skill. Never bundle reports for different skills into a single issue — they go to different audiences (the maintainer of each skill) and have different fix surfaces.
When multiple issues are filed in one session, mention this to the user once at the end:
I noticed friction in this run across
retirement-planandweekly-review. I've filed one issue per skill. [link, link]
Don't repeat. Don't nag.
For each skill that tripped:
Build the issue body following references/issue-format.md. Lift the run-specific facts (tool-call count, retry count, phase reached, failure-signal checkboxes) from the calling skill's run state.
Sanitize. Apply references/privacy.md before writing the body — no balances, names, document contents, addresses, partner identifiers, or direct quotes from user docs.
File via the path that's available (in order):
joestump/claude-skills. Labels: skill-self-report and skill:<skill-name>. Title: [<skill-name>] <short summary>.gh CLI via scripts/file_issue.sh — call it once per skill: file_issue.sh <skill-name> "<title>" <body-file>. The script ensures the per-skill label exists, then files.$SKILL_ISSUE_OUT_DIR/skill-issue-<skill-name>.md (default /mnt/user-data/outputs/) and prints a prefilled https://github.com/joestump/claude-skills/issues/new URL with labels=skill-self-report,skill:<skill-name>&title=... query params.Mention to the user once per session, only on the fallback path:
I noticed friction in this run. I've written self-reports to
skill-issue-*.md— paste them as new issues at https://github.com/joestump/claude-skills/issues/new if you'd like to track them.
skill-self-report — applied to every issue this skill files. Already exists on the repo.skill:<skill-name> — per-skill filter. The script auto-creates this label on first use with color #c5def5. Examples: skill:retirement-plan, skill:weekly-review.npx claudepluginhub joestump/claude-skills --plugin claude-skillsBuilds a throwaway prototype to answer a design question about UI appearance or state/logic behavior. Guides you through two branches: interactive terminal app for logic validation, or multiple UI variations for visual exploration.