Real Tasks

# Real Tasks An Obsidian plugin that deletes task lines shortly after their checkbox is ticked. Your notes keep only the tasks that still need doing — no graveyard of strikethroughs, no manual cleanup. ## Why Most task workflows leave completed tasks in the file as `- [x]` lines. That's great if you want a historical log; it's noise if you want your notes to function like a todo app. Real Tasks removes that noise automatically while preserving undo. ## How it works - When you check off a task in the editor, Real Tasks waits **800 ms**, then removes the whole line via the editor API. Undo (`Cmd/Ctrl-Z`) restores it. - When a task gets completed programmatically — for example by Dataview checkbox clicks in an embedded query, or by a sync client — Real Tasks catches the `vault.modify` event, waits **400 ms**, and rewrites the file with the completed lines stripped out. - A ribbon button and command insert a new `- [ ] ` task line at the cursor, ready to type. ## Features - Auto-delete completed task lines (`- [x]`, `- [X]`, `* [x]`, `+ [x]`). - Short delay after completion to allow for accidental clicks (`Cmd/Ctrl-Z` to recover). - Works from both the editor and external writes (Dataview, sync, external tools). - Ribbon icon and command **Insert new task** for quick task creation. - Command **Sweep completed tasks in this note now** for ad-hoc cleanup. - Desktop and mobile support. ## Usage 1. Install and enable the plugin. 2. Write tasks as normal: `- [ ] something to do`. 3. Check the box. ~1 second later the line vanishes. 4. Accidentally checked? Press `Cmd/Ctrl-Z` within the delay window, or immediately after, to restore the line. 5. Tap the ribbon icon (a check-square) to insert a new task at your cursor. Optionally bind `Insert new task` to a hotkey in Settings → Hotkeys. ## Commands | Command | Description | | ---------------------------------------------- | ----------------------------------------------------------- | | `Real Tasks: Insert new task` | Insert a `- [ ] ` line at the cursor. | | `Real Tasks: Sweep completed tasks in this note now` | Immediately remove all completed tasks from the active note. | ## Compatibility - Tested on Obsidian `1.4.0` and above. - Desktop and mobile (iOS, Android). - Compatible with Dataview `TASK` queries — checking a task in an embedded Dataview result triggers the auto-delete. ## Installation ### Community plugins (once published) 1. Open **Settings → Community plugins**. 2. Search for **Real Tasks**. 3. Install and enable. ### Manual install 1. Download `main.js` and `manifest.json` from the latest [release](https://github.com/cryptic0011/real-tasks/releases). 2. Create a folder `/.obsidian/plugins/real-tasks/`. 3. Drop both files inside. 4. Enable the plugin in **Settings → Community plugins**. ## Settings No settings page in this release. Everything runs on sensible defaults. Future versions may expose the delete delay and checkbox filters. ## Development - `main.js` is hand-written plain JavaScript — no build step, no bundler, no TypeScript. - To modify locally, edit `main.js` then reload the plugin via **Settings → Community plugins** toggle, or restart Obsidian. ## License [MIT](LICENSE)