
Your AI assistant can finally manage your calendar.
Live Demo · Documentation · API Reference · MCP Setup · Download
You use AI assistants daily—Claude, ChatGPT, Copilot. They help you code, write, and think.
But when it comes to managing your time? They're useless. Your calendar and task manager are black boxes that AI can't touch.
Until now.
Open Sunsama is the first task manager built for the AI era:
| ### Task Management - Priorities (P0-P3) with color coding - Subtasks with progress tracking - Rich text notes with Tiptap editor - File attachments (images, videos, docs) - Drag-and-drop reordering - Task rollover at midnight | ### Time Blocking - Visual daily/weekly calendar - Drag to create time blocks - Resize blocks with snap-to-grid - Link blocks to tasks - Track actual vs. estimated time - Focus mode with timer |
| ### AI & Automation - **24 MCP tools** for Claude/Cursor - RESTful API with scoped API keys - Background job processing (PG Boss) | ### Multi-Platform - Web app (React + Vite) - Desktop apps (macOS, Windows, Linux) - Mobile apps (iOS, Android) - Dark/light/system themes |
Traditional productivity apps are closed systems. Your AI can't:
Open Sunsama opens the black box.
Connect your AI assistant in seconds:
// Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"open-sunsama": {
"command": "npx",
"args": ["-y", "@open-sunsama/mcp"],
"env": {
"OPENSUNSAMA_API_KEY": "os_your_api_key_here"
}
}
}
}
24 Tools Available:
| Category | Tools |
|---|---|
| Tasks | list_tasks, create_task, update_task, complete_task, delete_task, schedule_task, reorder_tasks |
| Time Blocks | list_time_blocks, create_time_block, update_time_block, delete_time_block, link_task_to_time_block, get_schedule_for_day |
| Subtasks | list_subtasks, create_subtask, toggle_subtask, update_subtask, delete_subtask |
| User | get_user_profile, update_user_profile |
Once connected, try these with Claude:
"Schedule my top 3 tasks for tomorrow with 2-hour focus blocks"
"What's on my calendar today? Move anything non-urgent to next week"
"Create a task to review the Q4 roadmap, P1 priority, due Friday"
"I finished the design review—mark it complete and start my next task"
For custom integrations:
# Create a task
curl -X POST https://api.opensunsama.com/tasks \
-H "X-API-Key: os_your_key" \
-H "Content-Type: application/json" \
-d '{
"title": "Ship v2.0",
"priority": "P0",
"scheduledDate": "2026-02-03",
"estimatedMins": 120
}'
# Get today's schedule
curl https://api.opensunsama.com/time-blocks?date=2026-02-03 \
-H "X-API-Key: os_your_key"
Scopes: tasks:read, tasks:write, time-blocks:read, time-blocks:write, user:read, user:write
The fastest way to get started:
Prerequisites
# Clone the repository
git clone https://github.com/ShadowWalker2014/open-sunsama.git
cd open-sunsama
# Install dependencies
bun install
# Configure environment
cp .env.example .env
# Edit .env with your DATABASE_URL
# Run database migrations
bun run db:push
# Start development servers
bun run dev
| Service | URL |
|---|---|
| Web App | http://localhost:3000 |
| API | http://localhost:3001 |
| Drizzle Studio | http://localhost:4983 |
# Start all services
docker-compose up -d
# Or build and run individually
docker build -f Dockerfile.api -t open-sunsama-api .
docker build -f Dockerfile.web -t open-sunsama-web .
Download from opensunsama.com/download or build from source:
cd apps/desktop
bun run tauri build
|
|
|
|
|
|
|
| Layer | Technologies |
|---|---|
| Frontend | React 19, Vite 6, TanStack Router, TanStack Query, Tailwind CSS, Radix UI, Framer Motion |
| Backend | Hono 4, Drizzle ORM, PostgreSQL 15, PG Boss (jobs), Zod |
| Desktop | Tauri 2 (Rust), system tray, global hotkeys, auto-launch |
| Mobile | Expo 52, React Native, Expo Router |
| Editor | Tiptap (ProseMirror), syntax highlighting, file embeds |
| Infra | Turborepo, Bun workspaces, Docker, Railway |
open-sunsama/
├── apps/
│ ├── api/ # Hono REST API (port 3001)
│ ├── web/ # React + Vite SPA (port 3000)
│ ├── desktop/ # Tauri v2 desktop wrapper
│ └── mobile/ # Expo React Native app
├── packages/
│ ├── database/ # Drizzle ORM, migrations, schema
│ ├── types/ # Shared TypeScript interfaces
│ ├── api-client/ # Type-safe HTTP client + React Query hooks
│ └── utils/ # Date utils, validation, errors
├── mcp/ # MCP server for AI assistants
└── docs/ # Documentation and images
We ship fast. Here's what's coming:
We love contributions! Open Sunsama is built by the community, for the community.
# Fork and clone
git clone https://github.com/YOUR_USERNAME/open-sunsama.git
cd open-sunsama
# Install dependencies
bun install
# Create a branch
git checkout -b feature/amazing-feature
# Make changes and test
bun run dev
bun run typecheck
bun run lint
# Commit with conventional commits
git commit -m "feat: add amazing feature"
# Push and open a PR
git push origin feature/amazing-feature
See CONTRIBUTING.md for detailed guidelines.
Open Sunsama is free for non-commercial use under a custom license.
Permitted:
Requires enterprise license:
See LICENSE for full details.
Built with love using these amazing open-source projects:
If Open Sunsama helps you ship faster, consider giving it a ⭐
Made with ❤️ by Circo
The future of productivity is open.
$ claude mcp add open-sunsama \
-- python -m otcore.mcp_server <graph>