issues

A local issue tracker that uses GitHub Issues-style work items, with support for dependencies between them. It stores changes as append-only event files in a project’s .issues directory.

In plain words
What is it for?
Use it to create, search, update, close, and link project issues, and to review which work items remain open.
Why use it?
It keeps bugs, tasks, and features organized in the project without requiring a hosted tracking service, while allowing multiple contributors to work from separate event files.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/davidcpage/skill-issues/issues
Any agent
npx skills add davidcpage/skill-issues --skill issues
Clone the repo
git clone --depth 1 https://github.com/davidcpage/skill-issues

Made for: Claude Code, Codex.

Per session 42 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,620 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00042 $0.02620
Opus 5 $0.00021 $0.01310
Sonnet 5 $0.00008 $0.00524
Haiku 4.5 $0.00004 $0.00262

Measured yesterday against content hash 2a0d221d9f8f, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

issues scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/issues/SKILL.md · 316 lines

How it starts

The opening of the file, as written. The whole thing — 316 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Issue Tracking Skill

A minimal, append-only event log for tracking issues. Designed for close human-AI collaboration.

Installation required: Install the skill-issues package for CLI tools:

uv tool install skill-issues

Data Location

Events are stored in .issues/events-{prefix}.jsonl (project root) - one JSON event per line, append-only. Each user writes to their own file (e.g., events-dp.jsonl), enabling conflict-free multi-user git workflows. Reading aggregates from all user files. The directory and file are auto-created on first use.

User Prefix

Issue IDs include a user prefix (e.g., dp-001) to enable conflict-free collaboration. The prefix is resolved in order:

  1. SKILL_ISSUES_PREFIX environment variable
  2. git config skill-issues.prefix
  3. Derived from git config user.name (first + last initials)
  4. Fallback: xx

Configure once per machine:

git config --global skill-issues.prefix "dp"

On first use with a derived prefix, you'll see a hint about configuration.

Quick Reference

# Reading
issues                    # Open issues (default)
issues --open             # Open issues (explicit)
issues --closed           # Closed issues
issues --ready            # Open and not blocked
issues --all              # All issues including closed
issues ID                 # Show single issue
issues --show ID          # Show single issue (explicit)
issues --diagram          # Mermaid dependency diagram
issues --diagram ascii    # ASCII dependency diagram

# Writing
issues create "Title" [options]
issues close ID "Reason"
issues note ID "Content"
issues add-dep ID "DEP_IDS"
issues remove-dep ID "DEP_IDS"

# TUI
issues board              # Kanban board view

Why append-only?

  • Writes are trivial (just append)
  • Git diffs are always additions at the end
  • Full history without digging through git commits
  • No read-modify-write complexity

Event Schema

Four event types:

// created - sets initial fields
{"ts": "2025-12-13T14:00:00Z", "type": "created", "id": "dp-014", "title": "Short title", "issue_type": "task", "priority": 2, "description": "Details", "depends_on": ["dp-013"], "labels": ["needs-review"]}

// updated - changes mutable fields (priority, depends_on, labels)
{"ts": "2025-12-13T14:15:00Z", "type": "updated", "id": "dp-014", "priority": 1, "reason": "Blocking other work, needs to be done first"}

// note - adds context during work (can have multiple per issue)
{"ts": "2025-12-13T14:30:00Z", "type": "note", "id": "dp-014", "content": "Discovered that the API requires auth tokens, not session cookies. See src/api/widget.ts:45"}

// closed - terminal state
{"ts": "2025-12-13T15:00:00Z", "type": "closed", "id": "dp-014", "reason": "Done - explanation"}

Read the full file on GitHub · 316 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 316 lines · 42 tokens per session scan A 2a0d221d9f8f

Subscribe to this mod's changes

issues is a skill published in the GitHub repository davidcpage/skill-issues (2 stars, last pushed 7mo ago), licensed MIT. It adds 42 tokens to every session and 2,620 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

wayfinder

Plan a huge chunk of work (more than one agent session can hold) as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.

mattpocock/skills · 46 tokens

setup-matt-pocock-skills

Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.

mattpocock/skills · 44 tokens

release-notes

Generate user-facing release notes from tickets, PRDs, or changelogs. Creates clear, engaging summaries organized by category (new features, improvements, fixes). Use when writing release notes, creating changelogs, announcing product updates, or summarizing what shipped.

phuryn/pm-skills · 57 tokens

retro

Facilitate a structured sprint retrospective — what went well, what didn't, and prioritized action items with owners and deadlines. Use when running a retrospective, reflecting on a sprint, creating action items from team feedback, or learning how to run effective retros.

phuryn/pm-skills · 52 tokens

bug-triage

Read all open bugs in production/qa/bugs/, re-evaluate priority vs. severity, assign to sprints, surface systemic trends, and produce a triage report. Run at sprint start or when the bug count grows enough to need re-prioritization.

Donchitos/Claude-Code-Game-Studios · 59 tokens

flow-next-tracker-sync

Project a flow-next spec to a tracker issue (Linear, GitHub, GitLab, Jira) and reconcile two-way. Use when asked to sync to a tracker. NOT plan-sync.

gmickel/flow-next · 44 tokens