42 KiB
Changelog
All notable changes to this project will be documented in this file.
0.3.5 - 2026-03-27
🚀 New Features
- NEW: Telegram IM Integration — Telegram bot adapter with webhook and long-polling modes, streaming replies via editMessageText, file download via getFile API, and timing-safe secret token verification
- NEW: DingTalk IM Integration — DingTalk bot supporting webhook (HmacSHA256 signature verification) and Stream mode (via dingtalk-stream-sdk-go), with AI Card streaming via OpenAPI and AccessToken caching
- NEW: Mattermost IM Channel — Mattermost IM channel adapter support
- NEW: IM Slash Command System — pluggable command framework with five built-in commands: /help, /info, /search, /stop, /clear; wired into all IM channel message dispatch
- NEW: IM Distributed Coordination — Redis-based multi-instance coordination: per-user queue limits, global concurrency gate, message dedup, WebSocket leader election, /stop cancellation for queued and in-flight requests
- NEW: Suggested Questions — agent-specific suggested questions API based on knowledge bases, with frontend display in chat and create-chat views; image knowledge auto-enqueues question generation tasks
- NEW: VLM Auto-Describe MCP Tool Images — when MCP tools return image content, the agent automatically generates text descriptions via the configured VLM model, making image data accessible to text-only LLMs
- NEW: Novita AI Provider — new LLM provider with OpenAI-compatible API supporting chat, embedding, and VLLM model types
- NEW: Channel Tracking — channel field added to knowledge entries and messages to track source (web/api/im/browser_extension) with frontend labels and DB migrations
- NEW: Expose Built-in Parser Engine in Settings — built-in parser engine now visible and selectable in the settings UI
⚡ Improvements
- MCP tool names now derived from service.Name (stable across server reconnections) instead of UUID; added collision detection and unique (tenant_id, name) DB index
- Frontend formats MCP tool names from snake_case (e.g. mcp_my_server_search_docs) to human-readable form (My Server Search Docs)
- Enhanced intent classification and context templates: runtime metadata (current time, weekday) injected into context, critical instructions added to rewrite template for entity/keyword preservation
- Knowledge search: added SQL LIKE wildcard escaping, title-based filtering, URL and HTML file type support; FindByMetadataKey method added
- Chunk search returns total chunk counts per knowledge ID for improved agent context awareness
- MiniMax models upgraded from M2.1/M2.1-lightning to M2.7/M2.7-highspeed; Novita AI MiniMax reference updated to M2.7
- DingTalk AI Card streaming: create/deliver/update via OpenAPI; shared think-block rendering via im.TransformThinkBlocks applied to all IM reply paths (DingTalk, Telegram, Feishu)
- IM stream orphan reaper and edit throttling added for DingTalk and Telegram; Feishu stream reaper fixes memory leak
- WeCom group chat replies fixed via appchat API with user fallback; empty-stream fallback when no visible content is produced
- Improved LLM call log summarization: limits output to last few messages to reduce verbosity
- ParallelToolCalls option added to ChatOptions
🐛 Bug Fixes
- Fixed agent producing empty response when no knowledge base is configured: retry (max 2), nudge message, and fallback response added
- Fixed UTF-8 byte-based truncation in summary fallback causing PostgreSQL invalid byte sequence errors for Chinese/emoji content; changed to rune-based truncation
- Fixed marked.js usage errors; upgraded marked dependency to v17.0.5 for correct code block rendering
- Fixed vLLM streaming: reasoning content now parsed and propagated through streaming pipeline alongside standard response
- Fixed frontend page counter not resetting to 1 after knowledge file operations (tag, upload, move, edit, delete), causing pagination skips
- Fixed image markdown being stripped during message sanitization
- Fixed MCP tool naming to use service.Name instead of UUID, preventing tool call failures after server reconnection
- Fixed global default storage engine not respected when creating a new knowledge base (was hardcoded to "local")
- Fixed API key encryption loss when updating tenant settings via PUT /tenants/kv/{key}: AfterFind-decrypted plaintext no longer written back to DB
- Fixed empty passage filtering in rerank to prevent Aliyun and Baidu Qianfan 400 errors
- Fixed markdown table rows being passed raw to rerank; now converted to plain text (col1, col2) before reranking
- Fixed OpenRouter embedding provider missing support
- Fixed Milvus vector metric type now configurable via MILVUS_METRIC_TYPE environment variable
- Fixed temperature validation to accept zero as a valid value (was previously defaulting)
- Fixed pg_search update guarded with skip_embedding to prevent unnecessary re-embedding
- Fixed thinking block content being indexed into chat history knowledge base, degrading RAG retrieval quality
📚 Documentation
- Added Telegram and DingTalk IM platform setup guides (WebSocket/Webhook modes, streaming, architecture diagrams)
- Updated IM integration docs with Slack, slash commands, QA queue, rate limiting, and streaming output sections
🔒 Security Enhancements
- Enhanced SSRF protection in RemoteAPIChat: replaced default DialContext with SSRFSafeDialContext; added SSRF URL validation for BaseURL and endpoint in NewRemoteAPIChat and chat methods
0.3.4 - 2026-03-19
🚀 New Features
- NEW: IM Bot Integration — support WeCom, Feishu, and Slack IM channel integration with WebSocket/Webhook modes, streaming support, file upload, and knowledge base integration
- NEW: Multimodal Image Support — implement image upload and multimodal image processing with enhanced session management
- NEW: Manual Knowledge Download — support downloading manual knowledge content as files with proper filename sanitization and Content-Disposition handling
- NEW: NVIDIA Model API — support NVIDIA chat model API with custom endpoint configuration and VLM model support
- NEW: Weaviate Vector DB — add Weaviate as a new vector database backend for knowledge retrieval
- NEW: AWS S3 Storage — integrate AWS S3 storage adapter with database migrations and configuration UI
- NEW: AES-256-GCM Encryption — add AES-256-GCM encryption for API keys at rest for enhanced security
- NEW: Built-in MCP Service — add built-in MCP service support for extending agent capabilities
- NEW: Multi-Content Messages — enhance message structure to support multi-content messages
- NEW: Web Search in AgentQA — add web search option to AgentQA functionality
- NEW: Clear Session Messages — add functionality to clear session messages
- NEW: Agent Management — add agent management functionality in the frontend
- NEW: Knowledge Move — implement knowledge move functionality between knowledge bases
- NEW: Chat History & Retrieval Settings — implement chat history and retrieval settings configuration
- NEW: Final Answer Tool — introduce final_answer tool and enhance agent duration tracking
- NEW: Batch Chunk Deletion — implement batch deletion for chunks to avoid MySQL placeholder limit
⚡ Improvements
- Optimized hybrid search by grouping targets and reusing query embeddings for better performance
- Enhanced knowledge search by resolving embedding model keys
- Enhanced AgentStreamDisplay with auto-scrolling, improved styling, and loading indicators
- Enhanced chat model selection logic in session management
- Enhanced input field component with improved handling and sanitization
- Unified dropdown menu styles across components
- Enhanced storage engine configuration and user notifications
- Improved document preview with responsive design and localized fullscreen toggle
- Enhanced agent event emission for final answers and fallback handling
- Enhanced FAQ metadata normalization and sanitization
- Updated LLM configuration to model ID in API and frontend
- Added computed model status for LLM availability in GraphSettings
- Added pulsing animation to stop button and improved loading indicators
- Added language support to summary generation payload
- Enabled parent-child chunking and question generation in KnowledgeBaseEditorModal
- Standardized loading and avatar sizes across components
- Updated storage size calculations for vector embeddings
🐛 Bug Fixes
- Fixed Milvus retriever related issues
- Fixed docparser handling of nested linked images and URL parentheses
- Fixed chunk timestamp update to use NOW() for consistency
- Fixed NVIDIA VLM model API default BaseURL
- Fixed auth error messages and unified username validation length
- Enforced 7500 char limit in chunker to prevent embedding API errors
- Fixed builtin engine handling of simple formats
- Fixed dev-app command error on Linux
- Fixed vue-i18n placeholder escaping, computed ref accessor, and missing ru-RU keys
- Fixed multilingual support for TDesign components and locale key synchronization
- Fixed session title word count requirement
- Updated default language setting to Chinese
- Fixed MinIO endpoint format error message
- Fixed storage engine warning display and styling
- Fixed manual download button layout and polish
- Fixed sanitize tab chars and double .md extension in manual download filename
📚 Documentation
- Added documentation for Slack IM channel integration
- Added design specification and implementation plan for manual knowledge download
🔧 Refactoring
- Streamlined agent document info retrieval and enhanced chunk search logic
- Improved IM tool invocation and result formatting
- Consolidated QA request handling and improved session service interface
- Simplified fullscreen handling and improved styling in document preview
- Updated conversation handling and image description requirements
- Changed tokenization method for improved processing
0.3.3 - 2026-03-05
🚀 New Features
- NEW: Parent-Child Chunking — implement parent-child chunking strategy for enhanced context management with hierarchical chunk retrieval
- NEW: Knowledge Base Pinning — support pinning frequently-used knowledge bases for quick access
- NEW: Fallback Response — add fallback response handling and UI indicators when no relevant results are found
- NEW: Image Icon Detection — add image icon detection and filtering functionality for document processing
- NEW: Passage Cleaning for Rerank — add passage cleaning functionality for rerank model to improve relevance scoring
- NEW: ListChunksByParentIDs — add ListChunksByParentIDs method and enhance chunk merging logic for parent-child retrieval
- NEW: GetUserByTenantID — add GetUserByTenantID functionality to user repository and service
⚡ Improvements
- Enhanced Docker setup with entrypoint script and skill management
- Enhanced storage engine connectivity check with auto-creation of buckets
- Enhanced MinerU response handling for document parsing
- Enhanced sidebar functionality and UI responsiveness
- Updated chunk size configurations for knowledge base processing
- Enforced maximum length for tool names in MCPTool for safety
- Updated theme and UI styles across components for visual consistency
- Updated at-icon SVG and enhanced input field component
- Standardized border styles and adjusted component styles for improved consistency
🐛 Bug Fixes
- Fixed cleanupCtx created at startup potentially expiring before shutdown
0.3.2 - 2026-03-04
🚀 New Features
- NEW: Knowledge Search — new "Knowledge Search" entry point with semantic retrieval, supporting bringing search results directly into the conversation window
- NEW: Parser Engine Configuration — support configuring document parser engines and storage engines for different sources in settings, with per-file-type parser engine selection in knowledge base
- NEW: Storage Provider Configuration — support configuring storage providers (local, MinIO, COS, Volcengine TOS) per data source with standardized configuration and backward compatibility
- NEW: Milvus Vector Database — added Milvus as a new vector database backend for knowledge retrieval
- NEW: Volcengine TOS — added Volcengine TOS object storage support
- NEW: Mermaid Rendering — support mermaid diagram rendering in chat with fullscreen viewer, zoom, pan, toolbar and export
- NEW: Batch Conversation Management — batch management and delete all sessions functionality
- NEW: Remote URL Knowledge Creation — support creating knowledge entries from remote file URLs
- NEW: Async Knowledge Re-parse — async API for re-processing existing knowledge documents
- NEW: User Memory Graph Preview — preview of user-level memory graph visualization
- NEW: Tenant Access Authorization — tenant access authorization in TenantHandler
- NEW: Database Query Tool — built-in database query tool for agents with automatic tenant isolation and soft-delete filtering
⚡ Improvements
- Image rendering in local storage mode during conversations with optimized streaming image placeholders
- Embedded document preview component for previewing user-uploaded original files
- Knowledge base, agent, and shared space list page interaction redesign with improved UI elements
- Storage configuration standardization with enhanced backward compatibility
- Dynamic file service resolution for knowledge extraction
- SSRF safety checks enhanced in MinerUCloudReader
- Nginx configuration improved for file handling
- Dockerfile and build scripts with customizable APT mirror support
- System information display with database version
- Path and filename validation security utilities
- Vector embeddings indexing enhanced with TagID and IsRecommended fields
- Korean (한국어) README translation
🐛 Bug Fixes
- Handle thinking content in Ollama chat responses
- Batch manage dialog now loads all sessions independently from API
- Prevent modal from closing when text selection extends beyond dialog boundary
- Handle empty metadata case in Knowledge struct
- Swagger interface documentation generation error resolved
- Auth form validation check to handle non-boolean responses
- Helm frontend APP_HOST env default value corrected
🗑️ Removals
- Removed Lite edition support and related configurations
0.3.1 - 2026-02-10
🚀 New Features
- NEW: Remote Backend Support — support remote backend and HTTPS proxy configuration
- NEW: Enhanced Document Upload — expanded document upload capabilities in KnowledgeBase component
⚡ Improvements
- Enhanced resource management in ListSpaceSidebar and KnowledgeBaseList
🐛 Bug Fixes
- Add clipboard API fallback for non-secure contexts
- DuckDB spatial extension not found error
- Data analysis knowledge files loaded via presigned URLs
0.3.0 - 2026-02-09
🚀 New Features
- NEW: Shared Space — shared space management with member invitations, shared knowledge bases and agents across members, tenant isolation for retrieval
- NEW: Agent Skills — agent skills with preloaded skills for smart-reasoning agent, sandbox-based execution environment
- NEW: Bing Search — added Bing as a new web search provider
- NEW: Agent Thinking Mode — support thinking mode for agents, strip thinking content from output
- NEW: Web Fetch DNS pinning and validation improvements
- NEW: FAQ matched question field in search results
- NEW: Knowledge base mentioned-only retrieval option
⚡ Improvements
- Redis ACL support with
REDIS_USERNAMEenvironment variable - Configurable global log level via environment variable
- Use
num_ctxinstead oftruncatefor embedding truncation (Ollama compatibility) - Large FAQ imports offloaded to object storage
- Unified card styles and layout consistency across components
- OCR module restructured with centralized configuration
- Enhanced MCP tool name and description handling for security
- Structured logger replacing standard log in main and recovery middleware
🐛 Bug Fixes
- MCP Client connection state not marked as closed after SSE connection loss
- Clear tag selection state when re-entering knowledge base
- Rune handling for correct chunk merging
- Host extraction from completion_url handling both v1 and non-v1 endpoints
- SQL injection prevention via OR conditions with comprehensive validation
- Switch to append mode on retry to prevent data loss
- Parser file_extension for markitdown compatibility
🔒 Security Enhancements
- SSRF-safe HTTP client for URL imports and fetching
- SQL validation logic centralized and simplified
- Sandbox-based agent skills execution with security isolation
0.2.10 - 2026-01-16
🚀 New Features
- NEW: Support for deleting document type tags
- NEW: Google provider for web search
- NEW: Added multiple mainstream model providers including GPUStack
- NEW: AgentQA request field support
- NEW: FAQ batch import dry run functionality
- NEW: Support tenant ID and keyword simultaneous search
- NEW: FAQ import result persistence display
- NEW: SeqID auto-increment tag support
- NEW: Support adding similar questions to FAQ entries
- NEW: FAQ import success entry details display
- NEW: Enhanced task ID generator replacing UUID
⚡ Improvements
- IMPROVED: Chunk merge/split logic with validation
- IMPROVED: FAQ index update and deletion performance optimization
- IMPROVED: Batch indexing with concurrent save optimization
- IMPROVED: Retriever engine checks and mapping exposure refactored
- IMPROVED: FAQ import and validation logic merged
- IMPROVED: Error handling and unused code removal
🐛 Bug Fixes
- FIXED: Disabled stdio transport to prevent command injection risks
- FIXED: FAQ update duplicate check logic
- FIXED: Migration script table name spelling error
- FIXED: Unused tag cleanup ignoring soft-deleted records
- FIXED: FAQ import tag cleanup logic
- FIXED: FAQ entry tag change not updating issue
- FIXED: Ensure "Uncategorized" tag appears first
- FIXED: Potential crash from slice out of bounds
- FIXED: Tag deletion using correct ID field
- FIXED: FAQ tag filtering using seq_id instead of id type issue
- FIXED: Critical vulnerability V-001 resolved
- FIXED: Added EncodingFormat parameter for ModelScope embedding models
- FIXED: Secure command execution with sandbox for doc_parser
0.2.9 - 2026-01-10
🚀 New Features
- NEW: Batch tag name supplement in search results
- NEW: Return updated data when updating FAQ entries
- NEW: Convert uncategorized FAQ entries to "Uncategorized" tag
0.2.8 - 2025-12-31
🚀 New Features
- NEW: Data Analyst Agent & Tools
- Added built-in Data Analyst agent
- Added DataSchema tool for retrieving schema from CSV/Excel files
- Support for agent file type restrictions
- NEW: Thinking Mode Support
- Added configuration support for Thinking mode
- Added Thinking field to Summary configuration
- NEW: Enhanced File & Storage Management
- Support listing MinIO buckets and permissions
- Configurable file upload size limits
- Full-text merge view mode
- NEW: Conversation Enhancements
- Added option to disable automatic title generation
- Enhanced KnowledgeQAStream parameters
- Support for streaming response types and tool calls
- NEW: System & Configuration
- Added
WEKNORA_VERSIONenvironment variable support - APK mirror configuration support in Docker
- Enhanced chunking separator options
- FAQ two-level priority tag filtering
- Update index fields when batch updating tags
- Added
⚡ Improvements
- IMPROVED: Agent & Model Handling
- Unified agent not ready message logic
- Optimized built-in agent configuration synchronization
- Removed model locking logic to allow free switching
- Enhanced model selection and error handling
- IMPROVED: Refactoring
- Simplified session creation request structure
- Converted knowledgeRefs to References type
- Refactored SSE stream setup
- Refactored bucket policy parsing logic
- Streamlined Docker package installation
🐛 Bug Fixes
- FIXED: Localization placeholder display issues
- FIXED: Duplicate tag creation and stream response parsing
- FIXED: Missing WebSearchStateService in parallel search
- FIXED: Model list refresh on settings popup close
- FIXED: Asynq Redis DB configuration
- FIXED: Menu deletion logic and count updates
- FIXED: OpenAI API compatibility (exclude ChatTemplateKwargs)
- FIXED: Handled Nginx 413 (Payload Too Large) requests
- FIXED: Added existence check for embeddings table in tag_id migration
0.2.6 - 2025-12-29
🚀 New Features
-
NEW: Custom Agent System
- Support for creating, configuring, and selecting custom agents
- Agent feature indicators display with MCP service capability support
- Built-in agent sorting logic ensuring multi-turn conversation auto-enabled in agent mode
- Agent knowledge base selection modes: all/specified/disabled
-
NEW: Helm Chart for Kubernetes Deployment
- Complete Helm chart for Kubernetes deployment
- Neo4j template support for GraphRAG functionality
- Versioned image tags and official images compatibility
-
NEW: Enhanced FAQ Management
- FAQ entry retrieval API supporting single entry query by ID
- FAQ list sorting by update time (ascending/descending)
- Enhanced FAQ search with field-specific search (standard question/similar questions/answer/all)
- Batch update exclusion for FAQ entries in ByTag operations
- Tag deletion with content_only mode to delete only tag contents
-
NEW: Multi-Platform Model Adaptation
- Support for multiple platform model configurations
- Title generation model configuration
- Knowledge base selection mode without mandatory rerank model check
-
NEW: Korean Language Support
- Added Korean (한국어) internationalization support
⚡ Improvements
-
IMPROVED: Knowledge Base Operations
- Async knowledge base deletion with background cleanup via ProcessKBDelete
- Multi-knowledge base search support with specified file ID filtering
- Optimized knowledge chunk pagination with type-specific search and sorting logic
- Enhanced SearchKnowledgeRequest structure with backward compatibility
-
IMPROVED: Prompt Template System
- Restructured prompt template system with multi-scenario template configuration
- Unified system prompts with optimized agent selector interface
-
IMPROVED: Tag Management
- Enhanced tag deletion with ID exclusion support
- Async index deletion task for optimized deletion flow
- Batch TagID update functionality
- Optimized tag name batch queries for improved efficiency
-
IMPROVED: API Documentation
- Updated API documentation links to new paths
- Added knowledge search API documentation
- Enhanced FAQ and tag deletion interface documentation
- Removed hardcoded host configuration from Swagger docs
🐛 Bug Fixes
- FIXED: Tag ID handling logic for empty strings and UntaggedTagID conditions
- FIXED: JSON query compatibility for different database types (MySQL/PostgreSQL)
- FIXED: GORM batch insert issue where zero-value fields (IsEnabled, Flags) were ignored
- FIXED: Helm chart versioned image tags and runAsNonRoot compatibility
🔧 Refactoring
- REFACTORED: Removed security validation and length limits, simplified input processing logic
- REFACTORED: Enhanced agent configuration with improved selection and state management
0.2.5 - 2025-12-22
🚀 New Features
-
NEW: In-Input Knowledge Base and File Selection
- Support selecting knowledge bases and files directly within the input box
- Display @mentioned knowledge bases and files in message stream
- Dynamic placeholder text based on knowledge base and web search status
-
NEW: API Key Authentication Support
- Added API Key authentication mechanism
- Optimized Swagger documentation security configuration
- Disabled Swagger documentation access in non-production environments by default
-
NEW: User Registration Control
- Added
DISABLE_REGISTRATIONenvironment variable to control user registration
- Added
-
NEW: User Conversation Model Selection
- Added user conversation model selection state management with store two-way binding
🔒 Security Enhancements
- ENHANCED: MCP stdio transport security validation to prevent command injection attacks
- ENHANCED: SQL security validation rebuilt using PostgreSQL official parser for enhanced query protection
- ENHANCED: Security policy updated with vulnerability reporting guidelines
⚡ Improvements
- IMPROVED: Streaming rendering mechanism optimized for token-by-token Markdown content parsing
- IMPROVED: FAQ import progress refactored to use Redis for task state storage
- IMPROVED: Enhanced knowledge base and search functionality logic
🐛 Bug Fixes
- FIXED: Corrected knowledge ID retrieval in FAQ import tasks
- FIXED: Force removal of legacy vlm_model_id field from knowledge_bases table
- FIXED: Disabled Ollama option for ReRank models in model management with tooltip
0.2.4 - 2025-12-17
🚀 New Features
-
NEW: FAQ Entry Export
- Support CSV format export for FAQ entries
-
NEW: Asynchronous Knowledge Base Copy
- Progress tracking and incremental sync support
- Improved SourceID conversion logic and tag mapping for knowledge base copying
-
NEW: FAQ Index Type Separation
- Added is_enabled field filtering and batch update optimization
-
NEW: Swagger API Documentation
- Enhanced Swagger API documentation generation
🐛 Bug Fixes
- FIXED: Optimized tag mapping logic and FAQ cloning during knowledge base copy
- FIXED: Adjusted Knowledge struct Metadata field type to json.RawMessage
- FIXED: Added tenant information to context during knowledge base copy
- FIXED: Database migration compatibility with older versions
0.2.3 - 2025-12-16
🚀 New Features
-
NEW: Chat Message Image Preview
- Support image preview in chat messages
- Updated Agent prompts to include image-text result output
- Image information display in knowledge search and list tools
-
NEW: FAQ Answer Strategy Field
- Support 'all' (return all answers) and 'random' (randomly return one answer) modes
-
NEW: FAQ Recommendation Field
- Added recommendation field for FAQ entries
- Support batch update by tag
⚡ Improvements
- IMPROVED: Optimized async task retry logic to update failure status only on last retry
- IMPROVED: Enhanced hybrid search result fusion strategy
- IMPROVED: Updated MinIO, Jaeger, and Neo4j image versions for stability
🐛 Bug Fixes
- FIXED: Environment variable saving logic in MCP service dialog
- FIXED: AUTO_RECOVER_DIRTY environment variable logic in database migration, enabled by default
⚡ Infrastructure Improvements
- IMPROVED: Updated Dockerfile with uvx permission adjustments and Node version upgrade
0.2.2 - 2025-12-15
🚀 New Features
-
NEW: FAQ Answer Strategy Configuration
- Added answer strategy field for FAQ entries, supporting
all(return all answers) andrandom(randomly return one answer) modes - More flexible FAQ response control
- Added answer strategy field for FAQ entries, supporting
-
NEW: FAQ Recommendation Feature
- Added recommendation field for FAQ entries to mark recommended Q&A
- Support batch update of FAQ recommendation status by tag
- Optimized tag deletion logic
-
NEW: Document Summary Status Tracking
- Added
SummaryStatusfield to Knowledge struct - Support tracking document summary generation status
- Added
⚡ Infrastructure Improvements
-
IMPROVED: Docker Build Optimization
- Fixed system package conflicts during pip dependency installation with
--break-system-packagesparameter - Adjusted uvx permission configuration
- Upgraded Node version
- Fixed system package conflicts during pip dependency installation with
-
IMPROVED: Database Initialization
- Optimized database initialization logic with conditional embeddings handling
🐛 Bug Fixes
- FIXED: Corrected
MINIO_USE_SSLenvironment variable parsing logic
0.2.1 - 2025-12-08
🚀 New Features
- NEW: Qdrant Vector Database Support
- Full integration with Qdrant as retriever engine
- Support for both vector similarity search and full-text keyword search
- Dynamic collection creation based on embedding dimensions (e.g.,
weknora_embeddings_768) - Multilingual tokenizer support for Chinese/Japanese/Korean text search
- Professional Chinese word segmentation using jieba for keyword queries
⚡ Infrastructure Improvements
- IMPROVED: Docker Compose Profile Management
- Added profiles for optional services:
minio,qdrant,neo4j,jaeger,full - Enhanced
dev.shscript with--minio,--qdrant,--neo4j,--jaeger,--fullflags - Pinned Qdrant Docker image version to
v1.16.2for stability
- Added profiles for optional services:
- IMPROVED: Database Migration System
- Added automatic dirty state recovery for failed migrations
- Added Neo4j connection retry mechanism with exponential backoff
- Improved migration error handling and logging
- IMPROVED: Retriever Engine Configuration
- Retriever engines now auto-configured from
RETRIEVE_DRIVERenvironment variable - No longer required to write retriever config during user registration
- Added
GetEffectiveEngines()method for dynamic engine resolution - Centralized engine mapping in
types/tenant.go
- Retriever engines now auto-configured from
🐛 Bug Fixes
- FIXED: Qdrant keyword search returning empty results for Chinese queries
- FIXED: Image URL validation logic simplified for better compatibility
📚 Documentation
- Added Qdrant configuration examples in docker-compose files
0.2.0 - 2025-12-05
🚀 Major Features
- NEW: ReACT Agent Mode
- Added ReACT Agent mode that can use built-in tools to retrieve knowledge bases
- Support for calling user-configured MCP tools and web search tools to access external services
- Multiple iterations and reflection to provide comprehensive summary reports
- Cross-knowledge base retrieval support, allowing selection of multiple knowledge bases
- NEW: Model Management System
- Centralized model configuration
- Added model selection in knowledge base settings page
- Built-in model sharing functionality across multiple tenants
- Tenants can use shared models but are restricted from editing or viewing model details
- NEW: Multi-Type Knowledge Base Support
- Support for creating FAQ and document knowledge base types
- Folder import functionality
- URL import functionality
- Tag management system
- Online knowledge entry capability
- NEW: FAQ Knowledge Base
- New FAQ-type knowledge base
- Batch import and batch delete functionality
- Online FAQ entry
- Online FAQ testing capability
- NEW: Conversation Strategy Configuration
- Support for configuring Agent models and normal mode models
- Configurable retrieval thresholds
- Online Prompt configuration
- Precise control over multi-turn conversation behavior and retrieval execution methods
- NEW: Web Search Integration
- Support for extensible web search engines
- Built-in DuckDuckGo search engine
- NEW: MCP Tool Integration
- Support for extending Agent capabilities through MCP
- Built-in uvx and npx MCP launcher tools
- Support for three transport methods: Stdio, HTTP Streamable, and SSE
🎨 UI/UX Improvements
- REDESIGNED: Conversation interface with Agent mode/normal mode switching
- Added Agent mode/normal mode toggle in conversation input box
- Support for enabling/disabling web search
- Support for selecting conversation models
- REDESIGNED: Login page UI adjustments
- ENHANCED: Session list with time-ordered grouping
- NEW: Quick Actions area for unified UI visual effects
- IMPROVED: Knowledge base list cards
- Display knowledge base type, knowledge count, build status
- Show advanced settings capabilities
- NEW: Breadcrumb navigation in FAQ and document list pages
- Quick navigation and knowledge base switching
- ENHANCED: Knowledge base settings in document list page
- REDESIGNED: Knowledge base settings page
- Separate configuration for knowledge base type, models, chunking methods, and advanced settings
- NEW: Global settings page for permissions
- Configure models, web search, MCP services, and Agent mode
- IMPROVED: Chunk details page display
- NEW: Knowledge classification and tagging support
- ENHANCED: Conversation flow page with tool call execution process display
⚡ Infrastructure Upgrades
- NEW: MQ-based async task management
- Introduced MQ for async task state maintenance
- Ensures task integrity even after service abnormal restart
- NEW: Automatic database migration
- Support for automatic database schema and data migration during version upgrades
- NEW: Fast development mode
- Added docker-compose.dev.yml file for quick development environment startup
- Improved development workflow efficiency
- IMPROVED: Log structure optimization
- NEW: Event subscription and publishing mechanism
- Support for event handling at various steps in user query processing flow
🐛 Bug Fixes
- Various bug fixes and stability improvements
📚 Documentation Updates
- Updated README files with v0.2.0 highlights (English, Chinese, Japanese)
- Added latest updates section in all README files
- Updated architecture diagrams and feature matrices
[0.1.6] - 2025-11-24
Document Parser Enhancements
- NEW: Added CSV, XLSX, XLS file parsing support (spreadsheet processing, tabular data extraction)
- NEW: Web page parser (dedicated class, optimized web image encoding, improved dependency management)
Document Processing Improvements
- NEW: MarkdownTableUtil (reduced whitespace, improved table readability/consistency)
- NEW: Document model class (structured models for type safety, optimized config/parsing logic)
- UPGRADED: Docx2Parser (enhanced timeout handling, better image processing, optimized OCR backend)
Internationalization
- NEW: English/Russian multi-language support (vue-i18n integration, translated UI/text/errors, multilingual docs for knowledge graph/MCP config)
Bug Fixes
- Fixed menu component integration issues
- Fixed Darwin (macOS) memory check regex error (resolved empty output)
- Fixed model availability check (unified logic, auto ":latest" tag, prevented duplicate pull calls)
- Fixed Docker Compose security vulnerability (addressed writable filesystem issue)
Refactoring & Optimization
- Refactored parser logging/API checks (simplified exception handling, better error reporting)
- Refactored chunk processing (removed redundant header handling, updated examples)
- Refactored module organization (docreader structure, proto/client imports, Docker config, absolute imports)
Documentation Updates
- Updated API Key acquisition docs (web registration + account page retrieval)
- Updated Docker Compose setup guide (comprehensive instructions, config adjustments)
- Updated multilingual docs (added knowledge graph/MCP config guides, directory structure)
- Removed deprecated hybrid search API docs
Code Cleanup
- Removed redundant Docker build parameters
- Updated .gitignore rules
- Optimized import statements/type hints
- Cleaned redundant logging/comments
CI/CD Improvements
- Added new CI/CD trigger branches
- Added build concurrency control
- Added disk space cleanup automation
[0.1.5] - 2025-10-20
Features & Enhancements
- Added multi-knowledgebases operation support and management (UI & backend logic)
- Enhanced tenant information management: New tenant page with user-friendly storage quota and usage rate display (see TenantInfo.vue)
- Initialization Wizard improvements: Stricter form validation, VLM/OpenAI compatible URL verification, and multimodal file upload preview & validation (see InitializationContent.vue)
- Backend: API Key automatic generation and update logic (see types.Tenant & tenantService.UpdateTenant)
UI / UX
- Restructured settings page and initialization page layouts; optimized button states, loading states, and prompt messages; improved upload/preview experience
- Enhanced menu component: Multi-knowledgebase switching and pre-upload validation logic (see menu.vue)
- Hidden/protected sensitive information (e.g., API Keys) and added copy interaction prompts (see TenantInfo.vue)
Security Fixes
- Fixed potential frontend XSS vulnerabilities; enhanced input validation and Content Security Policy
- Hidden API Keys in UI and improved copy behavior prompts to strengthen information leakage protection
Bug Fixes
- Resolved OCR/AVX support-related issues and image parsing concurrency errors
- Fixed frontend routing/login redirection issues and file download content errors
- Fixed docreader service health check and model prefetching issues
DevOps / Building
- Improved image building scripts: Enhanced platform/architecture detection (amd64 / arm64) and injected version information during build (see get_version.sh & build_images.sh)
- Refined Makefile and build process to facilitate CI injection of LDFLAGS (see Makefile)
- Improved usage and documentation for scripts and migration tools (migrate) (see migrate.sh)
Documentation
- Updated README and multilingual documentation (EN/CN/JA) along with release/CHANGELOG (see CHANGELOG.md & README.md for details)
- Added MCP server usage instructions and installation guide (see mcp-server/INSTALL.md)
Developer / Internal API Changes (For Reference)
- New/updated backend system information response structure: handler.GetSystemInfoResponse
- Tenant data structure and JSON storage fields: types.Tenant
0.1.4 - 2025-09-17
🚀 Major Features
- NEW: Multi-knowledgebases operation support
- Added comprehensive multi-knowledgebase management functionality
- Implemented multi-data source search engine configuration and optimization logic
- Enhanced knowledge base switching and management in UI
- NEW: Enhanced tenant information management
- Added dedicated tenant information page
- Improved user and tenant management capabilities
🎨 UI/UX Improvements
- REDESIGNED: Settings page with improved layout and functionality
- ENHANCED: Menu component with multi-knowledgebase support
- IMPROVED: Initialization configuration page structure
- OPTIMIZED: Login page and authentication flow
🔒 Security Fixes
- FIXED: XSS attack vulnerabilities in thinking component
- FIXED: Content Security Policy (CSP) errors
- ENHANCED: Frontend security measures and input sanitization
🐛 Bug Fixes
- FIXED: Login direct page navigation issues
- FIXED: App LLM model check logic
- FIXED: Version script functionality
- FIXED: File download content errors
- IMPROVED: Document content component display
🧹 Code Cleanup
- REMOVED: Test data functionality and related APIs
- SIMPLIFIED: Initialization configuration components
- CLEANED: Redundant UI components and unused code
0.1.3 - 2025-09-16
🔒 Security Features
- NEW: Added login authentication functionality to enhance system security
- Implemented user authentication and authorization mechanisms
- Added session management and access control
- Fixed XSS attack vulnerabilities in frontend components
📚 Documentation Updates
- Added security notices in all README files (English, Chinese, Japanese)
- Updated deployment recommendations emphasizing internal/private network deployment
- Enhanced security guidelines to prevent information leakage risks
- Fixed documentation spelling issues
🛡️ Security Improvements
- Hide API keys in UI for security purposes
- Enhanced input sanitization and XSS protection
- Added comprehensive security utilities
🐛 Bug Fixes
- Fixed OCR AVX support issues
- Improved frontend health check dependencies
- Enhanced Docker binary downloads for target architecture
- Fixed COS file service initialization parameters and URL processing logic
🚀 Features & Enhancements
- Improved application and docreader log output
- Enhanced frontend routing and authentication flow
- Added comprehensive user management system
- Improved initialization configuration handling
🛡️ Security Recommendations
- Deploy WeKnora services in internal/private network environments
- Avoid direct exposure to public internet
- Configure proper firewall rules and access controls
- Regular updates for security patches and improvements
0.1.2 - 2025-09-10
- Fixed health check implementation for docreader service
- Improved query handling for empty queries
- Enhanced knowledge base column value update methods
- Optimized logging throughout the application
- Added process parsing documentation for markdown files
- Fixed OCR model pre-fetching in Docker containers
- Resolved image parser concurrency errors
- Added support for modifying listening port configuration
0.1.0 - 2025-09-08
- Initial public release of WeKnora.
- Web UI for knowledge upload, chat, configuration, and settings.
- RAG pipeline with chunking, embedding, retrieval, reranking, and generation.
- Initialization wizard for configuring models (LLM, embedding, rerank, retriever).
- Support for local Ollama and remote API models.
- Vector backends: PostgreSQL (pgvector), Elasticsearch; GraphRAG support.
- End-to-end evaluation utilities and metrics.
- Docker Compose for quick startup and service orchestration.
- MCP server support for integrating with MCP-compatible clients.