Master your desktop experience with system monitoring, world clocks, AI agent, and productivity tools
- Nine main tabs: Home, World Clocks, Performance, Notes, Agent, Uptime, Clipboard, Authenticator, and Settings
- Hash-based URLs for bookmarking and browser back/forward β e.g.
#/agent/chat/{id},#/settings/agent,#/notes/note/{id} - Persistent tab memory with URL as the source of truth when a hash is present
- Native menu bar item drawn by a small Swift helper: CPU/RAM/disk/battery rings, upload/download speeds, a calendar-page date and live clocks
- Time converter popover on tray click β pick a date, time and zone and see it in all your clocks
- Real-time CPU usage with core count, speed, and temperature
- Memory monitoring with used/total RAM
- Storage tracking across all drives
- Network activity with upload/download speeds
- Battery status on laptops
- Configurable visibility per metric (Settings β System Stats)
- Live tray updates β rings colour amber/red as load rises; the network cell has a fixed width so the menu bar doesn't shift
- Home dashboard with system stat cards and Uptime Kuma summary widgets
- Dedicated Performance tab with live stat cards and historical charts
- Chart.js line charts for CPU, RAM, disk, network, and battery
- Time ranges: 1h, 6h, 24h, 7d, and 30d
- Metric toggles to show/hide series on the chart
- ~30 days of stored samples for trend analysis
- Agent-accessible history via
query_system_stats_historywhen DeskMaster Tools are enabled
- Uptime Kuma integration as a native Uptime tab
- Local-first monitor cache for fast loading and offline-friendly viewing
- Hourly background sync plus manual force refresh
- Optimistic create/edit/delete/pause/resume with queued background sync
- Automatic retry and rollback if a queued action fails twice
- SSL and domain expiry attention tracking alongside down monitor counts
- Tray status indicator β icons with counts for down monitors, SSL attention and domain attention (hidden when all is well)
- Settings-managed credentials (URL, username, password)
- Optional disable of the Uptime tab from Settings β Uptime Kuma
- Streaming chat with markdown rendering and tool-call status indicators
- Multiple LLM providers (configure any that you use):
- OpenAI
- Anthropic
- OpenRouter
- AWS Bedrock
- Local Server (Ollama / LM Studio compatible APIs)
- Per-chat provider and model selection
- Chat history with search, rename, delete, and deep-linked URLs (
#/agent/chat/{id}) - Edit & resend user messages to branch a conversation
- Copy and Save to Notes on assistant responses
- Optional capabilities (toggled per chat or as defaults in Settings):
- Knowledge Base β RAG over Notes and custom documents (SQLite embeddings)
- DeskMaster Tools β safe in-app tool registry (system stats, notes, uptime, backup, bcrypt, IP tools, translation, etc.)
- Composio Integrations β OAuth-connected external apps (GitHub, Gmail, Slack, etc.)
- Composio Tool Router meta-tools for discovering and executing integration actions without hardcoded per-app logic
- Multi-account support per Composio toolkit (e.g. two Gmail accounts) with account labels and disconnect
- Write confirmations for destructive or sensitive agent actions (e.g. note saves, backups)
- KB reindex and status display (document/chunk counts)
- Citation display when Knowledge Base context is used
| Area | Examples |
|---|---|
| System | Current stats, historical performance queries, app version |
| Notes | Search, read, create, save pages |
| Tools | Bcrypt, public IP, IP geolocation, translate, reformat text |
| Uptime | List monitors |
| Backup | Google Drive status, trigger backup |
| Knowledge | Search KB, list/create/update custom KB documents |
| Settings | Read settings summary |
Clipboard and Authenticator data are never exposed to the agent.
- OneNote-style canvas editor with movable/resizable text blocks
- Multi-select, drag, clone, cut/copy/paste, align, and clear-style actions
- Improved OneNote paste preserving blocks, positions, and formatting
- Markdown editor (BlockNote) with structured Markdown paste and AI toolbar actions
- Plain text editor (Monaco) with AI edit on selection
- Page tree: rename, archive, restore, delete, drag reorder, multi-selection
- Search across note content
- Deep-linked URLs per note (
#/notes/note/{id}) - Indexed for Agent Knowledge Base when that capability is enabled
- Multiple timezones with custom labels
- Interactive timeline β drag to adjust all clocks (15-minute steps)
- Manual time editing β click any clock to set custom time
- Flexible formats β 12/24 hour with optional date display
- Automatic DST handling
- Per-timezone tray visibility toggle
- Compact tray dates β with a date format, the date is shown once as a calendar icon and other clocks get a +1/β1 marker when they're on a different day
- Real-time synchronization across all clocks
Installable tools on the Home tab (add/remove and drag to reorder):
| Tool | Description |
|---|---|
| Bcrypt Generate | Create bcrypt hashes from text |
| Bcrypt Verify | Verify text against a bcrypt hash |
| Public IP | Show your public IP address |
| IP Location | City, country, ISP, coordinates (IPGeolocation.io API key in Settings) |
| Pinggy Tunnel | Secure tunnels to local ports |
| Text Reformat / Translate | AI reformat (multiple tones) or translate β uses your AI Agent default LLM |
| Password Generator | Length and character-set options |
| OneTimeSecret | Create anonymous one-time shareable secrets with TTL |
- Automatic tracking of clipboard changes in real time
- Search past entries
- Copy, view full content, delete, and clear all
- WebSocket live updates
- Source app tracking for each entry
- TOTP code generation with 30-second refresh
- QR /
otpauth://import and manual secret entry - Copy codes and usernames
- Trash with 30-day retention and restore
- Search and sort by name
- WebSocket updates without polling
- Touch ID / password for Clipboard, Authenticator, and Settings tabs
- 5-minute auth timeout for tab access; sensitive operations can re-prompt
- Export encryption (optional AES-256-GCM)
- Automatic decryption on import when encrypted
- API token for web/browser mode HTTP API
- Export all data β settings, authenticators, clipboard, performance history, notes, agent chats, etc.
- Import full restore from JSON (optional encryption key)
- Reset to factory defaults with confirmation
- Authentication required for export/import/reset
- Browser mode uses the desktop app API when web access is enabled
- Google Drive OAuth from Settings β Cloud Backup
- Scheduled backups (configurable interval, default every 4 hours)
- Manual βBackup nowβ
- Retention β keep last N backups (default 10)
- Status β last run time, success/error, connection state
Sidebar sections (each has its own URL under #/settings/...):
| Section | What you configure |
|---|---|
| System Stats | Which metrics appear in tray and dashboards |
| World Clocks | Date/time format |
| System | Auto-start, web access, show in Dock |
| Appearance | Dark / light / system theme |
| API Keys | IP Location API key (tools) |
| AI Agent | LLM providers, default capabilities, Composio API key & toolkits |
| Uptime Kuma | Server URL, credentials, enable/disable tab |
| Data Management | Export, import, reset |
| Cloud Backup | Google Drive OAuth, schedule, retention |
- Dark / light / system themes with CSS variables
- Responsive grids (1β4 columns depending on context)
- Custom scrollbars and smooth transitions
- Native macOS window and tray integration
- Subtle borders and theme-aware cards
- Browser UI when enabled in Settings β System
- Same hash URLs as the desktop app for tabs, settings, chats, and notes
- WebSocket + HTTP API for real-time stats, clipboard, authenticator, notes, agent, uptime, settings, and tools
- Localhost only by default with API token authentication
- Desktop app must be running β the browser connects to the Electron backend
- Read-only access to your Google Drive backup at deskmaster-web.pages.dev: authenticator codes, notes and clipboard history
- Decrypted in the browser with your Cloud Backup passphrase; nothing is sent to a server, and it locks after 3 minutes in the background
- Source lives in
web/
| Architecture | Download | Size |
|---|---|---|
| Apple Silicon (M1/M2/M3/M4) | DeskMaster-arm64.dmg | ~85 MB |
| Intel Mac | DeskMaster-x64.dmg | ~90 MB |
- Download the DMG for your Mac architecture
- Open the DMG and drag DeskMaster to Applications
- Launch from Applications or Spotlight
- Click the menu bar item for the time converter, or right-click β Show Monitor for the main window
- DeskMaster appears in the system tray (menu bar)
- Click it to open the time converter; use Open DeskMaster there for the main window
- Explore tabs from the top navigation bar
- Configure LLM providers in Settings β AI Agent to use the Agent and Text Reformat tools
- Click β native time converter popover: set a date, time and source zone; every clock shows the converted time
- Right-click β context menu (Show Monitor, auto-start, quit)
- Settings β System Stats / World Clocks β choose which rings, speeds and clocks appear
- Open the World Clocks tab
- Click + to add a timezone and optional label
- Drag the timeline or click a clock to adjust time
- Open the Agent tab
- Add API keys in Settings β AI Agent for at least one provider
- Toggle capabilities (Knowledge Base, DeskMaster Tools, Integrations) as needed
- Start a chat; use the sidebar to switch chats or search history
- For Composio: add toolkit slugs in Settings, connect accounts, then enable Integrations on the chat
- Open Notes β tree on the left, editor on the right
- Create pages (canvas, markdown, or text)
- Use archive mode for soft-deleted pages
Protected tabs β authenticate with Touch ID or password when prompted.
Settings β Data Management β export (optional encryption), import, or reset. Authentication required.
System, dark, or light in Settings β Appearance. Changes apply instantly app-wide.
Settings β System β launch DeskMaster at login.
- Settings β System β enable Web Access
- Open the shown URL (e.g.
http://localhost:65530) in a browser - Use the same
#/...URLs as in the desktop app - Disable anytime; requires API token on each request
- macOS 10.12 (Sierra) or later
- Apple Silicon or Intel
- ~50 MB disk space (plus data, notes, and optional local models)
- Internet optional (timezones, IP tools, cloud LLMs, Composio, Uptime Kuma, Drive backup)
- β macOS (Apple Silicon & Intel)
- Bugs: GitHub Issues
- Feature requests: GitHub Discussions
- Development: Development Guide
Made with β€οΈ by Dhanu K
β Star this repo if you find it useful!