# Project export: chronos.ai

This document was generated by HackStack to give an AI agent context about a hackathon project. Sections are labeled with their provenance; content marked as truncated was cut to keep this document small.

## Project metadata

- Hackathon: Cal Hacks 12.0
- Tagline: AI-powered calendar that schedules your life through natural conversation - optimized with constraint programming and synced with Google Calendar.
- Devpost: https://devpost.com/software/chronos-ai
- GitHub: not linked
- Video: https://www.youtube.com/embed/72gJioyPEDw?enablejsapi=1&hl=en_US&rel=0&start=&version=3&wmode=transparent
- Team: contributor stats unavailable

## Devpost submission (written by the team)

### Overview

About the Project ChronosAI is a CP-SAT-first scheduling assistant. You describe your plans in plain English; the LLM only parses your intent into a strict schema, and a deterministic OR-Tools CP-SAT model does all time math, feasibility, and optimization. The result is explainable, safe scheduling with hard guarantees like “no overlaps” and “before the deadline.” What inspired us Most “AI calendars” let a model pick times directly, which is brittle for time zones, buffers, and conflicts. We flipped the pattern: • LLM: parsing only (extract structure, never schedule). • CP-SAT: constraint satisfaction + optimization (do the hard math deterministically). This split keeps the system reliable, auditable, and predictable. What we learned

### How we built it

Schema the LLM must output (per item): { "intent": "event|meeting|task", "title": "string", "start_dt": "ISO8601 or null", "deadline_dt": "ISO8601 or null", "availability_windows": [{"start":"ISO","end":"ISO"}], "duration_minutes": 30, "can_split": true, "confidence": { "overall": 0.0, "start_dt": 0.0, "deadline_dt": 0.0, "availability": 0.0, "duration_minutes": 0.0 }, "assumptions": ["notes the LLM inferred"] } The scheduling math (at a glance) We discretize time into slots (e.g., 15 minutes). For each item i with duration D_i (in slots) and feasible windows W_i, we build candidate starts [ \mathcal{S}i={\,t \mid [t,t+D_i)\subseteq W_i\,}. \] Meetings/events choose exactly one start: [ \sum{t\in\mathcal{S}i} x{i,t}=1. \] Tasks may split across blocks subject to min/max session lengths and daily caps. We enforce NoOverlap across all chosen intervals (existing busy + buffers + new placements). Our objective (weighted sum) typically minimizes: [ \alpha \cdot \text{lateness} +\beta \cdot \text{fragmentation} +\gamma \cdot \text{energy_penalty} +\delta \cdot \text{churn}. \] Spaced repetition appears as a dispersion preference and per-day caps so blocks don’t cluster and never overlap. Challenges we faced What we’re proud of Tech notes With this architecture, ChronosAI stays friendly and conversational while still delivering hard scheduling guarantees.

## README (from the GitHub repository)

No README available.

## Detected evidence (automated analysis)

No repository was indexed for this project. Claimed technologies below could not be checked against code.
- Anthropic (technology) — claimed on Devpost, not found in the code
- JavaScript (language) — claimed on Devpost, not found in the code
- Python (language) — claimed on Devpost, not found in the code
- React (technology) — claimed on Devpost, not found in the code
- TypeScript (language) — claimed on Devpost, not found in the code

## Codebase structure

No repository index available.

## Key source files

No repository index available; no source files included.