Update README.md

This commit is contained in:
FURK4NGG
2026-05-03 15:03:37 +03:00
committed by GitHub
parent 0bf855f51b
commit 8f8256a85b
+80 -85
View File
@@ -254,108 +254,103 @@ bind = $mainMod, Q, exec, $capture-ai text
## 🔎 ALL APP FEATURES ## 🔎 ALL APP FEATURES
<details> <details>
<summary>For Nerds</summary> <summary>For Nerds</summary>
1. For Nerds
1. Chat management 1. Chat management
Create new chats (chat_1.json, chat_2.json, …) Create, switch, delete, rename, pin/unpin chats. Chats are sorted with pinned chats first, then by last modified time.
Switch between chats
Delete chat (with confirmation)
Rename chat (popover)
Pin/unpin chats (📌)
Sorting: pinned first, then most recently modified
2. Persistent settings (config.json) 2. Local chat storage
Remember last opened chat (last_chat) All chats are stored locally on the machine under the app cache directory.
Dark/light theme (dark_mode)
Pinned chats (pinned_chats)
Model list (ai_models)
Per-chat model mapping (chat_models)
Store OpenRouter key (open_router_key)
Mic mode online/offline (is_mic_online)
Online STT model (stt_model_online)
Offline whisper.cpp paths (whisper_cpp_bin, whisper_cpp_model)
3. Sidebar UI 3. Section-based chat loading
Collapse/expand sidebar (☰) Chats use lazy loading. Only the latest 10 messages are loaded first, and older messages load while scrolling up.
Toggle Chats list
Toggle AI Models list
4. Model management (per chat) 4. Persistent configuration
Separate active model per chat Uses one config.json file for settings such as theme, models, pinned chats, last chat, STT, RAG, colors, local providers, and language.
Selecting a model assigns it to the current chat
LRU behavior: recently chosen model moves to top
Delete models (cannot delete the last remaining model)
If a model is deleted, affected chats fall back to default (self-heal)
“AI Models +” to add a model (dialog + OpenRouter models link)
5. Message selection mode 5. Per-chat model management
Click to select one or multiple messages Each chat can have its own active AI model. Recently selected models move to the top of the list.
Selection counter bar
Clear selection (✕)
Selected bubbles get an outline
6. Reference trees (reference chain expansion) 6. Online and local model support
Expands used_refs recursively (references of references) Supports OpenRouter models and local API-based text models such as Ollama.
Ensures context (including images/refs) isnt lost
Stores:
used_refs (indices sent to AI)
refs_groups (UI reference preview groups)
7. Reference trees (reference chain expansion) 7. Local provider settings
Expands used_refs recursively (references of references) Local providers can store base URL, startup command, stop command, system prompt, and model parameters.
Ensures context (including images/refs) isnt lost
Stores:
used_refs (indices sent to AI)
refs_groups (UI reference preview groups)
8. Regenerate (♻) 8. Sidebar UI
Appears only when exactly one bubble is selected Collapsible sidebar with separate Chats and AI Models sections.
If user bubble: re-asks the same prompt
If bot bubble: finds preceding user prompt + rewrites a similar answer
Regenerated prompts are marked (regen) with a distinct style
Keeps reference trees during regeneration
9. Copy (📋) 9. Context mode switch
Appears only on the single selected bubble Each chat can switch between Direct mode and RAG mode.
If message contains copy ... copy, copies only the inner block
Otherwise copies full message
10. Code block detection 10. Per-chat conversational RAG
Messages wrapped by copy markers render as a code-style block Supports short-term memory, summary memory, simple retrieval, and code-aware context.
Code block includes a “Copy” button overlay
11. Image sending / preview 11. Reference tree support
Supports a pending image preview before sending Selected references can expand recursively so previous context is not lost.
Saves image path into chat history
Shows a small image preview in message bubbles
Clears preview after sending
12. Typing indicator 12. Message selection mode
Animated “Thinking…” while AI is running Users can select one or multiple messages, clear selection, copy, regenerate, or use them as references.
Removed when response arrives
13. Scroll behavior 13. Regenerate
Floating scroll-to-bottom button (↓) appears when not at bottom Regenerates from selected user or assistant messages while keeping reference context.
Clicking scrolls to bottom and re-enables auto-scroll
Button visibility updates based on scroll position
(You also tuned behavior to scroll only on regenerate)
14. Input shortcuts 14. Copyable code blocks
Enter to send Copy-marked content is rendered as a code-style block with a copy button.
Shift+Enter for newline
Added: Ctrl+C / Ctrl+V / Ctrl+X / Ctrl+A
15. Voice-to-text input 15. Image generation and image handling
🎤 to start recording, ⏹ to stop Supports image generation, image previews, cached generated images, and image attachments.
Uses pw-record if available, otherwise arecord (Linux)
After stop, transcribes (offline/online) and appends text into input
16. Offline STT (whisper.cpp) 16. Document support
Uses whisper-cli + ggml-tiny.bin for low CPU transcription Supports PDF, DOCX, XLSX, TXT, and MD file creation/output. Generated files are shown with downloadable buttons.
Reads .txt output (stdout fallback)
17. Online STT (OpenRouter) 17. PDF handling
If is_mic_online: true, transcribes via OpenRouter If a PDF contains text, it is sent as text content. If it has little/no text, the first pages are converted to PNG images and sent as image_url.
Sends base64 WAV as input_audio
Model selected via stt_model_online 18. Document editing behavior
AI can read, analyze, summarize, rewrite, and generate edited document outputs when permission is enabled.
19. File create protocol
DOCX, XLSX, PDF, TXT, and MD outputs can be generated from AI responses and returned as downloadable files.
20. XLSX support
Can create new XLSX tables and filter existing XLSX files with supported operations.
21. Drag & drop attachments
Files and images can be added via drag & drop or file picker.
22. Editable file permission
Attached files can be toggled editable. The AI only modifies files when permission is enabled.
23. Voice-to-text input
Supports microphone recording and transcription with online or local STT.
24. Offline STT
Uses whisper.cpp with configured binary and model paths.
25. Online STT
Uses OpenRouter audio-capable models and sends WAV audio as input_audio.
26. Token usage display
Shows input, output, and total token usage for each response when enabled.
27. Token price display
Can estimate message cost using a configurable token price value.
28. Theme system
Supports dark/light theme and custom UI colors.
29. Language system
Supports external language files such as Turkish and English, with cached language loading.
30. Prompt chooser
Prompt behavior blocks can be enabled/disabled, such as copyable, apply, PDF visual edit, file creation, structured output, and code mode.
31. Terminal control
The project also supports terminal usage, excluding STT and some GUI-only features.
32. Linux compatibility
Designed for Linux devices, including Arch and Debian/Ubuntu-based systems.
</details> </details>
<details> <details>