Feature Management
SkillDev toolsCreate, list, or manage feature specs and GitHub issues
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 Feature Management skill
What this skill tells your AI
The instructions your AI receives, as published by yicheng47/quill in .agents/skills/feature/SKILL.md and read by ahel’s review.
Manage Quill's feature pipeline: specs live in docs/features/, tracking lives in GitHub Issues with the feature label.
Usage
/feature <action> [args]
Actions
new <name>
Create a new feature from scratch.
- Ask the user to describe the feature (motivation, scope, key decisions).
- Pick a priority (see Priority below). If the user didn't state one, propose one and confirm before filing. Don't file unlabeled.
- Create a GitHub Issue with labels
featureand the chosenP0/P1/P2/P3:- Title:
feat: <short description> - Body: Motivation, Scope summary, Implementation Phases, and a placeholder note that the spec path will be added after the issue number is assigned.
- Command shape:
gh issue create --label feature --label P1 --title "…" --body "…"
- Title:
- Use the GitHub issue number as the spec number. Create
docs/features/{issue-number}-{slug}.mdwith sections: Motivation, Scope, Implementation Phases, Verification, and aGitHub issue: <issue-url>line near the top. - Edit the GitHub Issue body to replace the placeholder with the final spec path. The issue body and spec must cross-link each other.
- Update
docs/features/README.mdto include the new spec. - Report the spec path, issue URL, and assigned priority.
list
Show all features and their status.
- Fetch open features with priority + metadata as JSON so they can be sorted:
gh issue list --label feature --state open --limit 50 --json number,title,labels,createdAt,assignees - List all spec files in
docs/features/(excluding README). - Sort the rows by priority (
P0first, thenP1,P2,P3, then unlabeled-by-priority last). Within a priority bucket, sort by spec number ascending. - Present a combined view: Priority, feature name, # (issue), spec file (if exists), Created. Issues without a P-label show
—in priority and a callout asking the user to triage them. - If the user asks for closed/shipped features too, repeat with
--state alland add a State column.
close <issue-number>
Mark a feature as shipped.
- Close the GitHub Issue:
gh issue close <number> - If a matching spec file exists in
docs/features/, move it todocs/features/archive/withgit mv. Shipped code is the source of truth, but the spec stays around as the "what we were going for" record. - Update
docs/features/README.mdto drop the archived entry from the index.
prioritize <issue-number> <P0|P1|P2|P3>
Set or change the priority of an existing feature.
- Remove any existing P-label on the issue, then add the new one:
gh issue edit <number> --remove-label P0 --remove-label P1 --remove-label P2 --remove-label P3 --add-label <priority>(Removing all four is safe —ghignores remove-label for labels not present.) - Confirm the new priority.
spec <issue-number-or-name>
Open or create a spec for an existing feature issue.
- If a spec file already exists, show its path.
- If not, fetch the issue, use the issue number as the spec number, and create
docs/features/{issue-number}-{slug}.mdfollowing the same format asnew, pre-populated from the issue body. - Edit the issue body to include the new spec path if it does not already reference it.
Labels
feature— all feature issues use this labelbug— for bug reports (not managed by this skill)P0/P1/P2/P3— priority, exactly one per issue
Priority
Every feature gets exactly one priority label. Rubric:
- P0 — Required for the next ship; nothing else moves until this lands. Rare for features.
- P1 — Wanted this cycle; blocks an active user workflow or has a stakeholder commitment.
- P2 — Real product win, but no urgency. Pick up when the P1 queue is clear.
- P3 — Idea / nice-to-have / "if we ever revisit X." OK to sit indefinitely; closing as
wontfixlater is fine.
When in doubt between two levels, pick the lower-urgency one and say why; over-labeling P0/P1 dilutes the signal.
Conventions
- Spec files are numbered by their GitHub issue number:
276-reset-all-data.mdfor issue#276. The heading must use the same number. - Slugs are lowercase kebab-case derived from the feature name.
- Specs for shipped features move to
docs/features/archive/— the implementation is the source of truth, but the spec stays as the "what we were going for" record. - The
docs/features/README.mdindex only lists in-progress/planned specs.
Notes
- Do not commit or push unless the user explicitly asks.
- When creating issues, always update the issue body with the final spec file path after the issue number is known.
- When creating specs, always include a reference to the GitHub issue URL.
Signals
- GitHub stars
- 35
- Forks
- 3
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
feature-yicheng47- Source
- github.com/yicheng47/quill