All notable changes to AI Secretary System will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Chat Sharing Visual Indicators: Colored dots (collapsed sidebar) and icons (expanded) to distinguish shared chats — blue for "shared with me", green for "I shared this". Badge counter on Share button matching RAG collections style. Batch
share_countinlist_sessionsAPI via single GROUP BY query (#268) - Branch Tree Access Control: Shared users see only the branch that was active at share time. Branch switch endpoint validates visibility. Per-share
branch_message_idsnapshot (#266, #269) - FAQ Sections: Split 11-question FAQ into 3 themed sections (Product, Installation, Pricing & Support) with category menu and back-navigation
- Usage Tracking & Limits: Track TTS/STT/LLM usage with configurable limits
- New models:
UsageLog,UsageLimitsin database - API endpoints:
/admin/usage/logs,/admin/usage/stats,/admin/usage/limits,/admin/usage/summary - Admin UI: UsageView.vue with dashboard, usage bars, limit configuration
- Daily/monthly limits with hard/soft enforcement and warning thresholds
- New models:
- Responsive Admin Panel: Mobile-first layout for all screen sizes — collapsible sidebar, responsive headers, adaptive tables
- News System: Regex-based
## NEWSparsing from GitHub PRs/commits for Telegram broadcasts (migrated from LLM generation) - Web Role: New
webrole — same backend access asuserbut frontend hides infrastructure views (Dashboard, Services, vLLM, XTTS, Models, Finetune) - Widget Runtime Check: Embeddable widget auto-hides when instance is disabled via
GET /widget/status - Widget Session Persistence: Replain-style chat history across page navigations — cookie + localStorage dual storage (30-day TTL), automatic history preloading via
GET /widget/chat/session/{id}, open/closed state preserved in sessionStorage,source="widget"security check on public endpoints - Logo Sidebar Toggle: Click logo to collapse/expand admin sidebar
- Branch-Aware Message Deletion: Deleting a message now only removes that message and its descendants (via
parent_idtree traversal), not sibling branches. Previously used timestamp-based deletion which destroyed parallel branches (#276) - Branch Tree Live Refresh: Branch tree panel now updates immediately after sending/receiving messages, editing, regenerating, or deleting — no page refresh needed (#276, #278)
- Context Files Auto-Save: Uploading, deleting, or editing context files now auto-saves to the backend immediately. Previously required manual "Save" click, and any refetch (e.g. after sending a message) would revert unsaved changes (#277)
- Wiki Button: Handler now matches both
"📚 Wiki"and"📚 Wiki проекта"button text - Multi-Instance Bots: Fixed crashes and empty responses in multi-instance Telegram bot mode
- Bridge Auth Header: Skip empty Authorization header for bridge provider
- Cloud Mode: Bridge auto-start, public widget endpoints for cloud-only deployments
- News Config: Default
NEWS_GITHUB_REPOSnow only watchesShaerWare/AI_Secretary_System(removed bridge repo)
- GSM Telephony real service (SIM7600E-H serial connection)
- amoCRM Integration
- Internet Restrictions Bypass (whitelist proxies)
- Backup & Restore functionality
- Kanban + Gantt: Built-in CRM-lite board with drag & drop, Gantt chart for task planning — as alternative to amoCRM (#270)
- Google Docs/Sheets in chat context: OAuth2 integration to attach Google documents as chat context files (#271)
- Vision & OCR: Photo recognition in chat — OCR for text extraction, multimodal LLM for image analysis (#272)
- Notes system: Markdown notes with tags, search, pinning, and chat message linking (#273)
- AI → Google Docs/Sheets: Generate reports and fill spreadsheets from AI responses (#274)
1.0.0 - 2026-02-05
- Multi-Voice TTS: XTTS v2 (voice cloning), OpenVoice v2, Piper (CPU)
- Speech-to-Text: Vosk (realtime streaming) + Whisper (batch)
- Multi-Persona LLM: Secretary personas (Anna, Marina) with customizable prompts
- Local LLM: vLLM with Qwen2.5-7B/Llama-3.1-8B/DeepSeek-7B + LoRA fine-tuning
- Cloud LLM Providers: Gemini, Kimi, OpenAI, Claude, DeepSeek, OpenRouter with DB storage
- Claude Bridge: CLI-OpenAI bridge for using Claude Code as LLM backend
- FAQ System: Instant responses for common questions
- 15 tabs with full functionality
- JWT authentication with role-based access
- i18n support (Russian/English)
- 4 themes (Light, Dark, Night-Eyes, System)
- Real-time GPU monitoring with SSE
- Command palette (Ctrl+K)
- Audit logging with export
- Multi-Instance Telegram Bots: Independent settings per bot
- Multi-Instance Website Widgets: Embeddable chat widgets
- Telegram Payments: YooKassa, YooMoney OAuth, Telegram Stars
- Sales Bot Features: Quiz funnels, segmentation, pricing calculator
- VLESS Proxy: Gemini routing through xray-core with auto-failover
- Docker Compose deployment (GPU + CPU modes)
- SQLite + Redis database layer
- ~160 API endpoints across 15 modular routers
- OpenAI-compatible API for OpenWebUI integration
- Rate limiting with slowapi (configurable per endpoint)
- CORS whitelist via environment variable
- Security headers middleware (X-Content-Type-Options, X-Frame-Options, etc.)
- JWT authentication with configurable secrets
- CI/CD with GitHub Actions (lint, type check, security scan)
- Ruff linter + formatter configuration
- MyPy type checking (gradual adoption)
- ESLint + Prettier for Vue/TypeScript
- Pre-commit hooks
- Dependabot for dependency updates
- Migrated from JSON files to SQLite database
- Restructured API into modular routers (
app/routers/) - Renamed
.env.dockerto.env.docker.example
- Added rate limiting to auth (10/min), chat (30/min), TTS (20/min) endpoints
- Added security headers (X-Content-Type-Options, X-Frame-Options, X-XSS-Protection)
- Configurable CORS origins for production deployment
0.9.0 - 2026-01-28
- CI/CD Pipeline with GitHub Actions
- Code quality tools (ruff, mypy, eslint, prettier)
- Pre-commit hooks
- Telegram action buttons with LLM switching
- Consolidated improvement plan documentation
- Removed legacy JSON synchronization code
- Database-first architecture for all data
0.8.0 - 2026-01-27
- Docker Compose deployment
- Multi-instance Telegram bots and widgets
- Cloud LLM providers system
- Voice Mode and Voice Input in chat
- DeepSeek LLM support
- LLM Models UI
- Full migration to SQLite + Redis
0.7.0 - 2026-01-26
- SQLite + Redis database layer
- Vosk STT service for realtime recognition
- Chat TTS playback
- Audit logging system
- Repository pattern for data access