Commit Graph

21 Commits

Author SHA1 Message Date
William Valentin ed6b0362c0 fix(tui): reset agent-backed minimal sessions 2026-02-24 13:26:40 -08:00
William Valentin 37be391a40 Unify TUI runtime commands with gateway and harden gateway restart 2026-02-24 13:14:53 -08:00
William Valentin c44bc387b7 fix(tui): reserve /runtime and block local tool-loop fallback 2026-02-24 10:41:33 -08:00
William Valentin 266c37b353 feat(tui): add multiline paste mode in minimal UI 2026-02-22 23:30:28 -08:00
William Valentin 9a9375ef5d Fix minimal TUI submitted-line duplicate appearance 2026-02-22 17:21:22 -08:00
William Valentin dafe9b4d3d fix(core): harden env loading, OpenAI compatibility, and runtime recovery 2026-02-22 15:56:21 -08:00
William Valentin b09bfc8373 Unify TUI slash commands and harden tool inventory responses 2026-02-21 12:39:27 -08:00
William Valentin 67d235ebf5 feat(tui): single ctrl+c clears input, double ctrl+c exits 2026-02-18 11:38:21 -08:00
William Valentin e3b6f9df7c feat(tui,gemini): implement verbose transfer and url image fetch 2026-02-17 10:58:14 -08:00
William Valentin fc6a79ed90 feat(tui): use configured compaction threshold for /context output 2026-02-16 18:10:54 -08:00
William Valentin 527602fd8a feat(tui): let Esc cancel active minimal-mode response generation 2026-02-16 11:42:25 -08:00
William Valentin c34ae9b75b feat(tui): add Esc key to cancel active prompt without exiting 2026-02-16 11:31:17 -08:00
William Valentin 1a075e62b0 audit follow-up: burn down lint hotspots and dedupe channel gating flows 2026-02-15 22:44:04 -08:00
William Valentin 8b1ed2f689 Make /model provider switch activate selected tier in minimal TUI 2026-02-15 19:53:42 -08:00
William Valentin 955b9e28e0 feat: add OpenAI OAuth, strict model overrides, and Gmail pull mode 2026-02-13 14:55:40 -08:00
William Valentin 306e11bd2e feat: add multi-model delegation (Phase 0) and context compaction (Phase 1)
Phase 0 — Multi-Model Delegation:
- AgentOrchestrator wraps NativeAgent with delegate() for stateless
  single-turn calls to any model tier (fast/default/complex/local)
- DelegationConfig maps task types (compaction, classification, etc.)
  to model tiers
- Delegation prompts for compaction, memory extraction, classification,
  and tool summarisation
- Per-tier usage tracking for cost visibility
- Config schema: agents.delegation and agents.primary_tier

Phase 1 — Context Compaction:
- Token estimation (char/4 heuristic) with context window lookup
- shouldCompact() threshold check against context window percentage
- compactHistory() splits old/recent messages, delegates summary to
  fast tier, returns CompactionResult
- Automatic compaction in AgentOrchestrator.process() when configured
- Force-compact via orchestrator.compact() with session persistence
- Session.replaceHistory() with atomic SQLite transaction
- /compact TUI command with feedback on compacted token counts
- Config schema: compaction.enabled, threshold_pct, keep_turns,
  summary_max_tokens

Tests: 385 passing across 50 files (22 new tests in 2 new test files)
2026-02-06 13:17:02 -08:00
William Valentin f7cc87a4bb fix: sync agent tier when /model command switches model
The /model command was only updating the router's currentTier but not
the agent's currentTier. Since NativeAgent.chatWithRouter() passes its
own tier to router.chat(), switching to 'local' still sent requests
through the default (Anthropic) client first.
2026-02-06 10:05:32 -08:00
William Valentin c1f64d6ded feat: enhance TUI with colors, command hints, and improved rendering 2026-02-05 15:51:29 -08:00
William Valentin f722cf2bf0 feat: add /backend command handler to MinimalTui 2026-02-05 13:36:36 -08:00
William Valentin f115407af3 feat(tui): add streaming and model switching to minimal mode 2026-02-05 10:53:41 -08:00
William Valentin f792f8407a feat: add minimal TUI with readline interface 2026-02-05 00:36:16 -08:00