26 Commits

Author SHA1 Message Date
lx1056758714-glitch
5325510aec Remove MCP message subscription and improve session content
Removed MCP实时消息订阅相关功能,包括订阅管理、持久化、菜单项和相关API接口,简化了http/service.go、manager.go和app.go。优化了会话(SessionV4)内容显示逻辑,未命中摘要时根据消息类型显示如[图片]、[语音]等标签,并在数据源中补充last_msg_type和last_msg_sub_type字段。修复了chatlog接口format=text时host参数传递问题,保持输出简洁。
2026-01-25 09:44:36 +08:00
lx1056758714-glitch
944b81264c fix: resolve empty query results in WAL mode by preventing usage of encrypted WAL files 2026-01-24 11:12:17 +08:00
lx1056758714-glitch
8fe3d595e7 Add WAL incremental sync and auto-decrypt debounce
Introduces experimental WAL (Write-Ahead Logging) incremental sync for WeChat database decryption, allowing real-time monitoring and incremental updates to the working directory database. Adds UI and config options to enable WAL support and configure auto-decrypt debounce interval. Updates related services, context, and data source logic to support WAL file handling, incremental decryption, and improved process detection. Also improves single-instance process checks and updates documentation for these new features.
2026-01-22 21:08:36 +08:00
teest114514
f87ec22251 Add ZSTD decompression for message_content field
Introduces ZSTD decompression for the message_content field in the message table when retrieving data, allowing compressed messages to be displayed as plain text. Also improves error handling for invalid time arguments in chatlog route and updates CSS for table list view layout.
2026-01-19 14:59:16 +08:00
lx1056758714-glitch
b205c5386a Unescape HTML entities in media URLs
Updated SNS media parsing functions to automatically unescape HTML entities in URLs and related fields, ensuring correct URL formatting. Also added documentation in README about this URL format optimization.
2026-01-14 11:48:36 +08:00
lx1056758714-glitch
caf4f817db Add SNS (Moments) database support with intelligent XML parsing
Features:
- Add sns.db database integration and auto-detection
- Implement XML content parser for moments data (internal/model/sns.go)
  - Extract basic info: create time, nickname, content description
  - Parse location data: city, coordinates, POI name, address
  - Recognize media types: image, video, article, finder (video account)
  - Extract structured data: image count, video duration, article info
- Add "朋友圈检索" (Moments Search) page in HTTP UI
- Support multiple output formats:
  - JSON: Structured data for programmatic access
  - Plain text: Human-readable format with emoji icons
  - Raw XML: Original XML content for debugging
  - CSV/Excel: Export for data analysis
- Support query features: filter by username, limit, offset pagination
- Database browser integration: SNS database visible in decrypted DB list

