| name | notes_checklist |
| description | Convert a note's body into a Notes-native checklist (HTML
`<ul class="gtl-todo-list">` markup), with optional auto-checking
of specific item indices.
Agents routinely fail at this by typing markdown `- [ ]` text —
Notes does NOT recognize markdown checklist syntax; it stores
literal "- [ ]" text. The native checklist requires Cmd+Shift+L
on selected text or Format menu → Checklist.
This skill: activates Notes, focuses the note body, selects all,
Cmd+Shift+L to convert. If `check_indices` is given, navigates to
each line and presses Cmd+Shift+U to toggle the checkbox.
|
| command | ["sh","-c","NOTE=\"$1\"; CHECK_IDX=\"${2:-}\"\n[ -z \"$NOTE\" ] && { echo \"note title required\" >&2; exit 1; }\n\nosascript 2>&1 <<APPLE\ntell application \"Notes\"\n activate\n try\n show (first note whose name = \"$NOTE\")\n on error\n return \"ERR: note not found\"\n end try\nend tell\ndelay 0.8\n\ntell application \"System Events\"\n tell process \"Notes\"\n try\n set mainWin to window 1\n try\n set bodyArea to text area 1 of scroll area 1 of group 1 of splitter group 1 of mainWin\n perform action \"AXFocus\" of bodyArea\n end try\n end try\n end tell\n delay 0.3\n keystroke \"a\" using {command down}\n delay 0.2\n keystroke \"l\" using {command down, shift down}\n delay 0.5\nend tell\n\nset checkList to \"$CHECK_IDX\"\nif checkList is not \"\" then\n set AppleScript's text item delimiters to \",\"\n set idxs to text items of checkList\n set AppleScript's text item delimiters to \"\"\n repeat with idxStr in idxs\n try\n set idxN to (idxStr as integer)\n tell application \"System Events\"\n key code 126 using {command down}\n delay 0.15\n repeat (idxN - 1) times\n key code 125\n delay 0.05\n end repeat\n delay 0.1\n keystroke \"u\" using {command down, shift down}\n delay 0.2\n end tell\n end try\n end repeat\nend if\nreturn \"ok: converted to checklist\"\nAPPLE\n","_"] |
| args | ["{{note}}","{{check_indices}}"] |
| schema | {"note":{"type":"string","description":"Exact note title","required":true},"check_indices":{"type":"string","description":"Comma-separated 1-based line indices to mark as checked. e.g. '2' marks the second item. Empty = no items checked.","required":false,"default":""}} |
| timeout | 30 |
notes_checklist — convert body to a real Notes checklist
The native Notes checklist is HTML markup `
- ...`. It can ONLY be created via UI: select
text → Cmd+Shift+L (or Format → Checklist). Markdown `- [ ]` does
not transform.
Examples
notes_checklist note="KinBench Checklist 169"
→ ok: converted to checklist
notes_checklist note="KinBench Mark 170" check_indices=2
→ ok: converted to checklist
The setup script must already have populated the note's body with the
items as plain lines (one per line). This skill handles the conversion
and optional checking. If items aren't there yet, type them via input
claw before calling this skill.