* feat(websearch): implement search window functionality and enhance search service * feat(DefaultProvider): integrate @mozilla/readability for improved content parsing * Add LocalSearchProvider for web page scraping AI: Change `provider` from private to protected in BaseWebSearchProvider and implement LocalSearchProvider for web searching with browser-based content extraction. * Add web search provider management features Implement addWebSearchProvider function to prevent duplicates, automatically load default providers on initialization, fix LocalSearchProvider implementation, and update local provider identification logic. * Improve web search with specialized search engine parsers Add dedicated parsers for Google, Bing, and Baidu search results, replacing the generic URL extraction approach. Enhance page loading with proper wait mechanisms and window cleanup. Remove DuckDuckGo provider as it's no longer supported. * Simplify DefaultProvider to unimplemented placeholder * Remove default search engine from initial state * Improve web search providers config and display Add configuration for local search providers, remove empty apiKey fields, and enhance the UI by sorting providers alphabetically and showing whether they require an API key. * Add stderr logging for MCP servers * Make search window initially hidden
🍒 Cherry Studio
Cherry Studio is a desktop client that supports for multiple LLM providers, available on Windows, Mac and Linux.
👏 Join Telegram Group|Discord | QQ Group(472019156)
❤️ Like Cherry Studio? Give it a star 🌟 or Sponsor to support the development!
📖 Guide
🌠 Screenshot
🌟 Key Features
- Diverse LLM Provider Support:
- ☁️ Major LLM Cloud Services: OpenAI, Gemini, Anthropic, and more
- 🔗 AI Web Service Integration: Claude, Peplexity, Poe, and others
- 💻 Local Model Support with Ollama, LM Studio
- AI Assistants & Conversations:
- 📚 300+ Pre-configured AI Assistants
- 🤖 Custom Assistant Creation
- 💬 Multi-model Simultaneous Conversations
- Document & Data Processing:
- 📄 Support for Text, Images, Office, PDF, and more
- ☁️ WebDAV File Management and Backup
- 📊 Mermaid Chart Visualization
- 💻 Code Syntax Highlighting
- Practical Tools Integration:
- 🔍 Global Search Functionality
- 📝 Topic Management System
- 🔤 AI-powered Translation
- 🎯 Drag-and-drop Sorting
- 🔌 Mini Program Support
- ⚙️ MCP(Model Context Protocol) Server
- Enhanced User Experience:
- 🖥️ Cross-platform Support for Windows, Mac, and Linux
- 📦 Ready to Use, No Environment Setup Required
- 🎨 Light/Dark Themes and Transparent Window
- 📝 Complete Markdown Rendering
- 🤲 Easy Content Sharing
📝 TODO
- Quick popup (read clipboard, quick question, explain, translate, summarize)
- Comparison of multi-model answers
- Support login using SSO provided by service providers
- All models support networking
- Launch of the first official version
- Bug fixes and improvements (In progress...)
- Plugin functionality (JavaScript)
- Browser extension (highlight text to translate, summarize, add to knowledge base)
- iOS & Android client
- AI notes
- Voice input and output (AI call)
- Data backup supports custom backup content
🌈 Theme
- Theme Gallery: https://cherrycss.com
- Aero Theme: https://github.com/hakadao/CherryStudio-Aero
- PaperMaterial Theme: https://github.com/rainoffallingstar/CherryStudio-PaperMaterial
Welcome PR for more themes
🖥️ Develop
Refer to the development documentation
🤝 Contributing
We welcome contributions to Cherry Studio! Here are some ways you can contribute:
- Contribute Code: Develop new features or optimize existing code.
- Fix Bugs: Submit fixes for any bugs you find.
- Maintain Issues: Help manage GitHub issues.
- Product Design: Participate in design discussions.
- Write Documentation: Improve user manuals and guides.
- Community Engagement: Join discussions and help users.
- Promote Usage: Spread the word about Cherry Studio.
Getting Started
- Fork the Repository: Fork and clone it to your local machine.
- Create a Branch: For your changes.
- Submit Changes: Commit and push your changes.
- Open a Pull Request: Describe your changes and reasons.
For more detailed guidelines, please refer to our Contributing Guide.
Thank you for your support and contributions!
Related Projects
-
one-api:LLM API management and distribution system, supporting mainstream models like OpenAI, Azure, and Anthropic. Features unified API interface, suitable for key management and secondary distribution.
-
ublacklist:Blocks specific sites from appearing in Google search results