agentleFS
MattieMattie/mattie_skills/skills/todo/SKILL.md

todo

Skill1 starsChanged 8 days agoMITView on GitHub

Manage local .todo lists for bugs, ideas, features, and tasks. When explicitly asked to manage project progress, queues, or project chiefs, use the included references/project-management.md along with the projectbot skill if needed.

37 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use standup, update-docs and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • AnthropicSkill

    standup

    Generate a standup update from recent activity. Use when preparing for daily standup, summarizing yesterday's commits and PRs and ticket moves, formatting work into yesterday/today/blockers, or structuring a few rough notes into a shareable update.

    Also in 3 projects that use this

  • Hugging FaceSkill

    update-docs

    Update documentation across the repo after API changes. Finds stale references in docs, examples, docstrings, and fixes them.

    Also in 3 projects that use this

  • sunnyclinches44Skill

    explain

    Explains code using real-world analogies and ASCII diagrams

    Also in 3 projects that use this

  • Hugging FaceSkill

    implement

    Make tests pass. Invoke after /write-tests produces failing tests.

    Also in 5 projects that use this

  • Google CloudSkill

    triage

    Gather context on a change or bug and plan the implementation.

    Also in 4 projects that use this

  • photon-groveSkill

    unslop

    Detects and rewrites generic, overly polished, or AI-sounding prose while preserving meaning. Use when the user asks to "unslop", humanize, de-AI, tighten, or review whether writing sounds generated.

    Also in 3 projects that use this

The file

Show its rules and text

We split this skill into the rules it gives an agent

27 rules. 0 are common, 20 are distinctive, and 7 are very specific to this project.

  • 0

    Common

    Most of the 34 edited versions we read keep these.

  • 20

    Distinctive

    This author's own choices. Worth a look.

  • 7

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill whenever the user asks to track, triage, clean up, summarize, search, or resolve entries in local TODO files.

    line 10
  2. Distinctive:

    Use the root lists unless a subproject is named.

    line 23
  3. Distinctive:

    Do not create files unless explicitly needed by the user command.

    line 36
  4. Very specific:

    If .todo/ does not exist, create it only when a command needs it.

    line 37
  5. Very specific:

    Search the intended .todo/ files explicitly.

    line 38
  6. Distinctive:

    Use this format for all managed files.

    line 57
  7. Distinctive:

    Keep concrete details, examples, error text, reproduction notes, uncertainty, urgency, and tone unless they contain secrets or unrelated …

    line 62
  8. Distinctive:

    Prefer appending brief metadata around the user's text over rewriting the item.

    line 63
  9. Distinctive:

    If cleanup is needed for readability, keep the original meaning and details intact.

    line 64
  10. Distinctive:

    When adding a completion note, leave the original item text recognizable and add the resolution after it.

    line 65
  11. Distinctive:

    Remove punctuation around type.

    line 70
  12. Very specific:

    Create .todo/<type>.md if missing, with both sections.

    line 80
  13. Distinctive:

    Only normalize whitespace and markdown-breaking characters when needed.

    line 83
  14. Distinctive:

    When the human asks this chat to do an item, check for existing work, record this chat's assignment, and proceed.

    line 93
  15. Distinctive:

    If no open items exist, report that the list is already clear.

    line 98
  16. Distinctive:

    Treat popping an item as accepting the work now, not just removing it from the list.

    line 99
  17. Distinctive:

    Read and follow the current project's instructions before implementing, including AGENTS.md and any referenced project docs.

    line 100
  18. Distinctive:

    If context is not enough, ask for confirmation before marking complete.

    line 106
  19. Distinctive:

    If confirmation is available in the user message, close it directly with a short resolution note.

    line 107
  20. Very specific:

    Search all markdown files in .todo/ for the query.

    line 115
  21. Very specific:

    Default to all unless a specific type is requested.

    line 126
  22. Distinctive:

    Keep output compact and scannable.

    line 148
  23. Distinctive:

    If the user says something like "pop bugs" or "pop one item", default to the same top-item flow above for the inferred list.

    line 152
  24. Distinctive:

    If the user says "update the todo" without a clear type, ask for the list type first unless context already implies one.

    line 157
  25. Very specific:

    Always use ISO date format YYYY-MM-DD for completion entries.

    line 161
  26. Distinctive:

    When adding completion notes for bugs, include what was changed or observed.

    line 162
  27. Very specific:

    Add .todo/ to .gitignore in the project if not already present.

    line 167

“Common” is measured: kept by at least 6 in 10 of the 34 edited versions of this file we could read. “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

Todo

This skill manages local, project-specific task tracking in markdown files under the repository root .todo/ directory.

Use this skill whenever the user asks to track, triage, clean up, summarize, search, or resolve entries in local TODO files.

Todo works independently. Use Projectbot when the human wants a project chief; ordinary Todo work needs no chief or worker setup.

Project-management requests

For coordinated work, read the project records reference. Also read it and the relevant brief when .todo/projects/PROJECT.md already exists or an assignment supplies a control directory. Respect current assignments, lifecycle, and other chats' edits before changing lists. The records can be used without Projectbot; installation alone doesn't assign a chief.

