People lose tasks inside chat messages. chat2task reads a messy group thread (LINE / Discord / IG DMs) and turns it into a clean to-do list — with deadlines and owners pulled out automatically.
Important to-dos get buried in chat. "好我等等做" → and it's gone. Nothing gets written down, nothing gets tracked.
- Paste a chat → get tasks. No formatting, no rules — just paste the thread.
- AI extracts deadlines & owners. Relative dates ("明天", "this Friday") are resolved to real dates; the responsible person is pulled out when named.
- Clean task dashboard. Check tasks off, delete, track what's open.
Paste a messy thread → click Parse → a clean task list appears.
| Frontend | Next.js 14 (App Router), React |
| AI | Claude API — claude-haiku-4-5 + structured outputs (guaranteed-valid JSON) |
| Storage | localStorage (MVP) · Supabase schema included for cloud sync + auth |
| Deploy | Vercel |
git clone https://github.com/<you>/chat2task
cd chat2task
npm install
cp .env.example .env # add your ANTHROPIC_API_KEY
npm run dev # http://localhost:3000Runs with a single env var — get a key at console.anthropic.com. Tasks persist in the browser, so there's no database to set up.
app/page.tsx ──paste──► POST /api/parse ──► lib/ai.ts (Claude · structured JSON)
│ │
addTasks() ◄──────────── tasks ◄─────────────────┘
│
localStorage (lib/store.ts) ──► /dashboard (check off · delete)
The Claude call uses structured outputs, so the model returns JSON that's
guaranteed to match the task schema — no fragile string parsing. See
lib/ai.ts.
app/
page.tsx paste + parse
dashboard/page.tsx task list — check off, delete
api/parse/route.ts validates input, calls Claude
components/
ChatInput.tsx textarea + sample + parse button
TaskList.tsx checkable task rows
lib/
ai.ts Claude call + JSON schema
store.ts localStorage persistence (swap for Supabase in v2)
supabase.ts optional client for cloud sync
types/task.ts
supabase/schema.sql v2 tables + row-level security
npx vercel # set ANTHROPIC_API_KEY in the Vercel dashboard- LINE bot — read messages directly, no copy-paste
- Chrome extension — right-click any chat → tasks
- Notion sync — push tasks to your workspace
- Deadline nudges — auto-remind before things are due