Claudio for Android
A personal productivity app for Android, built around my Notion workspace. Notion is the source of truth; Claudio is the mobile interface that makes it usable day-to-day — with Claude AI on top for daily briefs, task summaries, and a conversational assistant.
What it does
- Home screen with today's tasks, filterable by priority and status, with a Claude Sonnet-generated daily brief
- Full task management synced to Notion — priority, status, due dates, notes, linked project, snooze
- Initiative tracking with description, status, target date, progress bar, and check-in history sparkline
- Conversational AI assistant (Ask Claudio) with full context of tasks and initiatives for natural language queries
- Ask Claudio Phase 3 agentic tools: `create_calendar_event` (with attendees), `draft_email` via Gmail OAuth2, `delete_task`, and `delete_initiative` — executable directly from conversation
- Morning report (Mon–Fri 08:00) and evening check-in (23:00) push notifications via WorkManager
- Glance home screen widget showing open and overdue task counts
- Offline-first with optimistic writes — changes sync in the background via Notion API
Why it matters
- Native Android UX purpose-built for this workflow — task capture takes under 15 seconds vs. ~45 seconds navigating a task management app to the right database
- Phase 3 agentic tools (calendar events, Gmail drafts) collapse what was a 3–4 app workflow into a single conversation turn
- Morning brief (08:00 Mon–Fri) and evening check-in (23:00) compress daily context-loading from ~15 minutes to a 30-second read
Architecture
- MVI pattern with Hilt dependency injection and Room as the offline-first local database
- Kotlin Coroutines + StateFlow for unidirectional state; SharedFlow for one-shot UI events
- Retrofit calls Notion API and Anthropic API; EncryptedSharedPreferences (AES-256-GCM) stores keys on-device
- Model routing: Haiku 4.5 parses natural-language task input; Sonnet 3.5 handles agentic tool use (Phase 3 calendar + email tools); Sonnet generates check-in summaries and daily briefs
- Gmail OAuth2 integration for the `draft_email` tool — token exchange and refresh handled on-device
- WorkManager schedules the morning report (Mon–Fri 08:00) and evening check-in (23:00) reliably across OEMs
- GitHub Actions CI/CD: lint + unit tests → signed AAB → Google Play internal track on every push to main
Philosophy
- Notion is the source of truth — Claudio is the layer that makes it actually usable on a phone
- Offline-first because connectivity should never block a task capture
- Claude runs on explicit actions only — task parsing, check-in summaries — never ambient or on keystrokes
- Kotlin
- Jetpack Compose
- Room
- WorkManager
- Notion API
- Claude API