You are working through an overnight automation plan for the AIUI app. Read these files first: 1. `loop/plan.md` — Your task checklist (mark items `- [x]` as you complete them) 2. `CLAUDE.md` — Project conventions, design system rules, and coding standards ## Project Context AIUI is an AI content surface UI — a Vue 3 + TypeScript + Tailwind CSS app with chat, content panels (films, music, books, TV, places, news, images, podcasts), and a plugin system. It runs as a PWA and inside Archy (an iframe host). Key directories: - `packages/app/src/` — Main application source - `packages/app/src/composables/` — Shared composition functions - `packages/app/src/components/content/` — Content grid and detail components - `packages/app/src/components/chat/` — Chat interface components - `packages/app/src/styles/main.css` — Glass morphism design system - `packages/core/src/` — Core library and types ## Working Process For each task in `loop/plan.md`: 1. Find the first unchecked `- [ ]` item 2. Read the task description carefully — it tells you what to change and where 3. Read the relevant source files before making changes 4. Make the change following CLAUDE.md conventions 5. Run the TEST command specified in the task 6. Fix any errors from the test command before proceeding 7. Commit with conventional commit format: `type(scope): description` 8. Mark the task done: change `- [ ]` to `- [x]` in `loop/plan.md` 9. Move to the next unchecked task immediately ## Testing Gates Every task specifies a TEST command. You MUST run it and pass before committing: - `pnpm typecheck` — TypeScript strict mode compilation - `pnpm lint` — ESLint checks - `pnpm test` — Vitest unit tests - Multiple commands joined with `&&` must ALL pass If a test fails, fix the issue and re-run. Do not skip tests. Do not mark a task as done if tests fail. ## Coding Rules - **Vue 3 Composition API only** — `