add-issue
Skill0 starsChanged 2 months agoMITView on GitHub
This skill should be used when the user asks to "add an issue", "create an issue", "new issue", "open an issue", "file an issue", or references EPICS_ROOT/. Adds a single issue scoped to an existing epic. Each issue lives at EPICS_ROOT/<epic>/issues/<issue> as a well-organised ISSUE.md template with an issue lifecycle: status, priority, assignees, labels, acceptance criteria, PRs, comments and resolution.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- kdy1/kdy1-scriptstheir own version, first seen Nov 1, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- kdy1/kdy1-scripts★ 33same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository6 other files it gives its agents.
- skills/AGENTS.mdAGENTS.md
- add-commentSkill
- add-epicSkill
- issue-managerSkill
- issue-subagent-orchestrationSkill
- research-project-epic-managerSkill
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 1 is distinctive, and 7 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 21
Create a new issue scoped to an already-existing epic.
- Very specific: line 39
Use when the user wants to plan individual pieces of work inside an existing epic - e.g.
- Very specific: line 53
Create the issue (the script lives in this skill's scripts/ directory - the skill loader provides the skill's base path when the skill is …
- Very specific: line 72
Add comments to an issue after it is created with the add-comment skill, which appends author-anonymous, chronological comments (see its …
- Very specific: line 102
no template placeholders remain (empty Description filler, unfilled criteria, path/to/file).
- Very specific: line 105
If any of these fail, the issue stays draft and the script exits non-zero and lists what is missing.
- Very specific: line 117
If you already have the full issue content ready, pass --status open at creation time to skip the draft stage entirely:
- Very specific: line 150
When --body is combined with --status open, the issue is fully realised in one step: ready to be picked up by the issue manager.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Add Issue
Create a new issue scoped to an already-existing epic. An issue is a single unit of actionable work inside an epic - the equivalent of a GitHub issue. It has a lifecycle (draft -> open -> blocked -> resolved/closed), comments, a resolution, and linked pull requests, mirroring how user queries are tracked on GitHub.
Layout
Each issue lives at EPICS_ROOT/<epic>/issues/<issue>:
<issue>/
|-- ISSUE.md # the issue (from template)
|-- comments/ # chronological thread of comments (append via add-comment skill)
`-- resolution.md # how/why it was resolved (once closed)When to use this skill
Use when the user wants to plan individual pieces of work inside an existing epic -
e.g. "add an issue for the login flow", "file an issue for the dashboard",
"create an issue to track the new API". The epic must already exist (see the add-epic skill).
Procedure
- Confirm the target epic exists and resolve issues dir:
issues_parent=EPICS_ROOT/<epic>/issues if [ ! -d "EPICS_ROOT/<epic>/issues" ]; then echo "error: epic '<epic>' missing or has no issues dir" >&2; exit 1 fi - Create the issue (the script lives in this skill's
scripts/directory - the skill loader provides the skill's base path when the skill is loaded):
This writespython3 <skill-dir>/scripts/add-issue.py \ "<epic>" "<issue name>"EPICS_ROOT/<epic>/issues/<issue>/ISSUE.mdfrom theISSUE.template.mdtemplate and returns the created issue dir. - Verify:
cat EPICS_ROOT/<epic>/issues/<issue>/ISSUE.md ls EPICS_ROOT/<epic>/issues
The ISSUE.template.md starts as a well-organised template with Metadata,
Description, Acceptance Criteria, Repro/Steps, Proposed Approach, Files, Comments,
Resolution & PRs, and Notes sections - fill in each as the issue evolves.
Add comments to an issue after it is created with the add-comment skill,
which appends author-anonymous, chronological comments (see its
references/comments-best-practices.md). Comments are never stored with a
human or agent identity.
Draft-first lifecycle (default)
New issues are created with status draft by default. A draft is a stub: it
is a skeleton from the template (empty Description, unchecked Acceptance Criteria,
placeholder tokens). It is not picked up by the autonomous lifecycle
tracker (which only drives issues with status open, blocked, resolved,
or closed).
Promoting a draft
To move a draft into the autonomous flow, it must first be authored (fill in the Description, check off the acceptance criteria you can verify, delete the template placeholders) and then promoted:
python3 <skill-dir>/scripts/add-issue.py --promote \
"<epic>" "<issue>"The --promote flag (or the backward-compat promote-issue.py) runs a final
readiness check and flips the status from draft to open only if the issue
is genuinely ready to be worked:
- the Description section has real (non-template) content, and
- at least one Acceptance Criterion is checked (
- [x]), and - no template placeholders remain (empty Description filler, unfilled
criteria,
path/to/file).
If any of these fail, the issue stays draft and the script exits non-zero
and lists what is missing. Use --force to promote anyway (not recommended -
you are bypassing the guard that keeps half-written issues out of the
autonomous pipeline).
Why? A sub-agent only gets one shot per assignment. A half-authored draft (vague description, no checked criteria) would waste the run and leave the issue in an ambiguous state. The draft gate guarantees every issue that reaches
openis actionable.
One-shot creation with --status open and --body
If you already have the full issue content ready, pass --status open at
creation time to skip the draft stage entirely:
python3 <skill-dir>/scripts/add-issue.py --status open \
"<epic>" "<issue name>"The --status open flag creates the issue directly in open state - no
promotion step needed.
You can also pass the full content inline with --body - the argument is
literal markdown text, written verbatim as the issue body. For large content,
pipe from a file or heredoc:
# From a heredoc:
python3 <skill-dir>/scripts/add-issue.py \
--body "# My Issue
## Metadata
- **Status:** `open`
...
" \
"<epic>" "<issue name>"
# From a file:
python3 <skill-dir>/scripts/add-issue.py \
--body "$(cat /path/to/issue-body.md)" \
"<epic>" "<issue name>"When --body is combined with --status open, the issue is fully realised
in one step: ready to be picked up by the issue manager.
Additional Resources
assets/ISSUE.template.md- the ISSUE.template.md skeleton that theadd-issuescript fills in (kept here for reference/linking).scripts/add-issue.py --promote- the draft->open readiness gate (see "Draft-first lifecycle" above).scripts/promote-issue.pyis a backward-compatible wrapper for the same flag.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

