agentleFS
mikejhillmikejhill/agent-skills/skills/project-backlog/SKILL.md

project-backlog

Skill0 starsChanged 8 months agoMITView on GitHub

Use when capturing ideas in a project backlog, promoting backlog items into specification directories with spec.md, iterating on lifecycle-managed specifications, or archiving completed spec directories. Manages a three-stage lifecycle (backlog, specification, archive) under specs/ at the project root.

2 other projects use a version of this.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

33 rules. About 0 are common, 17 are distinctive, and 16 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈17

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 16

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    When creating or iterating on spec.md files, follow the canonical specification structure defined in spec-structure.md.

    line 82
  2. Distinctive:

    Update the description, title, or category as requested.

    line 115
  3. Very specific:

    Remove the ### Title heading and its description.

    line 122
  4. Distinctive:

    When an operation targets an item "by title" and multiple items share the same or similar title across categories, ask the user to clarify …

    line 128
  5. Very specific:

    Read the target item from specs/project-backlog.md.

    line 136
  6. Very specific:

    Check whether specs/<slug>/ already exists.

    line 139
  7. Very specific:

    Create the directory specs/<slug>/.

    line 141
  8. Very specific:

    Create specs/<slug>/spec.md following the structure in spec-structure.md, expanding the backlog description into a full specification.

    line 142
  9. Very specific:

    Remove the item from project-backlog.md.

    line 145
  10. Distinctive:

    Read the contents of the spec directory to understand its current state.

    line 151
  11. Very specific:

    Read spec.md (and any relevant auxiliary files).

    line 152
  12. Distinctive:

    Update based on user input — expand sections, resolve open questions, add design detail.

    line 153
  13. Very specific:

    If the user provides new supporting material, create auxiliary files alongside spec.md.

    line 155
  14. Distinctive:

    Create the file in the spec directory with a descriptive kebab-case name.

    line 160
  15. Distinctive:

    Read the spec directory contents.

    line 174
  16. Very specific:

    Read spec.md and any auxiliary files.

    line 175
  17. Very specific:

    Check whether specs/archive/<slug>/ already exists.

    line 181
  18. Distinctive:

    Create spec directories matching the item slug in kebab-case.

    line 196
  19. Distinctive:

    Follow kebab-case naming for all files and directories.

    line 198
  20. Very specific:

    Follow the specification structure in spec-structure.md when creating or updating spec.md files.

    line 199
  21. Distinctive:

    Keep quick-capture (add to backlog) to a single edit and a one-line confirmation — do not disrupt the user's current work.

    line 202
  22. Distinctive:

    Remove items from the backlog when they are promoted to specs.

    line 205
  23. Distinctive:

    Add status fields, priority numbers, or other project-management metadata to backlog items.

    line 210
  24. Distinctive:

    Leave promoted items in the backlog after creating their spec directory.

    line 212
  25. Distinctive:

    Create specs as standalone files — every spec gets its own directory, even if it is a single file.

    line 213
  26. Distinctive:

    Delete archived specs. The archive is append-only.

    line 215
  27. Distinctive:

    Create new backlog categories when an item does not fit existing ones.

    line 219
  28. Distinctive:

    Read the "Centralized Documentation Source" item from the backlog.

    line 257
  29. Very specific:

    Create specs/centralized-docs/spec.md following the canonical structure from spec-structure.md, expanding the backlog description into a …

    line 259
  30. Very specific:

    Remove "Centralized Documentation Source" from project-backlog.md.

    line 264
  31. Distinctive:

    Add or expand the relevant section based on user input.

    line 277
  32. Very specific:

    If the detail is extensive, create specs/centralized-docs/gha-component-design.md as an auxiliary file and reference it from spec.md.

    line 278
  33. Very specific:

    Read the first heading from each spec.md.

    line 304

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Project Backlog Skill

Overview

This skill manages a three-stage project lifecycle for ideas and initiatives:

  1. Backlog — Capture ideas in a compact list. Items are brief and lightweight. The backlog stays reasonably sized; it is not a task tracker.
  2. Specification — Promote backlog items into dedicated spec directories for detailed design. Iterate on specs until they are ready for execution.
  3. Archive — After a spec is executed, move its directory to an archive so it is no longer front-and-center.

