Skip to content

nbonamy/witsy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Witsy

Generative AI desktop application:

  • OpenAI, Ollama, Anthropic, MistralAI, Google, Groq and Cerebras models supported
  • Chat completion and image generation with Vision models support
  • [BETA] Scratchpad to interactively create the best content with any model!
  • Prompt anywhere allows to generate content directly in any application
  • AI commands runnable on highlighted text in almost any application
  • Experts prompts to specialize your bot on a specific topic
  • LLM plugins to augment LLM: execute python code, search the Internet...
  • Read aloud of assistant messages (requires OpenAI API key)
  • Read aloud of any text in other applications (requires OpenAI API key)
  • [BETA] Chat with your local files and documents (RAG)
  • [BETA] Transcription/Dictation (Speech-to-Text)
  • Local history of conversations (with automatic titles)
  • Formatting and copy to clipboard of generated code
  • Image copy and download

  

Prompt Anywhere

Generate content in any application:

  • From any editable content in any application
  • Hit the Prompt anywhere shortcut (Shift+Control+Space / ^⇧Space)
  • Enter your prompt in the window that pops up
  • Watch Witsy enter the text directly in your application!

On Mac, you can define an expert that will automatically be triggered depending on the foreground application. For instance, if you have an expert used to generate linux commands, you can have it selected if you trigger Prompt Anywhere from the Terminal application!

AI Commands

AI commands are quick helpers accessible from a shortcut that leverage LLM to boost your productivity:

  • Select any text in any application
  • Hit the AI command shorcut (Alt+Control+Space / ⌃⌥Space)
  • Select one of the commands and let LLM do their magic!

You can also create custom commands with the prompt of your liking!

     

Commands inspired by https://the.fibery.io/@public/Public_Roadmap/Roadmap_Item/AI-Assistant-via-ChatGPT-API-170.

Experts

From https://github.com/f/awesome-chatgpt-prompts.

[BETA] Scratchpad

https://www.youtube.com/watch?v=czcSbG2H-wg&ab_channel=NicolasBonamy

[BETA] Chat with your documents (RAG)

You can connect each chat with a document repository: Witsy will first search for relevant documents in your local files and provide this info to the LLM. To do so:

  • Click on the database icon on the left of the prompt
  • Click Manage and then create a document repository
  • OpenAI Embedding require on API key, Ollama requires an embedding model
  • Add documents by clicking the + button on the right hand side of the window
  • Once your document repository is created, click on the database icon once more and select the document repository you want to use. The icon should turn blue

[BETA] Transcription / Dictation (Speech-to-Text)

You can transcribe audio recorded on the microphone to text. Transcription can be done using OpenAI Whisper online model (requires API key) or using local Whisper model (requires download of large files). Once the text is transcribed you can:

  • Copy it to your clipboard
  • Insert it in the application that was running before you activated the dictation

Setup

You can download a binary from the Releases page or build yourself:

npm install
npm start

Prerequisites

To use OpenAI, Anthropic, Google or Mistral AI models, you need to enter your API key:

To use Ollama models, you need to install Ollama and download some models.

To use text-to-speech, you need an OpenAI API key.

To use Internet search you need a Tavily API key.

  

TODO

  • i18n
  • Proper database (SQLite3) storage (??)

DONE

  • Conversation mode
  • Google function calling
  • Anthropic function calling
  • Scratchpad
  • Dictation: OpenAI Whisper + Whisper WebGPU
  • Auto-select expert based on foremost app (Mac only)
  • Cerebras support
  • Local files RAG
  • Groq model update (8-Sep-2024)
  • PDF Export of chats
  • Prompts renamed to Experts. Now editable.
  • Read aloud
  • Import/Export commands
  • Anthropic Sonnet 3.5
  • Ollama base URL as settings
  • OpenAI base URL as settings
  • DALL-E as tool
  • Google Gemini API
  • Prompt anywhere
  • Cancel commands
  • GPT-4o support
  • Different default engine/model for commands
  • Text attachments (TXT, PDF, DOCX, PPTX, XLSX)
  • MistralAI function calling
  • Auto-update
  • History date sections
  • Multiple selection delete
  • Search
  • Groq API
  • Custom prompts
  • Sandbox & contextIsolation
  • Application Menu
  • Prompt history navigation
  • Ollama model pull
  • macOS notarization
  • Fix when long text is highlighted
  • Shortcuts for AI commands
  • Shift to switch AI command behavior
  • User feedback when running a tool
  • Download internet content plugin
  • Tavily Internet search plugin
  • Python code execution plugin
  • LLM Tools supprt (OpenAI only)
  • Mistral AI API integration
  • Latex rendering
  • Anthropic API integration
  • Image generation as b64_json
  • Text-to-speech
  • Log file (electron-log)
  • Conversation language settings
  • Paste image in prompt
  • Run commands with default models
  • Models refresh
  • Edit commands
  • Customized commands
  • Conversation menu (info, save...)
  • Conversation depth setting
  • Save attachment on disk
  • Keep running in system tray
  • Nicer icon (still temporary)
  • Rename conversation
  • Copy/edit messages
  • New chat window for AI command
  • AI Commands with shortcut
  • Auto-switch to vision model
  • Run at login
  • Shortcut editor
  • Chat font size settings
  • Image attachment for vision
  • Stop response streaming
  • Save/Restore window position
  • Ollama support
  • View image full screen
  • Status/Tray bar icon + global shortcut to invoke
  • Chat themes
  • Default instructions in settings
  • Save DALL-E images locally (and delete properly)
  • OpenAI links in settings
  • Copy code button
  • Chat list ordering
  • OpenAI model choice
  • CSS variables