Markdown Task List Summarizer

Paste a Markdown checklist and get a done/pending count and completion percentage — or list just the done or pending tasks, or export JSON. Runs entirely in your browser.

Result

What this tool does

Paste a Markdown checklist and instantly see how many tasks are done, how many are pending, and your completion percentage — right in your browser. Nothing is uploaded to a server: it runs locally, works offline, and needs no sign-up. Switch the Output to list only the completed or only the remaining tasks, or to export a JSON object for scripts and dashboards.

What counts as a task

A task is a GitHub-flavored Markdown checklist item — a list marker followed by a checkbox:

Written asMeaning
- [ ] write testspending
- [x] write codedone
* [X] ship itdone (any marker, upper- or lowercase x)
1. [ ] follow uppending (numbered lists work too)

Unordered markers (-, *, +) and ordered markers (1., 2)) are all recognized. Nested/indented items are counted. Plain list items without a checkbox, headings, and prose are ignored — so you can paste a whole document and only the real tasks are summarized.

Output modes

OutputWhat you get
summary (default)One line: total, done, pending, and percent complete.
doneJust the completed task texts, one per line.
pendingJust the not-yet-done task texts, one per line.
json{"total":…,"done":…,"pending":…,"percent":…,"done_items":[…],"pending_items":[…]} for scripts.

Example

Input:

# Launch checklist
- [x] write code
- [x] write tests
- [ ] update docs
- [ ] ship it

summary4 tasks: 2 done, 2 pending (50% complete).

pending

update docs
ship it

FAQ

Is it free and private?

Yes — your checklist never leaves your device, and the tool keeps working offline once the page has loaded.

Does it support numbered lists?

Yes. 1. [ ] task and 2) [x] task are both recognized alongside the -, *, and + bullet markers.

Why isn't one of my lines counted?

A task needs a checkbox right after the list marker — - [ ] text or - [x] text. A bullet without a [ ]/[x] checkbox is treated as a plain list item and ignored.

How is the percentage calculated?

It's done ÷ total, rounded to the nearest whole percent. An empty list reports 0%.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool task-list-summarizer "- [x] write code
- [ ] write tests
- [ ] ship it"

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/task-list-summarizer/?text=-%20%5Bx%5D%20write%20code%0A-%20%5B%20%5D%20write%20tests%0A-%20%5B%20%5D%20ship%20it&mode=summary

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.