I was running 20 to 40 terminal tabs across different worktrees. Burned out, anxious, staring blankly at the screen trying to remember where I was with each task.
There had to be a better way to get things done in the agentic world.
Something where we focus on what matters, the task, instead of prompts.
TaskCooker is that better way. It’s free, it’s open source, and it runs on any AI subscription you already have, like Claude Code.
Visit the website over at https://taskcooker.mc-lopez.com to know more.
Built with TypeScript, React, Rust, and Tauri. Local-first: your tasks and your code stay on your machine. Works with the AI subscriptions you already pay for, like Claude Code and Codex.
Feature Discussions and Support go in https://www.reddit.com/r/taskcooker/.
Prerequisites:
- Node.js 20 or newer
- pnpm 10 (
corepack enablepicks the pinned version frompackage.json) - Rust stable toolchain
- Platform dependencies for Tauri 2: see the Tauri prerequisites guide for macOS, Windows, and Linux
Run the app in development:
pnpm install
pnpm tauri devpnpm tauri dev starts the Vite dev server (via scripts/ensure-dev-server.mjs) and launches the desktop shell with hot reload. The dev build uses its own bundle identifier (com.marklopez.boomerangtasks.dev), so it never touches the data of an installed production app.
To run the development shell against the installed production app's data, use:
pnpm dev:prod-dbThis command applies the production identity (com.marklopez.boomerangtasks) while retaining Tauri's development mode and hot reload. It reads and writes the real production database and app-data files. Close the installed production app first so two app processes do not operate on the same data concurrently.
Frontend-only iteration without the desktop shell:
pnpm devChecks to run before pushing:
pnpm test # vitest suite
pnpm typecheck # tsc --noEmit
pnpm smoke # smoke checksBuild a release bundle for your current platform:
pnpm tauri buildBundles land in src-tauri/target/release/bundle/ (.app/.dmg on macOS, .msi/.exe on Windows, .deb/.AppImage on Linux).
On macOS there is an install helper that builds with the production identity (TaskCooker, com.marklopez.boomerangtasks), backs up the previous version, and installs to ~/Applications:
pnpm install:appContributions are welcome. TaskCooker aims to include any feature, as long as it helps people get things done. I'm also open to suggestions to make the code more maintainable, and to improve the developer experience.
Before opening a PR:
- Review your code before you PR it. Agent-written code is welcome here (the codebase is deliberately agent-friendly), but you are the author of record: read the diff, understand it, and stand behind it.
- Read
AGENTS.mdand the guardrails inrules/(architecture, frontend, backend, database, security, testing). They are the source of truth for how this codebase is built. - Run
pnpm testandpnpm typecheck, and add tests for behavior changes. Test-first is preferred. - Keep changes focused: one concern per PR.
TaskCooker is free. If it saves your sanity, support development on Ko-fi.
MIT © Mark Lopez

