Issue
Use when the user wants to create or define an issue — one task-sized change ("create an issue", "file a task", "add a ticket for X"). Runs a sharpening dialogue, then creates (or retrofits) the issue with its metadata and top section only — the spec and plan come after, via /adlc:spec and /adlc:plan.From its SKILL.md
npx -y skills add johngaynor/adlc --skill issueAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.8 KB, as published. Nobody here has run it
Issue
Create an issue — one task-sized change, the lifecycle card whose
description becomes the canonical living document — with its metadata layer
and summary top section, per the hierarchy in
reference/pm-seam.md § Hierarchy. This is the
issue-tier member of the creation family (/adlc:initiative →
/adlc:project → /adlc:milestone → this), and the single owner of issue
creation — /adlc:brainstorm delegates its create step here. It writes the
metadata fields and the top section defined in template.md
and nothing below them: # Specification and every later block belong to the
lifecycle stages that follow — /adlc:spec writes the specification, then
/adlc:plan the phased plan, before any /adlc:execute.
Arguments
taskRef(optional) — an existing issue URL or identifier. When given, this run is a retrofit: the description is replaced with the approved top section (the old content carried into the Notes dropdown, percreateTask's seam semantics) and any metadata the dialogue changed is updated. When omitted, this run creates the issue.$ARGUMENTS(optional, freeform) — any fields already known: the idea text, title, project, milestone, labels — threaded in when/adlc:brainstormdelegates, or given directly. The dialogue prompts only for what's missing.
Workflow
- Anchor to a parent first. The standard issue belongs to a project: an
explicit project in
$ARGUMENTSwins; otherwise offer.adlc/config.json'spm.projectas the default. With a project chosen, offer its checkpoints vialistMilestonesso the issue lands in its phase. The user may decline either — an unattached issue is the exception, not the standard, and declining is never an error. With no PM configured (nopmblock with"provider": "linear"in.adlc/config.json), the parent question reads drafts under.ai/product/projects/and.ai/product/milestones/instead; a missing PM never causes a refusal (see step 5). - Apply the sizing gate. Early on, test the idea against the decision
test in
reference/pm-seam.md§ Hierarchy, in both directions: if one agent could not spec → plan → PR it, recommend/adlc:project(or/adlc:initiative); if it is a phase grouping rather than a change, recommend/adlc:milestone. The gate is soft — recommend and offer to stop, but the user may override and continue. - Sharpen the top section. One question at a time, per the same
dialogue discipline as the other creation skills: clarify, never invent
scope the user hasn't stated. Target the template's ingredients — a
concise task-sized title, the 1–2 sentence preamble that stands
alone at a glance, and Notes bullets carrying problem, motivation,
and success criteria sharply enough that a fresh session could run
/adlc:specfrom the card alone; labels only when the user wants them. Stop there: no solution design, no phases — anything answering how belongs to/adlc:specand/adlc:plan. - Draft against the template. Render the ingredients into the
template.mdformat — the metadata fields and the H1 + top section — and present the draft for the user's approval. Iterate until approved. A worked example lives atexample.md. Never touch the PM or write a file before this approval. - Create or retrofit the issue.
- Linear configured: call
createTaskperreference/pm-seam.md, passing the title, the top section, and the drafted metadata (project,milestone,labels;statusstays the seam'sBacklogdefault at creation). Hold the returnedtaskRefin session context only — no pointer file. - No PM configured: write the draft to
.ai/product/issues/<kebab-slug>.md(slug derived from the title), creating directories as needed, and report the path. This is the only file write this skill makes.
- Linear configured: call
- Report and hand off down the lifecycle. Report the issue URL (or file
path) and state the path ahead plainly: the card needs its
# Specification(/adlc:spec), then its plan (/adlc:plan), before any execution. With Linear configured, invoke the workflow bridge (/adlc:next) withcompletedStage: brainstormand thetaskRef— its prompt presents exactly that next step. On the draft-only path, the prose pointer is the close — the bridge needs a PM.
Boundaries
- Never create or update the issue before the user approves the draft — and on a retrofit, the old description is dialogue input, so nothing is replaced sight unseen.
- Never write
# Specification,# Technical plan,# Progress, or# Outcomecontent — the metadata and top section are this skill's whole surface; every later block belongs to its lifecycle stage. - Never attach a milestone without its project, or one from a different project — a milestone never spans projects, per the seam's § Hierarchy.
- Ask First before widening scope beyond the task the user described.
Done when
The issue exists (created, or retrofitted in place) with its metadata layer
set and only the top section in its description — or as
.ai/product/issues/<kebab-slug>.md with no PM — the user has its URL or
path, and the close pointed down the lifecycle: /adlc:spec, then
/adlc:plan, before /adlc:execute, presented through /adlc:next when a
PM is configured.