| Age | Commit message (Expand) | Author |
| 2026-06-01 | a11y(sidebar): label the remove-panel button for screen readers | Adam Malczewski |
| 2026-06-01 | fix(theme): consolidate boot apply and Settings picker into shared module | Adam Malczewski |
| 2026-06-01 | fix(frontend): ClaudeReset — live currentHour, real Set derived, in-flight ... | Adam Malczewski |
| 2026-06-01 | fix(api): wake scheduler — missed-wake recovery, retry consolidation, statu... | Adam Malczewski |
| 2026-06-01 | feat(api): extract pure wake-scheduler helpers (nextDailyAfter, recoverSchedu... | Adam Malczewski |
| 2026-06-01 | feat(frontend): ntfy.sh settings block in SettingsPanel | Adam Malczewski |
| 2026-06-01 | feat(api): wire notification dispatcher into app + /notifications routes | Adam Malczewski |
| 2026-06-01 | feat(core): ntfy.sh notification dispatcher module | Adam Malczewski |
| 2026-06-01 | feat(settings): inline theme picker into Settings panel | Adam Malczewski |
| 2026-06-01 | feat(sidebar): add Debug panel with copy-conversation action | Adam Malczewski |
| 2026-06-01 | feat(header): remove copy + theme buttons; keep title, status, sidebar toggle | Adam Malczewski |
| 2026-06-01 | test(queue): cover multi-message continuation collapse | Adam Malczewski |
| 2026-06-01 | fix(queue): consume queued messages after a turn ends (start a new turn) | Adam Malczewski |
| 2026-06-01 | feat(tabs): tab-to-tab agent communication via short handles | Adam Malczewski |
| 2026-05-31 | feat(debug): wire LLM debug logger end-to-end | Adam Malczewski |
| 2026-05-31 | feat: implement user agents (top-level tabs via summon) | Adam Malczewski |
| 2026-05-30 | fix(agent): stream thinking for all adaptive Claude models, not just Opus 4.7 | Adam Malczewski |
| 2026-05-30 | fix(frontend): sidebar fill panels overflow with 3+ views open | Adam Malczewski |
| 2026-05-30 | chore(notes): collect loose root docs into notes/; add reconcile edge-cases note | Adam Malczewski |
| 2026-05-30 | feat(chunks): chunk-native frontend store with turn-sealed reconcile + per-ch... | Adam Malczewski |
| 2026-05-30 | refactor(chunks): append-only chunk log with per-step cache-stable wire | Adam Malczewski |
| 2026-05-30 | feat(cache): Anthropic prompt caching, usage telemetry, and Cache Rate view | Adam Malczewski |
| 2026-05-29 | fix(claude): eliminate /home mount race that blanks Claude credentials at boot | Adam Malczewski |
| 2026-05-29 | Make chat input an auto-growing textarea | Adam Malczewski |
| 2026-05-29 | fix: preserve per-tab working directory on send | Adam Malczewski |
| 2026-05-29 | fix: override pointer-events on stop button spinner for iOS touch support | Adam Malczewski |
| 2026-05-29 | feat: stop generation button with abort signal plumbing | Adam Malczewski |
| 2026-05-29 | fix: handle unavailable tool calls via native v6 tool-error event, not synthe... | Adam Malczewski |
| 2026-05-29 | fix: include agent_id in foreground summon results for Open Tab button; prese... | Adam Malczewski |
| 2026-05-29 | feat: subagent summon — catalog filter, error hints, system prompt, AgentBu... | Adam Malczewski |
| 2026-05-29 | fix: refresh agent config on send; widen fallback retry detection | Adam Malczewski |
| 2026-05-29 | feat: disappearing chat history — chunk-limited frontend window with backen... | Adam Malczewski |
| 2026-05-28 | fix(core): normalize tool schemas for Anthropic, add toolChoice=auto; feat(su... | Adam Malczewski |
| 2026-05-28 | fix(core): strip stale [USER INTERRUPT] from LLM history; inject into last to... | Adam Malczewski |
| 2026-05-28 | feat: add agent status indicator in chat input, db tabs tests, and service ma... | Adam Malczewski |
| 2026-05-28 | feat(frontend): persist sidebar panel layout across browser refreshes via loc... | Adam Malczewski |
| 2026-05-28 | feat: restore tab layout + in-flight chunks on browser reopen; agents keep ru... | Adam Malczewski |
| 2026-05-28 | fix(api): pre-populate Agent.messages from DB on construction so model switch... | Adam Malczewski |
| 2026-05-28 | refactor(core): upgrade ai-sdk v4 → v6 + Anthropic/openai-compatible reason... | Adam Malczewski |
| 2026-05-27 | refactor(packaging): split into dispatch/dispatch-systemd/dispatch-s6, separa... | Adam Malczewski |
| 2026-05-27 | fix(core): handle empty file in read_file line counting | Adam Malczewski |
| 2026-05-27 | fix(api): apply correct model+baseURL when API key env var is missing, preven... | Adam Malczewski |
| 2026-05-27 | test(frontend): drive tabStore through real $state via exported createTabStor... | Adam Malczewski |
| 2026-05-27 | fix(frontend): structuredClone→$state.snapshot, WS reconnect resyncs from A... | Adam Malczewski |
| 2026-05-27 | fix(frontend): openAgentTab reads chunks[] from wire; copyConversation includ... | Adam Malczewski |
| 2026-05-27 | refactor: ChatMessage.chunks[] union — interleaved thinking, tool batching,... | Adam Malczewski |
| 2026-05-27 | feat: tool-output truncation+spill, read_file pagination, read_file_slice, sy... | Adam Malczewski |
| 2026-05-24 | fix: prompt caching, OpenCode Go MiniMax/Qwen support, Opus 4.7 thinking, SDK... | Adam Malczewski |
| 2026-05-23 | feat: google gemini provider, adaptive thinking for opus 4.7, model search fi... | Adam Malczewski |
| 2026-05-23 | fix: sidebar panel layout overlap by removing Claude Reset from flex-1 fill | Adam Malczewski |