{"id":30957330,"url":"https://github.com/amanbig/chatme","last_synced_at":"2026-04-08T16:02:22.115Z","repository":{"id":313174846,"uuid":"1048600261","full_name":"Amanbig/ChatMe","owner":"Amanbig","description":"ChatMe combines agent-driven AI, cross-platform responsiveness, and voice interaction into a single desktop/web app, empowering developers and users to interact with AI like never before.","archived":false,"fork":false,"pushed_at":"2026-03-08T11:16:11.000Z","size":3968,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-30T02:44:32.847Z","etag":null,"topics":["agentic-ai","anthropic","deepseek","gemini-api","hacktoberfest","kimi","lmstudio","mcp","mistral-api","ollama","openai-api","openrouter","react","rust","stt","tauri","tts","typescript","vite"],"latest_commit_sha":null,"homepage":"https://github.com/Amanbig/ChatMe/releases","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Amanbig.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-01T17:52:24.000Z","updated_at":"2026-03-08T11:05:13.000Z","dependencies_parsed_at":"2025-09-04T11:30:29.539Z","dependency_job_id":"497442a5-14ad-4790-87b3-b8ab55075159","html_url":"https://github.com/Amanbig/ChatMe","commit_stats":null,"previous_names":["amanbig/chatme"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/Amanbig/ChatMe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Amanbig%2FChatMe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Amanbig%2FChatMe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Amanbig%2FChatMe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Amanbig%2FChatMe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Amanbig","download_url":"https://codeload.github.com/Amanbig/ChatMe/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Amanbig%2FChatMe/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31562697,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-ai","anthropic","deepseek","gemini-api","hacktoberfest","kimi","lmstudio","mcp","mistral-api","ollama","openai-api","openrouter","react","rust","stt","tauri","tts","typescript","vite"],"created_at":"2025-09-11T14:00:32.789Z","updated_at":"2026-04-08T16:02:22.110Z","avatar_url":"https://github.com/Amanbig.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ChatMe 🤖\n\nChatMe combines agent-driven AI, cross-platform responsiveness, and voice interaction into a single desktop/web app, empowering developers and users to interact with AI like never before. ChatMe supports multiple AI providers with a beautiful, responsive interface and advanced features including voice interaction and powerful agent mode with full system access.\n\n## 🆕 **What's New in v0.5.3**\n- **⚡ Hybrid Architecture**: Revolutionary change - Rust backend handles all HTTP requests, completely bypassing CORS\n- **🌐 13 Provider Support**: Added 5+ new providers (Kimi, OpenRouter, Together AI, Groq, Perplexity) - now supporting 13 total!\n- **📡 Native Streaming**: Provider-specific implementations for OpenAI, Anthropic, and Google with optimal performance\n- **🎨 Enhanced UX**: Improved delete button flow, welcome screen auto-send, and smoother interactions\n- **🔧 Bug Fixes**: Fixed tool parameter mismatch and various UX improvements\n- **🚀 Better Reliability**: Improved error handling, streaming compatibility, and overall stability\n- **🌐 MCP support**: Added MCP support for seamless integration with other tools\n\n### **Previous Release - v0.4.0**\n- **🚀 Enhanced Agent Mode**: Execute terminal commands, launch apps, and manage processes\n- **📊 Command Execution Cards**: Interactive, expandable results with timing and copy buttons\n- **⌨️ Keyboard Shortcuts**: Ctrl+K to focus, Ctrl+R to repeat last command\n- **🎨 Improved UI**: Better dark mode support, polished settings page\n- **🔒 Permission System**: Safety checks for dangerous operations\n- **💬 Natural AI Flow**: AI explains, executes, and continues in one response\n\n### 🚀 **Key Highlights**\n- **🤖 Powerful Agent Mode**: Full system access with terminal commands and app control\n- **🎤 Voice Interaction**: Speech-to-text input and text-to-speech output with customizable voices\n- **🎯 Multi-Provider Support**: OpenAI, Google Gemini, Claude, Ollama, and custom APIs\n- **📱 Mobile-Optimized**: Responsive design that works beautifully on all devices\n- **🎨 Modern UI**: Custom title bar, dark/light themes, and smooth animations\n- **⚡ Real-time Features**: Live streaming responses and interactive command execution\n\n### 📱 **Cross-Platform Features**\n- **Touch-Friendly Controls**: Large tap targets for accessibility\n- **Adaptive Layout**: Auto-resizing sidebar and components for different screen sizes\n- **Image Upload**: File selection with drag-and-drop and preview functionality\n- **Mobile-Optimized**: UI components that work well on tablets and small screens\n- **Gesture Support**: Smooth scrolling and intuitive interactions\n\n## 🌟 Platform Support\n\n- **🖥️ Desktop**: Windows, macOS, Linux\n- **🌐 Web**: Progressive Web App capabilities\n- **📱 Mobile**: UI is responsive and mobile-friendly (native mobile apps coming soon)\n\n## 📸 Screenshots\n\n\u003cdiv align=\"center\"\u003e\n  \u003ctable\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003cimg src=\"images/light.png\" alt=\"ChatMe Light Theme\" width=\"450\"/\u003e\n        \u003cbr/\u003e\n        \u003csub\u003e\u003cb\u003eLight Theme\u003c/b\u003e\u003c/sub\u003e\n      \u003c/td\u003e\n      \u003ctd align=\"center\"\u003e\n        \u003cimg src=\"images/dark.png\" alt=\"ChatMe Dark Theme\" width=\"450\"/\u003e\n        \u003cbr/\u003e\n        \u003csub\u003e\u003cb\u003eDark Theme\u003c/b\u003e\u003c/sub\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/table\u003e\n\u003c/div\u003e\n\n---\n\n\n## ✨ Features\n\n### 🎯 **Multi-Provider AI Support (13 Providers)**\n- **OpenAI**: GPT-4, GPT-4 Turbo, GPT-3.5 Turbo and many more\n- **Anthropic Claude**: Claude 3/3.5 Opus, Sonnet, Haiku (native streaming)\n- **Google Gemini**: Gemini Pro, Gemini 1.5 Flash/Pro and many more (native streaming)\n- **Mistral AI**: Mistral Large, Mixtral 8x7B, and more\n- **DeepSeek**: DeepSeek Chat and Coder models\n- **LMStudio**: Local LLM inference server\n- **Ollama**: Local models (Llama 2, CodeLlama, Mistral, etc.)\n- **Kimi**: Moonshot AI models\n- **OpenRouter**: Unified API for multiple providers\n- **Together AI**: Open-source models at scale\n- **Groq**: Ultra-fast LLM inference\n- **Perplexity**: Search-enhanced AI responses\n- **Custom APIs**: Any OpenAI-compatible endpoint\n\n### 🤖 **Enhanced Agent Mode (NEW!)**\n- **Full System Access**: Execute terminal commands, launch applications, and manage files\n- **Natural Conversation Flow**: AI explains, executes, and continues conversation in a single response\n- **Interactive Command Cards**: Expandable command execution results with timing and copy buttons\n- **Terminal Command Execution**: Run npm, git, python, and any shell commands\n- **Application Management**: Launch and manage system applications\n- **Process Control**: List and terminate running processes\n- **File Operations**: Copy, move, delete, rename files and folders\n- **Permission System**: Safety checks for dangerous operations\n- **Smart Context Awareness**: AI understands your working directory and project context\n\n### 🎤 **Speech Features**\n- **Speech-to-Text**: Click the microphone button to dictate messages using voice input\n- **Text-to-Speech**: AI responses can be read aloud with natural-sounding voices\n- **Auto-Speak Mode**: Automatically read AI responses when they arrive\n- **Voice Customization**: Choose from multiple system voices with adjustable rate, pitch, and volume\n- **Real-time Transcription**: See your speech being converted to text in real-time\n- **Browser Integration**: Uses Web Speech API for cross-platform compatibility\n\n### 🎨 **Modern Interface**\n- **Custom Title Bar**: Integrated window controls with drag functionality (desktop)\n- **Mobile-First Design**: Touch-optimized interface for mobile devices\n- **Responsive Layout**: Auto-adapting sidebar and layout for all screen sizes\n- **Dark/Light Theme**: System-aware theme switching\n- **Agent Toggle**: Quick agent mode toggle with visual indicator in the title bar\n- **Smooth Animations**: Polished user experience with transitions\n\n### 📱 **Mobile Features**\n- **Touch-Optimized Controls**: Minimum 44px touch targets for accessibility\n- **Mobile Sidebar**: Auto-collapsing navigation to save screen space\n- **Image Upload**: Camera and gallery integration for image uploads\n- **Gesture Support**: Smooth scrolling and touch interactions\n- **Mobile Keyboard**: Optimized input handling for mobile keyboards\n- **Responsive Images**: Properly scaled image previews and displays\n\n### 💬 **Advanced Chat Features**\n- **Real-time Streaming**: Live message streaming for supported providers\n- **Image Analysis**: Upload and analyze images with AI vision models\n- **AI Thinking Display**: Collapsible sections showing AI reasoning process\n- **Message Management**: Copy, export, and share conversations\n- **Chat History**: Persistent chat storage with SQLite\n- **Markdown Support**: Rich text rendering with syntax highlighting\n- **Custom Components**: Enhanced rendering for file listings and command executions\n- **Scroll Management**: Intelligent auto-scrolling and manual scroll control\n- **Keyboard Shortcuts**: Ctrl+K (focus input), Ctrl+R (repeat last command), Enter (send)\n\n### ⚙️ **Configuration \u0026 Settings**\n- **Provider Management**: Easy setup and switching between AI providers\n- **API Testing**: Built-in connection testing with CORS-aware error handling\n- **Model Selection**: Support for different models per provider\n- **Parameter Tuning**: Temperature, max tokens, and other settings\n- **Speech Settings**: Configure voice input/output preferences and voice selection\n- **Agent Configuration**: Set working directories and enable/disable agent mode\n- **Default Configurations**: Set preferred providers for new chats\n\n## 🎙️ Speech Features Guide\n\n### **Voice Input (Speech-to-Text)**\n1. **Click the microphone button** in the input box\n2. **Grant permission** when prompted by your browser\n3. **Start speaking** - see real-time transcription\n4. **Click again to stop** recording\n5. **Edit if needed** and send your message\n\n### **AI Voice Output (Text-to-Speech)**\n1. **Click the speaker icon** next to any AI message\n2. **Listen to the response** being read aloud\n3. **Stop playback** by clicking the stop button\n4. **Enable auto-speak** in settings for automatic reading\n\n### **Speech Settings Configuration**\n- **Speech Recognition**: Toggle voice input on/off\n- **Auto-Speak Responses**: Automatically read AI responses\n- **Voice Selection**: Choose from available system voices\n- **Speech Rate**: Adjust reading speed (0.5x to 2x)\n- **Speech Pitch**: Control voice pitch (0 to 2)\n- **Volume Control**: Set playback volume (0% to 100%)\n\n## 🤖 Agent Mode Guide\n\n### **Enabling Agent Mode**\n1. **Toggle the agent switch** in the settings or title bar\n2. **Set working directory** (optional) for file operations\n3. **Ask natural questions** and the AI will execute commands\n4. **Watch commands execute** in real-time with results\n\n### **Agent Capabilities**\n- **Terminal Commands**: \"Run npm install\" → Executes the command\n- **Application Launch**: \"Open Chrome browser\" → Launches Chrome\n- **File Operations**: \"Copy this file to backup folder\" → Performs file operation\n- **Process Management**: \"Show running processes\" → Lists all processes\n- **Git Operations**: \"Check git status\" → Runs git commands\n- **Build \u0026 Deploy**: \"Build the project\" → Executes build scripts\n- **System Info**: \"Check Node version\" → Runs system commands\n\n### **Command Execution Display**\n- **Expandable Cards**: Click to view command output\n- **Execution Time**: See how long commands took\n- **Copy Button**: Copy commands with one click\n- **Status Indicators**: Success/error/running states\n- **Working Directory**: Shows where commands executed\n\n### **Keyboard Shortcuts**\n- **Ctrl+K / Cmd+K**: Focus the input box from anywhere\n- **Ctrl+R / Cmd+R**: Repeat the last command\n- **Enter**: Send message\n- **Shift+Enter**: New line in message\n\n### **Example Agent Mode Interactions**\n\n**User**: \"Check if npm is installed and show me the version\"\n**AI**: \"I'll check if npm is installed and show you the version.\n[Executes: npm --version]\n✅ npm version 10.2.5 is installed. This is a recent version compatible with most modern Node.js projects.\"\n\n**User**: \"Run the development server\"\n**AI**: \"I'll start the development server for you.\n[Executes: npm run dev]\nThe server is now running on http://localhost:1420. You can open this in your browser to see your application.\"\n\n**User**: \"Show me all TypeScript files in the src folder\"\n**AI**: \"I'll search for all TypeScript files in the src directory.\n[Executes: search for *.ts and *.tsx files]\nFound 42 TypeScript files in your src folder. The main components are in src/components/ and pages are in src/pages/.\"\n\n**User**: \"Open Chrome and go to GitHub\"\n**AI**: \"I'll launch Chrome and navigate to GitHub for you.\n[Executes: launch Chrome with https://github.com]\nChrome has been opened with GitHub loaded. You can now browse your repositories.\"\n\n## 🚀 Getting Started\n\n### 📦 Downloads\n\n#### Desktop Applications\n- **Windows**: Download `.exe` installer from [Releases](https://github.com/Amanbig/ChatMe/releases)\n- **macOS**: Download `.dmg` file (Intel and Apple Silicon supported)\n- **Linux**: Download `.deb` package or `.AppImage`\n\n#### Mobile Support\n- **Responsive Web UI**: The application works well on mobile browsers\n- **Native Mobile Apps**: Coming soon - currently in development\n\n### Prerequisites\n\n- **Node.js** (v18 or higher)\n- **Rust** (latest stable)\n- **pnpm/npm/yarn** (package manager)\n\n### Installation\n\n1. **Clone the repository**\n   ```bash\n   git clone https://github.com/Amanbig/ChatMe.git\n   cd ChatMe\n   ```\n\n2. **Install dependencies**\n   ```bash\n   npm install\n   ```\n\n3. **Start development server**\n   ```bash\n   npm run tauri dev\n   ```\n\n4. **Build for production**\n   ```bash\n   npm run tauri build\n   ```\n\n### 🌐 Testing on Mobile Devices\n\nWhile native mobile apps are in development, you can test the responsive UI:\n\n1. **Browser dev tools**: Use mobile device simulation\n2. **Local network**: Access the dev server from mobile browsers\n3. **Responsive testing**: Resize desktop window to test different screen sizes\n\n## 🔧 Configuration\n\n### Setting up AI Providers\n\n1. **Launch ChatMe** and navigate to Settings\n2. **Select a Provider** from the available cards\n3. **Configure the API**:\n   - **API Key**: Your provider's API key\n   - **Base URL**: Custom endpoint (optional for most providers)\n   - **Model**: Choose from available models\n   - **Parameters**: Adjust temperature, max tokens, etc.\n4. **Test Connection** to verify setup\n5. **Set as Default** (optional)\n\n### Provider-Specific Setup\n\n#### OpenAI\n- **URL**: `https://api.openai.com/v1/chat/completions`\n- **Models**: `gpt-4`, `gpt-4-turbo`, `gpt-3.5-turbo`\n\n#### Google Gemini\n- **OpenAI-Compatible**: `https://generativelanguage.googleapis.com/v1beta/openai/chat/completions`\n- **Original API**: `https://generativelanguage.googleapis.com/v1beta`\n- **Models**: `gemini-pro`, `gemini-1.5-flash`, `gemini-1.5-pro`\n\n#### Mistral AI (Custom)\n- **URL**: `https://api.mistral.ai/v1/chat/completions`\n- **Models**: `mistral-large-latest`, `mixtral-8x7b-instruct`\n\n#### Ollama (Local)\n- **URL**: `http://localhost:11434`\n- **Models**: Any locally installed Ollama model\n\n## 🛠️ Tech Stack\n\n### Frontend\n- **Tauri**: Cross-platform desktop framework\n- **React 18**: Modern React with hooks and context\n- **TypeScript**: Type-safe development\n- **Vite**: Lightning-fast build tool\n- **shadcn/ui**: Modern component library\n- **Tailwind CSS**: Utility-first styling\n- **React Router**: Client-side routing\n- **Sonner**: Toast notifications\n- **React Markdown**: Rich text rendering with custom components\n\n### Backend (Hybrid Architecture)\n- **Rust**: High-performance backend handling all HTTP requests\n- **SQLite**: Local database storage with migrations\n- **Reqwest**: HTTP client for LLM API calls (bypasses CORS)\n- **Server-Sent Events**: Native streaming for all providers\n- **Tauri Commands**: File system operations and agent capabilities\n- **Serde**: JSON serialization\n- **Tokio**: Async runtime\n- **Frontend LLM Client**: TypeScript tool calling logic using official SDKs patterns\n\n### Features \u0026 Architecture\n- **Hybrid Architecture**: Rust handles HTTP (no CORS issues), frontend handles tool calling\n- **Real-time Events**: Tauri event system for streaming\n- **Speech Integration**: Web Speech API for voice input/output\n- **Agent System**: Intelligent file operations with LLM-driven commands\n- **Provider-Specific Streaming**: Native implementations for OpenAI, Anthropic, and Google\n- **Error Handling**: Comprehensive error management with user-friendly messages\n- **Theme System**: Dark/light mode switching with system preference detection\n- **Custom Rendering**: Enhanced markdown with interactive file components\n- **Tool Calling**: Multi-turn conversations with automatic tool execution\n\n## 📁 Project Structure\n\n```\nChatMe/\n├── src/                    # Frontend React code\n│   ├── components/         # Reusable UI components\n│   │   ├── ui/            # shadcn/ui components\n│   │   └── app/           # Application-specific components\n│   ├── pages/             # Page components\n│   ├── lib/               # Utilities and API client\n│   └── assets/            # Static assets\n├── src-tauri/             # Rust backend\n│   ├── src/               # Rust source code\n│   │   ├── commands.rs    # Tauri commands\n│   │   ├── database.rs    # Database operations\n│   │   └── models.rs      # Data models\n│   └── Cargo.toml         # Rust dependencies\n├── public/                # Public assets\n└── package.json           # Node.js dependencies\n```\n\n## 🚀 Building \u0026 Distribution\n\n### Development\n```bash\nnpm run dev          # Start dev server\nnpm run build        # Build frontend\ncargo tauri dev      # Run Tauri development\n```\n\n### Production\n```bash\nnpm run build               # Build frontend\ncargo tauri build          # Build desktop app\ncargo tauri build --debug  # Build with debug info\n```\n\n### Version Management\n\nChatMe uses semantic versioning (SemVer) across all components. Version updates are automated:\n\n```bash\n# Update version manually\nnpm run update-version 0.4.0\n\n# Or use semantic version bumps\nnpm run version:patch    # 0.3.0 → 0.3.1\nnpm run version:minor    # 0.3.0 → 0.4.0  \nnpm run version:major    # 0.3.0 → 1.0.0\n```\n\n**Version files updated automatically:**\n- `package.json` and `package-lock.json`\n- `src-tauri/Cargo.toml` and `Cargo.lock`\n- `src-tauri/tauri.conf.json`\n\n**Release Process:**\n1. Update version using scripts above\n2. Commit changes: `git commit -m \"bump version to x.x.x\"`\n3. Push to main: `git push`\n4. GitHub Actions will automatically build and create release\n\n### Platform Support\n- **Windows**: Native .exe and .msi installers\n- **macOS**: .app bundle and .dmg installer (Intel and Apple Silicon)\n- **Linux**: .deb, .rpm, and AppImage formats\n- **Cross-platform**: Responsive UI that works on various screen sizes\n\n## 🤝 Contributing\n\nWe welcome contributions! Please follow these steps:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit changes**: `git commit -m 'Add amazing feature'`\n4. **Push to branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\n### Development Guidelines\n- Use TypeScript for type safety\n- Follow the existing code style\n- Add tests for new features\n- Update documentation as needed\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- **Tauri Team**: For the amazing desktop framework\n- **shadcn**: For the beautiful UI components\n- **Vercel**: For the inspiration and design patterns\n- **OpenAI, Anthropic, Google**: For providing excellent AI APIs\n\n## 📞 Support\n\n- **Issues**: [GitHub Issues](https://github.com/Amanbig/ChatMe/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/Amanbig/ChatMe/discussions)\n- **Email**: [amanpreetsinghjhiwant7@gmail.com](mailto:amanpreetsinghjhiwant7@gmail.com)\n\n---\n\nMade with ❤️ by [Amanbig](https://github.com/Amanbig)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famanbig%2Fchatme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famanbig%2Fchatme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famanbig%2Fchatme/lists"}