The backlog and all specs live under specs/ at the project root.

Directory Structure

<project-root>/specs/
├── project-backlog.md              # Compact backlog list (Stage 1)
├── <item-slug>/                    # Promoted spec directory (Stage 2)
│   ├── spec.md                     #   Primary specification (required)
│   └── <auxiliary>.md              #   Supporting files (optional)
└── archive/                        # Completed specs (Stage 3)
    └── <item-slug>/                #   Archived spec directory
        ├── spec.md
        └── <auxiliary>.md

Naming conventions:

  • Spec directories use kebab-case slugs derived from the backlog item title
  • The primary spec file is always spec.md
  • Auxiliary files use descriptive kebab-case names
  • archive/ is a flat collection of completed spec directories

Scope

In-scope:

  • Adding, listing, modifying, and removing backlog items
  • Promoting backlog items into spec directories
  • Iterating on existing specifications
  • Adding auxiliary files to spec directories
  • Archiving completed specs after execution
  • Listing active and archived specs

Out-of-scope:

  • Project implementation (the skill prepares specs for execution; it does not implement them)
  • Task tracking with statuses, assignments, or priorities

Backlog File Format

# Project Backlog

Ideas and initiatives to be fleshed out later. Items here are compact
— just enough context to remember the idea. Promote items to full
specifications when ready to design them in detail.

## Category Name

### Item Title

Brief description — a few sentences capturing the idea, context, and
initial thoughts. Keep it concise.

Items should be short. If a description is growing past a short paragraph, that is a signal to promote it to a spec.

Spec File Format

When creating or iterating on spec.md files, follow the canonical specification structure defined in spec-structure.md. See example-spec.md for a complete filled example.

Auxiliary files are added as needed during iteration: research notes, diagrams, sub-specifications, or any supporting material that would clutter the primary spec.

Procedure

Stage 1: Backlog Management

Adding an Item

  1. Read specs/project-backlog.md.
  2. Determine whether the item fits an existing category or needs a new one.
  3. Append the item with a ### Title heading and a brief description.
  4. Confirm the addition to the user in one line.
  5. Return to whatever the user was doing before — do not disrupt the current conversation's focus.

Listing the Backlog

  1. Read specs/project-backlog.md.
  2. Present the items to the user, optionally filtered by category if requested.

Modifying an Item

  1. Read specs/project-backlog.md.
  2. Locate the item by title.
  3. Update the description, title, or category as requested.

Removing an Item

  1. Read specs/project-backlog.md.
  2. Locate the item by title. If multiple items share the same title across categories, disambiguate by category before proceeding.
  3. Remove the ### Title heading and its description. If this leaves an empty category (a ## Category heading with no items beneath it), remove the empty category heading as well.

Handling Ambiguity

When an operation targets an item "by title" and multiple items share the same or similar title across categories, ask the user to clarify which item they mean by presenting the category and title of each match.

Stage 2: Specification Management

Promoting a Backlog Item to Spec

  1. Read the target item from specs/project-backlog.md.
  2. Derive a kebab-case slug from the item title (e.g., "Centralized Documentation Source" → centralized-docs).
  3. Check whether specs/<slug>/ already exists. If it does, ask the user whether to merge into the existing spec or choose a different slug.
  4. Create the directory specs/<slug>/.
  5. Create specs/<slug>/spec.md following the structure in spec-structure.md, expanding the backlog description into a full specification.
  6. Remove the item from project-backlog.md. If this leaves an empty category, remove the empty category heading.
  7. Present the new spec to the user for review or further iteration.

Iterating on a Spec

  1. Read the contents of the spec directory to understand its current state.
  2. Read spec.md (and any relevant auxiliary files).
  3. Update based on user input — expand sections, resolve open questions, add design detail.
  4. If the user provides new supporting material, create auxiliary files alongside spec.md.

Adding Auxiliary Files

  1. Create the file in the spec directory with a descriptive kebab-case name.
  2. Reference it from spec.md if appropriate.

