Inspiration
Most task apps interrupt the thought they are supposed to protect. Before returning to work, you have to choose a project, schedule the task, and remember to check whether it is actionable. Chorsu starts with a narrower promise: capture one task immediately, organize it locally, and bring it back when you can act.
What it does
Chorsu is a local-first macOS task router. A configurable global shortcut opens a lightweight capture panel over whatever you are doing. Type one task in plain English and press Return.
- Natural time phrases such as
at 8 PMandtomorrow morningbecome local reminders. - Chorsu ranks the most likely project using deterministic rules and on-device signals.
- Confident captures save immediately and show a compact confirmation chip.
- When routing is uncertain, the same panel expands into a keyboard-first project chooser instead of silently guessing.
- Dependency phrases such as
after,once,when, andas soon ascan link a prerequisite. When Apple Intelligence is available, an on-device model can label additional verbatim phrasing, while deterministic validation decides what is applied. Blocked work stays out of Today until the prerequisite is complete, then Chorsu resurfaces it and can send a local notification. - The main window stays focused on Today, Upcoming, and Projects, with one-click and keyboard-first completion.
- Finishing is as cheap as capturing: complete tasks from their notifications, from the menu-bar task list, or with Space in Today. By default, the menu bar keeps your next actionable task visible and promotes the next one when you finish.
One capture always creates exactly one task. New captures never become an inbox that needs later cleanup. Everything is stored on the Mac, and the core workflow requires no Chorsu account, cloud service, or API key.
How I built it
Chorsu is a native Swift 6 application for macOS 26. SwiftUI drives the main interface, AppKit provides the fast floating capture panel, SwiftData persists work behind a single actor, and UserNotifications handles reminders and dependency-unblock alerts.
The model is never in the critical capture path. Deterministic parsing and local project ranking run first. Apple Foundation Models can assist asynchronously when available, but a capture never waits for it and every suggestion is treated as untrusted input. Project selection, task creation, reminder scheduling, and dependency linking are validated and committed atomically.
The app uses additive schema changes, immutable snapshots across concurrency boundaries, conservative routing thresholds, and extensive Swift Testing coverage. It remains fully usable offline when on-device intelligence is unavailable.
Building with Codex
Chorsu existed before Build Week, so I preserved the exact starting point in the pre-submission-period-baseline tag instead of presenting the entire application as new work.
During Build Week, I used Codex as an engineering collaborator to refactor the original review-heavy capture flow into the current in-panel experience; implement semantic project ranking and correction learning; integrate temporal and dependency parsing; build the notification, menu-bar, and Today completion loop; simplify onboarding and navigation; harden concurrency and persistence edges; and expand regression coverage. I kept the product, privacy, persistence, and distribution decisions human-owned and reviewed every change against tests and the real app.
The repository records those contributions ticket by ticket in BUILD_WITH_CODEX.md, while the dated commit history makes the post-baseline work directly inspectable.
Challenges
The hardest problem was balancing speed with trustworthy automation. A fast capture tool is useless if it silently files work into the wrong project, but asking for confirmation every time recreates the friction Chorsu is meant to remove. The solution is an explicit confidence boundary: commit only when local evidence is strong, otherwise keep the choice inside the capture panel.
Time phrases and dependencies created a second challenge. A phrase like “at 8” depends on the current local time, and an after ... clause must never invent or ambiguously link a prerequisite. Chorsu resolves time locally, shows the result for correction, and automatically links only grounded matches.
Accomplishments
- A one-keystroke capture-to-project loop that stays out of the user’s way.
- Local reminder parsing with the resolved time visible immediately.
- Dependency-aware actionability that resurfaces blocked work at the right moment.
- A model-optional architecture with no account, cloud, or API-key requirement.
- A transparent Build Week baseline and a test-backed, reviewable implementation history.
What I learned
AI is most useful inside clear boundaries. Deterministic parsers, confidence thresholds, actor ownership, atomic transactions, and regression tests turn model output from an authority into one optional signal. Codex was most effective in the same role: accelerating implementation and review while leaving product judgment and acceptance criteria explicit.
Built With
- appkit
- appleintelligence
- codex
- foundationmodels
- gpt-5.6
- keyboardshortcuts
- macos
- naturallanguage
- swift
- swiftdata
- swifttesting
- swiftui
- usernotifications
- xcodegen
Log in or sign up for Devpost to join the conversation.