Environment Configuration
Tabby uses environment variables for core configuration across three components:Frontend Application
Configure the Electron app infrontend/.env.local:
Next.js Backend
Configure the API backend innextjs-backend/.env.local:
Memory Backend
Configure the Python backend inbackend/.env:
Application Branding
Customize the application name and icon:Branding changes require restarting the frontend and Next.js backend.
Keyboard Shortcuts
Tabby provides global keyboard shortcuts for quick access to features.Global Shortcuts
Copilot Mode (Coding Interview)
Action Menu
Window Controls
Keyboard shortcuts are currently hardcoded. Future versions may support customization.
System Tray
Tabby runs in the system tray for quick access. Right-click the tray icon for:- Show Actions Menu - Open AI action menu
- Brain Panel - View memory dashboard
- Settings - Application preferences (future)
- Quit - Exit application
Text Output Modes
Tabby supports two modes for AI-generated text output:Paste Mode (Default)
Standard clipboard paste. AI responses are copied to clipboard and pasted normally.- Speed: Instant
- Detection: Standard paste operation
- Use Case: General use, quick insertions
Typewriter Mode
AI types character-by-character, simulating human typing.- Speed: Character-by-character
- Detection: Undetectable as AI-generated
- Use Case: Situations requiring human-like input
- Shortcut:
Ctrl+Shift+Xto stop
Service Ports
Default ports for Tabby services:Port conflicts can be resolved by modifying the respective service configurations.
Email Configuration (Optional)
Tabby supports email notifications via Resend:nextjs-backend/.env.local
- Get Resend API Key
- Configure
- Visit Resend
- Create an account or sign in
- Navigate to API Keys
- Create a new API key
- Add a verified domain (or use Resend’s test domain)
Windows MCP Integration (Optional)
Tabby supports Windows desktop automation via the Windows MCP server:- Start MCP Server
- Features
http://localhost:8001Windows MCP requires Python and
uvx. Install via: pip install uvxBuilt-in Actions
Tabby includes pre-configured AI actions accessible viaCtrl+\:
Text Transformation
- Fix Grammar - Correct grammatical errors
- Shorten - Make text more concise
- Expand - Add more detail and context
Tone Adjustment
- Professional - Formal business tone
- Casual - Friendly, relaxed tone
- Friendly - Warm and approachable
Content Generation
- Email Writer - Compose professional emails
- Custom Prompts - Create your own actions
Custom actions and prompts will be configurable in future releases.
Copilot Tabs
When using coding interview mode (Alt+X), switch between tabs:
AI Suggestions
Tabby provides two modes for AI suggestions:Hotkey Mode (Default)
Manual trigger viaCtrl+Space:
- No automatic monitoring
- Privacy-friendly
- On-demand completions
Auto Mode (Clipboard Watcher)
Automatic suggestions based on clipboard:- Monitors clipboard for context
- Automatic completions
- More proactive assistance
Production Deployment
Frontend (Windows Executable)
frontend/dist/Tabby-Setup.exe
Next.js Backend (Vercel)
Automatic deployment frommain branch:
- Platform: Vercel
- URL: tabby-api-psi.vercel.app
- Trigger: Push to
main
Memory Backend (Azure)
Automatic deployment via GitHub Actions:- Platform: Azure Container Apps
- URL: tabby-backend.azurecontainerapps.io
- Trigger: Push to
backend/directory
Production deployments require setting up GitHub secrets for credentials and API keys.
Troubleshooting
Keyboard shortcuts not working
Keyboard shortcuts not working
- Check if another app is using the same shortcuts
- Restart the Electron application
- Verify the app is running (check system tray)
- Run as administrator if on Windows
Services won't start
Services won't start
- Verify Docker Desktop is running (for Supabase)
- Check for port conflicts (3000, 3001, 8000)
- Review environment variables in
.env.localfiles - Check console logs for specific error messages
AI responses not working
AI responses not working
- Verify API keys are set in
nextjs-backend/.env.local - Check Next.js backend is running on port 3001
- Review browser console for network errors
- Ensure AI provider has credits/quota available
Memory not persisting
Memory not persisting
- Verify memory backend is running on port 8000
- Check
MEMORY_API_URLin frontend and backend configs - Ensure Supabase is running (
npx supabase status) - Review memory backend logs for errors
Best Practices
Development Workflow
- Start Docker Desktop first
- Run
npx supabase startand note credentials - Configure all
.env.localfiles with Supabase keys - Start services in order: Memory backend → Next.js backend → Frontend
- Use system tray for quick access to features
Security
- Keep
.envfiles out of version control - Use
.env.exampleas templates - Rotate API keys regularly
- Use local Supabase for development
- Secure production deployments with proper authentication
Performance
- Use Groq for fast inference when speed is critical
- Reserve powerful models for complex tasks
- Monitor memory usage in Brain Panel
- Clean up old memories periodically
- Optimize vector store indexes for your data size
Next Steps
AI Providers
Configure OpenAI, Groq, and other AI providers
Memory Backend
Set up persistent memory with Mem0