Your AI Workspace Awaits
A sophisticated Claude Code web interface and workspace application that provides a rich, desktop-like experience for interacting with Claude AI.
AI Shuffle is a full-stack application that bridges Claude's capabilities with a desktop-style workspace interface. It features a unique card-based UI system called "The Deck" that allows you to organize multiple tools and conversations in a flexible, intuitive layout.
- Multi-tab Chat System - Independent chat sessions with WebSocket connections
- Profiles & Projects - Context-aware configurations for different AI workflows
- Execution Modes - Local execution and worktree-based execution for safer AI operations
- Token Tracking - Real-time token counting and cost analysis
- Session Management - Save, fork, export, tag, and search chat sessions
A novel window-management system with draggable, resizable cards:
- Card Types: Chat, Terminal, Settings, Profile, Project, Subagent, Image Studio, Model Studio, Audio Studio, File Browser, Plugins
- Layout Modes: Freeflow, Side-by-side, Tile, Stack, Focus
- Mobile Support: Swipe-based navigation on small screens
- Subagents - Task-oriented AI agents that can be spawned for specific work
- Agent Engine - Built on Claude Agent SDK for autonomous tool use
- Tool Integration - System commands, file operations, Git commands, and more
- Plugin System - Extensible architecture for custom tools and integrations
- File Browser - Navigate and edit project files
- Git Integration - Repository info, branches, worktrees, diffs
- GitHub Integration - Pull requests, issues, authentication
- Project Context - Automatic workspace/repository binding
- Image Generation & Editing - Image studio with multiple providers
- Video Generation - Text-to-video capabilities
- 3D Model Generation - Meshy integration for 3D model creation
- Audio Processing - Text-to-speech, speech-to-text transcription
- Usage Analytics - Token counts, cost breakdown by profile/date
- Session Analytics - Session duration, token usage trends
- Performance Monitoring - WebSocket connection status, API health
- Svelte 5 + SvelteKit
- Tailwind CSS for styling
- Vite for fast builds
- xterm.js for terminal emulation
- TypeScript for type safety
- FastAPI (Python async web framework)
- WebSockets for real-time communication
- SQLite database
- Claude Agent SDK for AI integration
- Python 3.11+
- Node.js 20+
- Claude API access (OAuth or API key)
- Clone the repository:
git clone https://github.com/yourusername/ai-shuffle.git
cd ai-shuffle- Install backend dependencies:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt- Install frontend dependencies:
cd frontend
npm install- Configure environment:
cp .env.example .env
# Edit .env with your settings- Run the application:
# Terminal 1: Backend
python -m uvicorn app.main:app --reload --port 8000
# Terminal 2: Frontend (development)
cd frontend
npm run devdocker-compose up -dThe application will be available at http://localhost:8000
Key environment variables:
| Variable | Description | Default |
|---|---|---|
ANTHROPIC_API_KEY |
Claude API key (optional with OAuth) | - |
DATABASE_URL |
SQLite database path | sqlite:///./data/ai_shuffle.db |
SECRET_KEY |
Session encryption key | Generated |
ENABLE_2FA |
Enable two-factor authentication | false |
See .env.example for all available options.
ai-shuffle/
├── app/ # Backend (FastAPI)
│ ├── api/ # API routes
│ ├── core/ # Business logic
│ └── database.py # Database models
├── frontend/ # Frontend (SvelteKit)
│ ├── src/
│ │ ├── lib/ # Components & utilities
│ │ └── routes/ # Pages
│ └── static/ # Static assets
├── agents/ # Subagent definitions
├── plugins/ # Plugin system
└── docs/ # Documentation
- Click the Chat card from the landing page
- Select a profile and project (optional)
- Start typing your message to Claude
- Click the floating menu button to open the card deck
- Select any card type to add it to your workspace
- Drag cards to reposition them
- Use the navigation arrows to switch between cards
- Open the Files card
- Select a project from the dropdown
- Browse, upload, or manage project files
Cmd/Ctrl + K- Spotlight searchCmd/Ctrl + N- New chatCmd/Ctrl + /- Keyboard shortcuts help
Contributions are welcome! Please read our contributing guidelines before submitting PRs.
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Claude by Anthropic
- UI inspired by modern desktop workspace applications
