Commit Graph

180 Commits

Author SHA1 Message Date
Pascal 6d41f74031 refactor: eliminate MCP circular dependency
- Change architecture from mcpStore <-> mcpClient to mcpClient -> mcpStore
- Remove bidirectional callback pattern (set*Callback, notify* methods)
- Add updateState/updateHealthCheck public methods in mcpStore
- Replace callback calls with direct mcpStore method calls
- Remove unused imports (browser, HealthCheckState) and constructor
- Fixes CI: ReferenceError Cannot access mcpClient before initialization
2026-02-13 13:21:35 +01:00
Pascal 23741b3c6a fix: strip reasoning content and UI proprietary tags from prompts
TODO: add toggle and ensure backend API compliance for reasoning format
2026-02-13 13:21:34 +01:00
Pascal fb1ec29898 refactor: remove reasoning after first turn filter 2026-02-13 13:21:34 +01:00
Pascal fc5d9f587f refactor: inline reasoning with tags, remove fixed thinking field 2026-02-13 13:21:34 +01:00
Pascal c73baed7e3 feat: resolve MCP attachment images via rehype plugin
LLM can reference tool-generated images using markdown links like,
plugin resolves attachment names to base64 from message.extra when present,
regular HTTP/data URLs pass through unchanged (no regression)

- rehypeResolveAttachmentImages plugin in markdown pipeline
- Pass message prop to MarkdownContent and AgenticContent
- Force processor reactivity on message.extra changes
- Filter assistant images from API context (display-only)
2026-02-13 13:21:34 +01:00
Pascal 09381a59fd feat: persist base64 attachments from tool results 2026-02-13 13:21:34 +01:00
Pascal f16457551e webui: fix custom headers persistence in UI (derived) 2026-02-13 13:21:34 +01:00
Pascal f42e5f114e webui: fix custom headers persistence in UI 2026-02-13 13:21:34 +01:00
Aleksander Grygier 162bd976ed fix: Word wrapping 2026-02-13 13:21:34 +01:00
Aleksander Grygier 008463149b feat: UI improvements 2026-02-13 13:21:34 +01:00
Aleksander Grygier 805c171825 feat: UI improvement 2026-02-13 13:21:34 +01:00
Aleksander Grygier cad9ca1208 feat: MCP Server Details 2026-02-13 13:21:34 +01:00
Aleksander Grygier 825d2ea9a9 feat: MCP connection details WIP 2026-02-13 13:21:34 +01:00
Aleksander Grygier 2b37f70c37 refactor: MCP types and health check 2026-02-13 13:21:34 +01:00
Aleksander Grygier 38ba6d8372 refactor: KeyValuePairs component 2026-02-13 13:21:34 +01:00
Aleksander Grygier 57089370e4 refactor: DRY 2026-02-13 13:21:34 +01:00
Aleksander Grygier e1da51335c refactor: Architecture improvements 2026-02-13 13:21:34 +01:00
Aleksander Grygier 48b2b1b2f0 refactor: MCP state management + stores/clients relationship 2026-02-13 13:21:34 +01:00
Aleksander Grygier da8baaa9b8 fix: Distinguish streaming vs incomplete tool calls in UI 2026-02-13 13:21:34 +01:00
Aleksander Grygier 9471729162 fix: Restore live reactive UI progress for tool calls 2026-02-13 13:21:34 +01:00
Pascal 179477b4ed fix: reset tool call state between turns 2026-02-13 13:21:34 +01:00
Pascal 38244a1bfa webui: enable streaming of tool call arguments 2026-02-13 13:21:34 +01:00
Aleksander Grygier 5ffb6aba3a refactor: Cleanup 2026-02-13 13:21:34 +01:00
Pascal 96e51e2a41 webui: prevent mobile dropdown immediate close on synthetic click 2026-02-13 13:20:42 +01:00
Pascal 8916698294 webui: fix redirect to root ignoring base path 2026-02-13 13:20:42 +01:00
Aleksander Grygier 2a33fc2059 refactor: Cleanup 2026-02-13 13:20:41 +01:00
Aleksander Grygier 939e7aa16b refactor: Types 2026-02-13 13:20:41 +01:00
Aleksander Grygier bef865d871 refactor: Componentize McpServerCard 2026-02-13 13:20:41 +01:00
Aleksander Grygier 7dbb05a160 refactor: Cleanup 2026-02-13 13:20:41 +01:00
Aleksander Grygier 7e194f653a fix: Remove redundant CSS class 2026-02-13 13:20:41 +01:00
Aleksander Grygier 02c87fa3c9 feat: Add TruncatedText component 2026-02-13 13:20:41 +01:00
Aleksander Grygier 27b80ae3e8 fix: Collapsible box trigger 2026-02-13 13:20:26 +01:00
Aleksander Grygier 408e098324 refactor: Cleanup 2026-02-13 13:20:26 +01:00
Aleksander Grygier 0b36d04c38 refactor: Cleanup 2026-02-13 13:20:07 +01:00
Aleksander Grygier df464c1f5a refactor: Collapsible Content Block & small fixes 2026-02-13 13:18:20 +01:00
Aleksander Grygier f0ac6fa039 refactor: Cleanup 2026-02-13 13:18:20 +01:00
Aleksander Grygier 7ab269cd77 feat: UI improvements 2026-02-13 13:18:20 +01:00
Aleksander Grygier e0122465ed feat: Always show Mcp Selector 2026-02-13 13:18:20 +01:00
Pascal 36c9ad9303 fix: remove double scrollbar in model selector by using Bits UI content available height 2026-02-13 13:18:20 +01:00
Aleksander Grygier bc60beb1a7 feat: Enable adding System Prompt per-chat 2026-02-13 13:18:20 +01:00
Aleksander Grygier 276a3e9416 fix: UI 2026-02-13 13:17:51 +01:00
Aleksander Grygier e6ad864984 feat: UI improvements 2026-02-13 13:17:51 +01:00
Pascal cff237cb3e webui: raw tool result display, strip only leading/trailing newlines to preserve indentation 2026-02-13 13:17:33 +01:00
Pascal afb79b2970 webui: split raw output into backend parsing and frontend display options 2026-02-13 13:17:33 +01:00
Pascal 18efdabb12 webui: remove legacy wrapper and restore WebSocket transport 2026-02-13 13:17:33 +01:00
Pascal a13782a4d1 webui: remove unused imports 2026-02-13 13:17:33 +01:00
Aleksander Grygier bdd5958f6d feat: Improve agentic tool call streaming display with 'in progress' state 2026-02-13 13:17:32 +01:00
Aleksander Grygier a9c2ea7a8e feat: Enhance MCP server dropdown with search, popularity sorting, and per-chat overrides 2026-02-13 13:17:32 +01:00
Aleksander Grygier dfce09b34b feat: Add per-chat MCP server overrides 2026-02-13 13:17:32 +01:00
Aleksander Grygier b763a4cc69 feat: Add image load error fallback in MarkdownContent 2026-02-13 13:17:32 +01:00