Issue Skill
SkillFiles & storageFile a well-formed bug report or feature request. Use when the user asks to open an issue, report a bug, or request a feature.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Issue Skill skill
What this skill tells your AI
The instructions your AI receives, as published by nullean/mermaider in .claude/skills/issue/SKILL.md and read by ahel’s review.
Read .claude/skills/writing-style.md before writing anything.
Files a GitHub issue that matches the repo's templates, applies correct labels, and checks for duplicates first.
Steps
1. Check for duplicates
Search for near-duplicates before opening anything. Link any you find in the issue body rather than filing a second. Use the full URL form for all links — see ## Linking to issues and pull requests in writing-style.md.
gh issue list --search "<key terms>" --limit 10
2. Determine the issue type
- Bug — something that used to work stopped, or produces wrong output. Use
bug-reportstructure. - Feature / enhancement — something that does not exist yet, or needs to be better. Use
enhancementstructure.
3. Write the title
- ≤70 characters, no trailing period
- States the observable problem or the wanted capability — not the internal cause or the implementation
4. Write the body
Bug report:
<One sentence: what went wrong and, briefly, under what condition. Be specific.>
### What happened
<What you saw. Include the command you ran, the input, and the exact output or
error. Commands and error messages go in fenced blocks.>
### How to reproduce
<Minimal steps. A command and the file it ran against is enough if that covers it.
Skip this section if the "What happened" section already makes it reproducible.>
### Version or commit
<Output of the tool's `--version` flag, or the commit SHA if building from source.
This is the single most useful piece of triage data.>
Feature request:
<One sentence: the outcome you want, not the implementation.>
### What is getting in your way
<The concrete limitation. What are you trying to do, and what stops you?
One to three sentences.>
### What would you like instead
<Your proposed change or outcome. If you have a specific implementation in mind,
describe it — but a clear outcome is enough.>
### Anything else
<Examples from other tools, links, screenshots, or context that did not fit above.
Skip this section if there is nothing to add.>
Formatting rules:
- Same plain-language rules as PR bodies — active voice, short sentences, no mechanical noun clusters.
- Commands and error messages in fenced blocks.
- Backticks on all identifiers: flags, config keys, file paths, method names.
- Skip any section that has nothing to say — a blank section adds noise, not structure.
5. Choose labels
Apply the labels this repo defines. Common defaults:
- Type (required):
bugorenhancement - Area (one, if the repo defines area labels): pick the label that matches the affected subsystem
needs triage(if the repo uses it)
Do not invent new labels. Check .github/ or the repo's CONTRIBUTING guide for the label set.
6. Create the issue
One call — title, labels, and body together:
gh issue create \
--title "<title>" \
--label "bug,needs triage" \
--body "$(cat <<'EOF'
<lead sentence>
### What happened
...
### Version or commit
...
EOF
)"
Replace bug with enhancement for feature requests. Omit area or triage labels if the repo does not use them.
7. Return the issue URL
Always print the URL so the user can open it directly.
Signals
- GitHub stars
- 35
- Forks
- 8
- Last commit
- Sep 2026
- Hacker News mentions
- 20
ahel recommends instead
Advanced
- Catalog kind
- skill
- Gateway key
issue-2- Source
- github.com/nullean/mermaider