The planning loop is plain app code: a backlog, a list for today with time estimates, tasks dropped onto a time grid, a shutdown step that moves what's unfinished, and a weekly review. An agent builds that for one person in a sitting or two. The weekend goes into two-way calendar sync with Google, Outlook or iCloud that never creates duplicates, and phone access. The 20 or so integrations with Asana, Jira, Linear, Notion and Gmail are not worth rebuilding for one person.
Before you buildSunsama has no free plan. Super Productivity is free, MIT-licensed and has timeboxing, so try it before building.
Build me a personal daily planner to replace Sunsama. Requirements: - Node.js 22 + TypeScript: a Fastify API and a React front end built with Vite, installable as a PWA. `npm start` serves http://localhost:4860. - Storage: better-sqlite3 in ./data/planner.db: tasks (title, notes, channel, estimate minutes, planned day, start time, done_at, actual minutes, sort order), subtasks, channels with colours, a daily_notes table and recurrence rules stored as `rrule` strings. - Planning screen: left column Backlog and Today (drag to reorder); right column a day timeline (`@fullcalendar/react` timeGrid). Dragging a task onto the grid sets its start time and creates a block of its estimate length. - Capacity bar: workday start and end in settings; show total estimate for Today against free minutes after meetings, and turn red when over. Dropping a task past the limit asks for confirmation. - Calendar: read events from Google Calendar (`googleapis`, OAuth with offline access) and write time blocks to a dedicated calendar named Planner. Put it behind a CalendarProvider interface and add CalDAV (`tsdav`) with CALDAV_URL, CALDAV_USER and CALDAV_PASSWORD in .env as a second one. Keep an external-id map so editing a block updates the event instead of duplicating it. - Focus: start a task to run a Pomodoro-style timer (25/5 minutes by default) and log the real time into actual minutes. - Shutdown: a screen at the workday end lists unfinished tasks, each with Tomorrow, Backlog and Done buttons, plus a free-text highlights note saved for the day. - Weekly review: planned against actual minutes per channel and per day, tasks completed, and a carry-over list; export all tasks as CSV and JSON. - Single user, one password from .env. No accounts, no telemetry, local-first. - Out of scope: teams, imports from Asana, Jira, Notion, Gmail or Slack, mobile apps, AI summaries. - README: reaching it from a phone over HTTPS (Tailscale or a tunnel), and a warning that a Google Cloud project in Testing status issues refresh tokens that expire after 7 days.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Sunsama.
Add recurring tasks to the planner in this folder. Requirements: - Each task may have an `rrule` string (daily, weekdays, weekly on days, monthly on the Nth day). - Generate the next occurrence only when the current one is completed or the day closes, so the backlog never fills with future copies. - Add a Routines page: a named list of tasks with estimates that can be added to Today with one click. - Unit-test at least 15 recurrence cases, including month ends. - Update the README.
Add an importer to the planner in this folder. Requirements: - `npm run import -- todoist <file.csv>` maps a Todoist project backup to channels and tasks, keeping due dates and priorities as tags. - `npm run import -- csv <file.csv>` accepts columns title, notes, channel, estimate, due. - Print how many rows were imported and list the rows it skipped with the reason. - A dry-run flag that changes nothing. Update the README.
Add weekly objectives to the planner in this folder. Requirements: - Up to five objectives per ISO week, each with a title and a done flag, shown at the top of the planning screen. - A task can be linked to one objective; the weekly review shows minutes planned and logged per objective, and objectives with no tasks. - Unfinished objectives can be copied to next week from the review screen. - Update the README.
It turns planning into a short ritual with a built-in limit: you see that eight hours of tasks don't fit into five hours of free time, and you have to decide. People also pay for calendar sync they trust and for pulling work out of Asana, Jira or email without copying it.
Estimate · Free on your own machine, about $5 a month for a small VPS if you want it on a phone. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Free trial | $0 | $0 | 14 days, unlimited access to all features, no card needed. |
| Pro | $22 | $17 | Unlimited usage and integrations, with AI, MCP and Zapier included. |
| Enterprise | custom | — | SSO and SAML, SCIM and audit logs, custom privacy and data requirements. |
No free plan. A 14-day trial with all features starts without a credit card.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Importing tasks from Asana, ClickUp, Jira, Linear, Notion, Todoist, Trello and email, Native iOS, Android and desktop apps.
About $22 a month on the Pro plan per seat, $264 a year (checked 2026-10-19).
Importing tasks from Asana, ClickUp, Jira, Linear, Notion, Todoist, Trello and email; Native iOS, Android and desktop apps; Team workspaces, shared channels and admin billing; Auto-scheduling and meeting links; Daily AI summaries and the MCP server. If any of those matter to you, keep paying.
Yes: Super Productivity (open source), Vikunja (open source), Obsidian Day Planner (open source).