Every item in a plain list (see Plain lists) can be made into a checkbox by starting it with the string ‘[ ]’. Checkboxes are not included in the global TODO list, so they are often great to split a task into a number of simple steps. Here is an example of a checkbox list.
* TODO Organize party [1/3] - [-] call people [1/2] - [ ] Peter - [X] Sarah - [X] order food
Checkboxes work hierarchically, so if a checkbox item has children that are checkboxes, toggling one of the children checkboxes will make the parent checkbox reflect if none, some, or all of the children are checked.
The following commands work with checkboxes:
Toggle checkbox status or (with prefix arg) checkbox presence at point.
Insert a new item with a checkbox. This works only if the cursor is already in a plain list item (see Plain lists).
Chapter 5 of the manual
David O’Toole’s introductory tutorial
Charles Cave’s GTD setup