Use the root lists unless a subproject is named. For a subproject, the list paths below refer to its own directory.

Scope and storage

  • Ordinary list files live under the current project root in .todo/<type>.md. Managed subprojects use the locations defined by the extension.
  • Supported types:
    • bugs.md
    • ideas.md
    • features.md
    • tasks.md
  • Any other user-defined type maps to <normalized type>.md in .todo/ (for example: todo chore -> .todo/chore.md).
  • Do not create files unless explicitly needed by the user command.
  • If .todo/ does not exist, create it only when a command needs it.
  • Search the intended .todo/ files explicitly; avoid unrelated hidden paths. List maintenance changes tracking files only. pop also authorizes the selected implementation work under the project's normal instructions.

Canonical list format

Each tracked file should have these sections:

  • ## Open
  • ## Completed

Open item:

  • [ ] <item text>

Completed item:

  • [x] <item text> - resolved: <resolution note> (YYYY-MM-DD)

Use this format for all managed files.

Preserve user wording

  • Preserve the user's original wording as closely as practical when adding or moving items.
  • Keep concrete details, examples, error text, reproduction notes, uncertainty, urgency, and tone unless they contain secrets or unrelated noise.
  • Prefer appending brief metadata around the user's text over rewriting the item.
  • If cleanup is needed for readability, keep the original meaning and details intact.
  • When adding a completion note, leave the original item text recognizable and add the resolution after it.

Type normalization

  • Normalize type tokens to lowercase.
  • Remove punctuation around type.
  • Convert spaces to hyphens.
  • bug -> bugs, idea -> ideas, feature -> features, task -> tasks, plural inputs are accepted as-is.
  • Unknown types are treated as first-class custom files using normalized names.

Commands

push <type> <description>

  • Determine the target list file from <type>.
  • Create .todo/<type>.md if missing, with both sections.
  • Append one unchecked bullet under ## Open.
  • Preserve <description> closely, including tone and useful detail.
  • Only normalize whitespace and markdown-breaking characters when needed.

pop <type>

  • Determine the target list file from <type>.
  • Take the top unchecked item in ## Open.
  • For managed items, take the first eligible queued item in list order. Skip assigned, blocked, paused, or cancelled items and items with unmet dependencies. Preserve their IDs and metadata. A request to pop does not silently resume a sleeping or cancelled project; explain its state if there is no eligible work.
  • When the human asks this chat to do an item, check for existing work, record this chat's assignment, and proceed. An assigned chief does not require a handoff, permission request, or message to that chief. Reread before updating shared records; resolve actual conflicting assignments rather than assuming a conflict merely because another chat can edit them.
  • If no open items exist, report that the list is already clear.
  • Treat popping an item as accepting the work now, not just removing it from the list.
  • Read and follow the current project's instructions before implementing, including AGENTS.md and any referenced project docs.
  • Validate that the item still applies before doing the work. For bugs, verify the issue when possible; if context is not enough, ask for confirmation before changing code or marking complete.
  • Implement the popped item professionally using the project's normal engineering guidelines, tests, documentation, and review expectations.
  • Move the selected item to ## Completed only after the work is implemented or conclusively determined to be obsolete.
  • Preserve the original item text when moving it.
  • For bugs/bug, validate if it is still an issue before closing:
    • If context is not enough, ask for confirmation before marking complete.
    • If confirmation is available in the user message, close it directly with a short resolution note.
  • For other types, prefer immediate resolution unless the user explicitly asks for confirmation.
  • Completed note should be short and specific:
    • resolved: implemented <specific work> (YYYY-MM-DD)
    • resolved: obsolete after verification <specific reason> (YYYY-MM-DD)

search todo <query>

  • Search all markdown files in .todo/ for the query.
  • In ordinary mode, search direct list files only. Project-management searches can include subproject lists, excluding project records from item counts.
  • Return grouped results with:
    • file
    • section (Open/Completed)
    • line text
  • Match should be case-insensitive and include partial phrase matches.

analyze todo [type|all]

  • Default to all unless a specific type is requested.
  • Report for each relevant file:
    • total items
    • open count
    • completed count
    • completion percentage
  • Label percentages as list-item completion, not overall project progress. For managed lists, report cancelled items separately and exclude them from the completion denominator.
  • Flag files with:
    • no file
    • missing sections
    • no open items
  • Offer concise follow-up suggestions (e.g. next candidate to pop, stale backlog, etc.).

summarize todo [type|all]

  • Default to all unless a specific type is requested.
  • Return:
    • top open items per list (up to 5 each)
    • number of completed items this session
    • quick next-step recommendations
  • Keep output compact and scannable.

Pop behavior for mention-style requests

If the user says something like "pop bugs" or "pop one item", default to the same top-item flow above for the inferred list. Begin work on the popped item immediately, then mark it completed after the implementation or verification outcome is finished.

Ambiguous mentions

If the user says "update the todo" without a clear type, ask for the list type first unless context already implies one.

Completion date and notes

Always use ISO date format YYYY-MM-DD for completion entries. When adding completion notes for bugs, include what was changed or observed.

File policy

  • .todo/ and files inside it are local and should remain out of version control.
  • Add .todo/ to .gitignore in the project if not already present.

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.