to-issues

Use when a plan, spec, or PRD must become an actionable backlog — break it into thin dependency-aware issues that each deliver a verifiable vertical slice

8 stars

Best use case

to-issues is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Use when a plan, spec, or PRD must become an actionable backlog — break it into thin dependency-aware issues that each deliver a verifiable vertical slice

Teams using to-issues should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/to-issues/SKILL.md --create-dirs "https://raw.githubusercontent.com/drvoss/everything-copilot-cli/main/skills/workflow/to-issues/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/to-issues/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How to-issues Compares

Feature / Agentto-issuesStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Use when a plan, spec, or PRD must become an actionable backlog — break it into thin dependency-aware issues that each deliver a verifiable vertical slice

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# To Issues

To Issues turns a plan into independently executable backlog items. The goal is not to split work by
layer, but to create thin vertical slices that are reviewable, testable, and dependency-aware.

## When to Use

- A plan, spec, or PRD is approved and now needs implementation tickets
- A broad initiative must be broken into thin, demoable slices
- The current backlog is too coarse to delegate safely
- You need to separate work that can proceed independently from work that is blocked

## When NOT to Use

| Instead of to-issues | Use |
|----------------------|-----|
| You are still defining the feature itself | `create-prd` or planning first |
| You need to triage an existing issue backlog | `github-issue-triage` |
| The work is already small enough to execute directly | do the task |

## Workflow

### 1. Start from an approved source

Use a real input artifact:

- plan
- PRD
- spec
- parent issue

Do not create issue slices from an unresolved conversation.

### 2. Extract vertical slices

Each issue should represent a thin end-to-end path, not a horizontal layer split.

Good slices usually:

- have one clear outcome
- can be tested or demonstrated on their own
- expose their dependency relationship to other slices

Bad slices are things like "database changes only" or "UI updates only" if they cannot be verified
in isolation.

### 3. Mark blockers explicitly

For each proposed issue, identify:

- what it delivers
- what blocks it
- whether it can start immediately

Publish blockers first so later issues can reference them cleanly.

### 4. Review the breakdown before publishing

Show the user the proposed issue set and ask whether:

- the slices are too coarse or too fine
- any issue should be merged or split
- the dependency order is correct

Only publish after the breakdown is approved.

### 5. Publish to the active issue tracker

Support the tracker the project already uses.

- **GitHub**: use `gh issue create` (or equivalent GitHub CLI workflow) when publishing approved issues
- **GitLab**: use the GitLab issue workflow or CLI available in the environment

Do not assume one provider if the project uses another.

## Output Template

```markdown
## Proposed Issue Breakdown

1. **Title:** ...
   **Blocked by:** None / #123
   **Delivers:** ...
   **Acceptance signal:** ...

2. ...
```

## Issue Body Template

```markdown
## Parent

[Reference to the source plan, PRD, or parent issue]

## What to build

[One thin vertical slice with end-to-end value]

## Acceptance criteria

- [ ] ...
- [ ] ...
- [ ] ...

## Blocked by

None - can start immediately
```

## Common Rationalizations

| Rationalization | Reality |
|----------------|---------|
| "Let's make one big implementation issue first." | Huge tickets hide sequencing mistakes and block delegation. |
| "We can split the layers now and connect them later." | Horizontal slices are harder to demo and easier to strand. |
| "Dependencies are obvious." | If they are not written down, the backlog will drift. |

## Red Flags

- Several issues depend on work that has no explicit parent blocker
- A slice only changes one layer and cannot be verified on its own
- The user has not approved the breakdown before publication
- The issue titles use implementation jargon instead of domain language from the source artifact

## Verification

- [ ] Every issue represents a thin vertical slice
- [ ] Dependencies are explicit
- [ ] The user approved the granularity before publishing
- [ ] The tracker-specific publish path matches the project actually in use

## See Also

- [`create-prd`](../../product/create-prd/SKILL.md) — define the feature before turning it into backlog items
- [`github-issue-triage`](../../copilot-exclusive/github-issue-triage/SKILL.md) — organize and review an existing GitHub issue backlog
- [`team-planner`](../../copilot-exclusive/team-planner/SKILL.md) — assign the resulting slices across specialist agents

Related Skills

verification-before-completion

8
from drvoss/everything-copilot-cli

Use before claiming any task is done — run the exact command that proves the fix works, read the output, and only then report success.

using-git-worktrees

8
from drvoss/everything-copilot-cli

Use when you need multiple branches checked out at once — create isolated working directories for parallel development without cloning the repository repeatedly

triage

8
from drvoss/everything-copilot-cli

Use when a single issue needs structured triage — classify it, reproduce if needed, request missing information, and leave a durable brief or close-out note in the tracker.

sprint-workflow

8
from drvoss/everything-copilot-cli

Use when starting a new feature, refactor, or multi-step dev task — runs the full sprint cycle (Think → Plan → Build → Review → Test → Ship → Monitor) using Copilot CLI's plan/autopilot modes.

sprint-retro

8
from drvoss/everything-copilot-cli

Use at the end of a sprint to run a data-driven retrospective — analyzes session history and git metrics to surface what shipped, what slowed you down, and concrete improvements.

security-audit

8
from drvoss/everything-copilot-cli

Use when a codebase needs a formal security audit beyond a quick scan — applies OWASP Top 10 and STRIDE threat modeling from a CSO perspective to surface systemic vulnerabilities.

release

8
from drvoss/everything-copilot-cli

Use when a sprint or feature is complete and ready to ship — tags the version, generates GitHub Release notes, runs rollout or smoke verification, and publishes to npm/PyPI/Docker registries.

prompt-optimizer

8
from drvoss/everything-copilot-cli

Use when a rough prompt, vague idea, or task description needs to become a finished copy-pasteable prompt for a chat-based LLM - rewrite it into one ready-to-send prompt with no blanks, no placeholders, and a clear output shape.

outside-voice

8
from drvoss/everything-copilot-cli

Use when you need an independent second opinion before, during, or after implementation — run challenge, consult, or review mode in a direct builder-to-builder voice

llm-wiki

8
from drvoss/everything-copilot-cli

Use when research or domain knowledge keeps getting rediscovered across sessions — build a supplementary markdown wiki that compounds synthesized knowledge without replacing GitHub or committed project guidance

interview-me

8
from drvoss/everything-copilot-cli

Use when a request is underspecified and you need to discover what the user actually wants before writing a plan, spec, or code - ask one question at a time, attach your current hypothesis, and stop only after the intent is explicitly confirmed.

implementation-review

8
from drvoss/everything-copilot-cli

Use after an implementation pass lands — compare the original task spec or handoff against the delivered diff, classify each requested item, and produce an actionable follow-up report.