Listing Active Specs

  1. List directories under specs/ (excluding archive/ and the project-backlog.md file).
  2. For each directory, read the first few lines of spec.md to present a summary.

Stage 3: Execution and Archive

Pulling a Spec for Execution

  1. Read the spec directory contents.
  2. Read spec.md and any auxiliary files.
  3. Present the full specification to guide the implementation session.

Archiving a Completed Spec

  1. Confirm the spec has been executed or is no longer needed.
  2. Check whether specs/archive/<slug>/ already exists. If it does, ask the user how to proceed (e.g., rename with a suffix, overwrite).
  3. Move the entire specs/<slug>/ directory to specs/archive/<slug>/.
  4. Confirm the archival to the user.

Listing Archived Specs

  1. List directories under specs/archive/.
  2. For each, read the first few lines of spec.md to present a summary.

Constraints

MUST:

  • Store the backlog at specs/project-backlog.md.
  • Create spec directories matching the item slug in kebab-case.
  • Name the primary spec file spec.md in every spec directory.
  • Follow kebab-case naming for all files and directories.
  • Follow the specification structure in spec-structure.md when creating or updating spec.md files.
  • Keep quick-capture (add to backlog) to a single edit and a one-line confirmation — do not disrupt the user's current work.
  • Preserve existing backlog category structure when adding items.
  • Remove items from the backlog when they are promoted to specs.
  • Move (not copy) spec directories to archive/ on completion.

MUST NOT:

  • Add status fields, priority numbers, or other project-management metadata to backlog items. The backlog is a list of ideas, not a kanban board.
  • Leave promoted items in the backlog after creating their spec directory.
  • Create specs as standalone files — every spec gets its own directory, even if it is a single file.
  • Delete archived specs. The archive is append-only.

MAY:

  • Create new backlog categories when an item does not fit existing ones.
  • Suggest promotion when a backlog item's description is growing too long.
  • Include a brief archival note at the top of spec.md when archiving, noting when and why it was archived.
  • Nest one level of subdirectories within a spec directory for complex specs (e.g., specs/<slug>/research/).

Examples

Example 1: Quick Capture During Unrelated Work

Scenario: The user is debugging a test failure and mentions "oh, also add an idea for a CLI dashboard tool to the backlog."

Action:

  1. Read specs/project-backlog.md.
  2. Append under the most fitting category (or create ## Tooling if none fits):
### CLI Dashboard Tool

A terminal-based dashboard for monitoring project status across
repositories.
  1. Respond: "Added CLI Dashboard Tool to the backlog under Tooling."
  2. Continue with the debugging work.

Example 2: Promoting an Item to a Spec

Scenario: The user says "promote the centralized docs idea to a spec."

Action:

  1. Read the "Centralized Documentation Source" item from the backlog.
  2. Create specs/centralized-docs/.
  3. Create specs/centralized-docs/spec.md following the canonical structure from spec-structure.md, expanding the backlog description into a full specification with Problem/Purpose, Scope, Goals, Use Cases, Requirements, Proposed Design, and relevant cross-cutting concerns.
  4. Remove "Centralized Documentation Source" from project-backlog.md.
  5. Present the spec for review.

Example 3: Iterating on a Spec

Scenario: The user says "add a section about the GHA component design to the centralized docs spec."

Action:

  1. Read specs/centralized-docs/spec.md.
  2. Add or expand the relevant section based on user input.
  3. If the detail is extensive, create specs/centralized-docs/gha-component-design.md as an auxiliary file and reference it from spec.md.

Example 4: Archiving a Completed Spec

Scenario: The user says "the centralized docs spec has been implemented, archive it."

Action:

  1. Move specs/centralized-docs/ to specs/archive/centralized-docs/.
  2. Respond: "Archived centralized-docs spec."

Example 5: Listing Active Work

Scenario: The user says "what specs are in progress?"

Action:

  1. List directories under specs/ (excluding archive/ and project-backlog.md).
  2. Read the first heading from each spec.md.
  3. Present a summary list.

Related Files

  • references/spec-structure.md — Canonical specification structure with section guidance and template
  • references/example-spec.md — Complete filled example demonstrating the specification structure

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.