No description
Find a file
2026-06-11 22:09:03 -07:00
.github/workflows ci: improve release workflow with semver tags, tests, version check 2026-06-11 20:20:13 -07:00
src feat: add bulk-move commands (scoped and collect-to-end), bump 0.2.0 2026-06-11 22:09:03 -07:00
.eslintrc.js feat: scaffold obsidian-move-completed plugin 2026-06-11 19:21:14 -07:00
.gitattributes feat: subtle highlight with settings toggle, polish README, bump 0.1.4 2026-06-11 20:45:19 -07:00
.gitignore chore: update build output and add .gitignore 2026-06-11 19:50:18 -07:00
esbuild.config.mjs feat: scaffold obsidian-move-completed plugin 2026-06-11 19:21:14 -07:00
jest.config.js feat: scaffold obsidian-move-completed plugin 2026-06-11 19:21:14 -07:00
LICENSE docs: add README, LICENSE, and empty styles.css 2026-06-11 19:43:20 -07:00
main.js feat: add bulk-move commands (scoped and collect-to-end), bump 0.2.0 2026-06-11 22:09:03 -07:00
manifest.json feat: add bulk-move commands (scoped and collect-to-end), bump 0.2.0 2026-06-11 22:09:03 -07:00
package-lock.json feat: scaffold obsidian-move-completed plugin 2026-06-11 19:21:14 -07:00
package.json feat: add bulk-move commands (scoped and collect-to-end), bump 0.2.0 2026-06-11 22:09:03 -07:00
README.md feat: add bulk-move commands (scoped and collect-to-end), bump 0.2.0 2026-06-11 22:09:03 -07:00
styles.css feat: subtle highlight with settings toggle, polish README, bump 0.1.4 2026-06-11 20:45:19 -07:00
tsconfig.json feat: scaffold obsidian-move-completed plugin 2026-06-11 19:21:14 -07:00
versions.json feat: add bulk-move commands (scoped and collect-to-end), bump 0.2.0 2026-06-11 22:09:03 -07:00

Version Obsidian License

Move Completed Tasks

An Obsidian plugin that automatically moves completed tasks to the bottom of their checkbox group. Check a box and it sinks out of your way instantly.

Features

  • Moves completed checkboxes to the bottom of their contiguous group
  • Subtasks move with their parent as a block
  • Brief highlight shows where the task landed (optional)
  • Respects indent scoping: subtask completion stays within its parent
  • Single undo reverses the move
  • Minimal theme alternative checkboxes excluded by default

Install

BRAT: Add aaronpenne/obsidian-move-completed in BRAT settings.

Manual: Download main.js, manifest.json, styles.css from Releases into <vault>/.obsidian/plugins/obsidian-move-completed/.

Settings

Option Default Description
Enable On Master toggle
Move with subtasks On Nested items move as a block
Placement Above completed Above existing completed items, or bottom of group
Excluded characters ?!*"lbiSIpcfkwud Checkbox states that don't trigger a move
Highlight moved task On Brief visual indicator at the new position

Commands

Available from the command palette (Ctrl/Cmd+P):

Command What it does
Move all completed tasks down (scoped) Moves every completed task to the bottom of its group, as if you checked them off one by one. Preserves relative order.
Collect all completed tasks to end of document Gathers all completed tasks and places them under a ## Completed heading at the end of the note.

Both commands can be bound to hotkeys in Settings > Hotkeys.

How groups work

A "group" is the contiguous run of checkboxes at the same indent level. Groups are bounded by blank lines, headings, code fences, or non-task content. Completing a subtask only reorders it among its siblings, never past its parent.

Compatibility

  • Obsidian 1.5.0+ (Live Preview)
  • Tasks plugin
  • Minimal, AnuPpuccin, and other themes with custom checkbox states

License

MIT