Skip to main content
Issues are actionable work items that agents claim and complete. They represent implementation tasks that turn specifications into working code.
Example of a sudocode issue

When to Create an Issue

Create issues to track discrete, actionable work. Think of issues as your agent’s work queue.

Implement Specs

Break down specifications into discrete implementation tasks that agents can execute

Manage Dependencies

Use issues to capture the dependency of work items and enforce execution order

Enable Discovery

Create discovery issues that leave behind other issues and specs as artifacts
Don’t create issues for:
  • Large, ambiguous goals without clear actionability
  • Defining requirements for larger tasks (use specs instead)
  • Temporary notes or reminders (use comments or external tools)

How to Create an Issue

Method 1: Spec-Driven Implementation

Create issues that implement specific sections or requirements from a spec.
1

Review the spec

2

Agent creates linked issues

3

Verify relationships

Agent doesn’t always create dependencies: If you notice that the agent hasn’t established dependency relationships between related issues, you can prompt it directly:
Best for: Implementing well-defined specifications with clear requirements.

Method 2: Breaking Down Large Issues

Take a large or complex issue (epic) and split it into smaller, manageable sub-issues.
1

Identify the epic

2

Create child issues

3

Set up dependencies

Best for: Complex features that need to be broken into sequential or parallel work streams.

Method 3: Discovery-Driven Issues

Create new issues when you discover unexpected work during implementation.
1

Discover new work

2

Link to source

3

Decide priority

Best for: Capturing emergent work, technical debt, or issues discovered during code review.

Method 4: Standalone Ad-Hoc Work

Create individual issues for bugs, quick features, or tasks that don’t relate to a spec.
1

Create the issue

2

Agent completes immediately

Best for: Small bugs, typos, quick improvements, and isolated tasks.

Organizing Issues

Priority Levels

Priority levels help agents decide what to work on first Ask an agent to set priority when creating or updating issues.

Issue Hierarchies

Use parent-child relationships for issue breakdown:
Simply ask an agent to create child issues with the parent parameter.

Dependency Management

Define execution order using relationship types: blocks: Hard blocker (B blocks A means A can’t start until B is done)
depends-on: General dependency (A depends on B means B should finish first)
Ask an agent to link issues with these relationships.

Tagging

Use tags for categorization and filtering:
Agents automatically suggest tags based on content, but you can also specify them explicitly.

Best Practices

Each issue should represent a single, cohesive piece of work.Good:
Bad:
Only create blockers for true dependencies, not nice-to-haves.Good dependency:
Bad dependency:
Over-using blockers creates bottlenecks. Use priority instead when possible.
Mark issues as archived when they’re no longer relevant for context.
Archived issues are hidden from default queries but preserved for history.

Issue Lifecycle

1

Create

Issue starts with status open and appears in the backlog.
2

Claim

Agent changes status to in_progress when starting work.
3

Complete

Agent changes status to closed when work is done.
4

Provide Feedback

If issue implements a spec, agent provides feedback on spec before closing.

Spec Creation

Creating specifications for requirements

Issue Execution

How agents claim and complete work

Agent Workflows

Practical workflow examples

Issues Concept

Deep dive on issue management

Next Steps

1

Choose a method

Pick the issue creation method that fits your needs:
  • Spec-driven: Implementing requirements
  • Issue breakdown: Breaking down epics
  • Discovery-driven: Capturing emergent work
  • Ad-hoc: Standalone bugs or quick tasks
2

Create your first issue

Try creating a spec-driven issue:
3

Organize with relationships

Set up dependencies and hierarchies:
  • Use parent-child for epic breakdown
  • Use blocks/depends-on for execution order
  • Use discovered-from to track provenance
4

Let agents execute

Once issues are created, agents will:
  • Check ready to find unblocked work
  • Claim issues by setting status to in_progress
  • Provide feedback on specs during implementation
  • Close issues when complete