Technical changes:
- internal/wechatdb/datasource/v4/datasource.go: Add SNS group config and query methods
- internal/wechatdb/datasource/datasource.go: Add SNS interface methods
- internal/wechatdb/wechatdb.go: Add GetSNSTimeline and GetSNSCount
- internal/chatlog/database/service.go: Add SNS service layer methods
- internal/chatlog/http/route.go: Add /api/v1/sns endpoint with format support
- internal/chatlog/http/static/index.htm: Add moments search tab and UI
- .gitignore: Ignore tmpclaude directories and sns.md test file
- README.md: Update changelog for 2026-01-14

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-14 10:12:32 +08:00
lx1056758714-glitch
9de140dd15 Enhance image file handling and Rec directory support
Improved image file access by supporting files in Rec subdirectories using the extra_buffer field, and enhanced decryption logic to handle files without extensions as .dat files, with fallback to serving as-is if decryption fails. Updated MediaV4 model and datasource to extract and use extra_buffer, and revised README to document these changes.
2026-01-13 18:55:42 +08:00
lx1056758714-glitch
2f21b8ed77 Optimize image access with MD5-path cache and fallback
Introduces an MD5-to-path cache for media files, improving image access reliability. The /image/{md5} endpoint now uses a three-level fallback: hardlink table, cache-based path with suffix matching, and directory recursion. This addresses issues with image retrieval, especially for WeChat v4 packed_info_data cases, and updates the README with details of the new mechanism.
2026-01-13 18:13:53 +08:00
lx1056758714-glitch
84222b3ca8 Add ChatLab JSON export support
Introduces support for exporting chat logs in the ChatLab standardized JSON format. Adds a new export option in the UI, implements format conversion in the backend, and provides a download feature for the exported data. Also includes the initial ChatLab format specification and related model conversion logic.
2025-12-30 12:28:36 +08:00
lx1056758714-glitch
89aa44de28 feat(ui): display cache usage in TUI info bar and update README 2025-12-27 17:41:48 +08:00
lx1056758714-glitch
5217a50c70 fix: safe path calculation using filepath.Rel to avoid incorrect filename syntax error on Windows 2025-12-26 15:15:28 +08:00
lx1056758714-glitch
f63e82ca50 fix: re-apply regex syntax fix in index.htm 2025-12-26 14:47:48 +08:00
lx1056758714-glitch
1c5c08868f feat: add sql execution, keyword search, and generic export 2025-12-26 14:46:22 +08:00
lx1056758714-glitch
f5e1bc54e9 fix: correctly display filename in db list by splitting on backslash 2025-12-26 14:40:40 +08:00
lx1056758714-glitch
9c88f1184a fix: syntax error in database viewer javascript 2025-12-26 14:37:41 +08:00
lx1056758714-glitch
0a20176d57 feat: add raw database viewer and table data explorer 2025-12-26 14:35:21 +08:00
lx1056758714-glitch
5ceb2f2ffa feat: add db list view, search, and excel export 2025-12-26 14:30:00 +08:00
lx1056758714-glitch
6c04569123 Refactor UI: replace dashboard and sidebar with infobar
Removed dashboard, sidebar, layout, and logs components, consolidating status and account information into a new infobar component. Updated app structure to use tabbed pages and the infobar for displaying key information. Simplified menu and settings handling, and removed legacy UI code for a more streamlined interface.
2025-12-19 16:33:22 +08:00
lx1056758714-glitch
d18e413df0 Refactor UI layout and add dashboard, logs, sidebar
Replaces the infobar with a new dashboard component, introduces a sidebar for navigation, and adds a logs view for runtime messages. Refactors the main app layout to use a sidebar and content pages, updates menu handling, and improves modularity of UI components. Removes infobar and related code, and adds new files for dashboard, layout, logs, and sidebar.
2025-12-19 15:39:25 +08:00
lx1056758714-glitch
428dabe05a Add MCP media tools, real-time subscriptions, and UI
Major MCP extension: adds tools for media content retrieval, OCR, real-time message subscription with webhook push, chat activity analysis, user profile, and shared file search. Implements persistent subscription management, new prompt templates, and real-time resource endpoints. Updates UI to display active MCP subscriptions, enhances CSV export with MessageID, and documents all new features in the changelog. Removes Dockerfile and docker-compose.yml.
2025-12-18 21:37:55 +08:00
teest114514
ec41b0d2be Remove macOS/WeChat 3.x support and related code
Dropped all code, documentation, and models related to macOS and WeChat 3.x (darwinv3) support, including command-line tools, model definitions, and documentation files. Updated README to clarify that only Windows and WeChat 4.x are supported, and improved instructions for image key acquisition. Enhanced restart-and-get-key logic with status callbacks and retry handling for more robust key extraction after WeChat restarts.
2025-12-16 21:35:01 +08:00
teest114514
1a214ea4c4 Enhance auto decryption and UI message preview
Added pre-check and error handler for auto decryption: the system now tests decryption before enabling auto mode and stops with a popup if errors occur during operation. The footer UI now displays a real-time preview of the latest message, including sender, time, and content summary, with improved fallback for missing nicknames. Also fixed a bug where batch decryption incorrectly reported success when all files failed.
2025-12-16 03:28:06 +08:00
teest114514
cbf5201216 Refactor key extraction: drop V3 support, parallelize V4
Removed all code and logic related to WeChat V3 key extraction, including darwin and windows V3 extractors. Updated extractor selection to return an error for V3. Refactored Windows DLL extractor to run DLL and native (Dart-style) memory scan in parallel for V4, reporting keys as soon as found. Improved image key acquisition flow in the TUI and updated documentation to reflect the new focus on V4, parallel key extraction, and the deprecation of V3 support.
2025-12-16 00:15:59 +08:00
lx1056758714-glitch
e4f91629f4 Add restart-and-get-key feature and improve key handling
Introduces a new menu item and Manager method to restart WeChat and automatically retrieve the data key. Refactors menu indices, improves context key synchronization, and allows key extraction attempts even if WeChat is offline. Also ensures saved keys are loaded for accounts and enhances robustness in command-line key retrieval.
2025-12-14 19:25:17 +08:00
lx1056758714-glitch
0afaf9ec00 集成wx_key.dll并优化微信进程与密钥管理
新增DLL方式的微信数据库密钥提取(优先于原生方式),集成wx_key.dll相关代码和开发文档,完善临时账户名称与进程PID的动态管理,增强微信进程状态监控和自动切换逻辑。更新README,详细说明项目功能、使用方法和DLL集成指南。
2025-12-14 17:47:30 +08:00
lx1056758714-glitch
3d04a7f3eb 同步本地代码 2025-12-13 17:30:38 +08:00