5 Commits
Author SHA1 Message Date
gavindiazandClaude Code b0dc68f5a3 feat: MCP client to call external MCP tools in book chat
Add MCP client support so the "与书对话" agent can call external MCP
tools over Streamable HTTP or legacy SSE. Users add any MCP server by URL
on the new /mcp page; the agent merges its tools under the
mcp_<serverId>_<toolName> namespace and calls them alongside book tools.

- src/core/mcp/: hand-written minimal JSON-RPC client (zero deps, all
  requests via appFetch), Streamable HTTP + legacy SSE transports,
  session/tool-list cache with invalidation
- src/stores/mcpStore.ts: zustand persist config store
- src/pages/McpPage.tsx: server cards + add/edit dialog with headers
  editor and test-connection
- ragAgent merges enabled servers' tools into the agent loop
- i18n for all 7 locales; fix DialogContent a11y warning

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-08 20:04:41 +08:00
gavindiazandClaude Code c15706a5b9 feat: delete indexed books in book-chat config
Add a per-book delete action to the indexed-books list on the chat
config page. Confirming removes the book's AI caches, RAG index,
content cache, project record and all related chat sessions, then
refreshes the list. Adds the destructive confirm dialog and i18n for
all 7 locales.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-27 22:37:25 +08:00
gavindiazandClaude Code ca19d81755 fix: keep "start indexing" button visible in book-chat config
The config page's indexed-books list and the "开始索引" button shared one
scroll container, so as indexed books accumulated the growing list pushed
the button below the visible fold — and, after an app reopen with books
persisted, entirely off-screen.

Cap the card at viewport height and move scrolling to the upload/books
section so the button is pinned and always clickable regardless of how
many books are indexed.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-27 21:18:39 +08:00
gavindiazandClaude Code 5819d4ca53 feat: agent RAG retrieval with reranker and chat message actions
- Book chat: tool-calling agent (ragAgent + bookTools) and MiniSearch-based
  reranker to improve RAG retrieval and answer quality
- AI adapters: support tool-call message roles across OpenAI/Responses adapters
- Chat page: copy AI content, export session to Markdown/JSON, fork a new
  session from any message, regenerate the last answer, delete a single message
- ChatSessionManager: include reference sources in Markdown export
- Bump desktop app version to 0.1.4 and rebuild installers

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-26 22:34:26 +08:00
gavindiazandClaude Code 31ca07ea7a feat: ebook-to-mindmap desktop app with AI summary, book chat and mind-map export
Tauri v2 + React 19 desktop app. AI summary with pause/resume and
checkpoint resume, book-chat with RAG and chat sessions, unified data
persistence, mind-map download/export, and a Tauri build pipeline.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-25 23:00:24 +08:00