Configuration - twamp22/BumbaClaude GitHub Wiki
Configuration
Desktop App Settings
The desktop app stores configuration in %APPDATA%/BumbaClaude/config.json. You can edit this file directly or through the app's settings UI.
config.json structure
{
"window": {
"width": 1400,
"height": 900,
"x": 100,
"y": 100
},
"tray": {
"closeToTray": true,
"minToTrayOnStart": false
},
"updates": {
"autoCheck": true,
"checkInterval": 3600000
},
"hotkey": {
"globalShowHide": "CommandOrControl+Shift+B"
},
"notifications": {
"taskComplete": true,
"agentError": true,
"waitingForInput": true,
"governanceLimit": true
},
"database": {
"path": "%APPDATA%/BumbaClaude/dashboard.db"
}
}
Settings explained
window
width,height-- Window size in pixelsx,y-- Window position (auto-saved after moving/resizing)
tray
closeToTray-- When true, clicking X minimizes to tray (doesn't quit). Default: trueminToTrayOnStart-- When true, app starts minimized to tray. Default: false
updates
autoCheck-- Check for updates on launch. Default: truecheckInterval-- Check for updates every N milliseconds. Default: 3600000 (1 hour)
hotkey
globalShowHide-- Global keyboard shortcut to show/hide the window. Default:CommandOrControl+Shift+B- Other hotkey options (not yet supported):
open-dev-tools,reload-window
notifications
taskComplete-- Notify when an agent completes a task. Default: trueagentError-- Notify when an agent encounters an error. Default: truewaitingForInput-- Notify when an agent is waiting for human input. Default: truegovernanceLimit-- Notify when an agent hits a governance limit (max turns). Default: true
database
path-- Full path to the SQLite database file. Don't change unless you know what you're doing.
Governance Rules
Governance rules are set per team at creation and apply to all agents in that team.
Rule types
can_create_files (boolean)
- Default:
true - When false, agents cannot create new files (they can edit existing ones)
- Useful for read-only exploration of a codebase
can_run_commands (boolean)
- Default:
true - When false, agents cannot execute shell commands
- Agents can still read files and invoke tools
can_push_git (boolean)
- Default:
true - When false, agents cannot commit or push to git
- Useful for non-destructive analysis tasks
max_turns (integer, 5-50)
- Default: 20
- After N agent responses, the agent must wait for human approval before continuing
- Prevents runaway agent loops
- Override per-agent by messaging the agent to continue
Environment Variables
Configuration via environment variables (used during development or when running from source):
# Database
DATABASE_PATH=./data/dashboard.db
# WebSocket
WS_PORT=3001
# Node environment
NODE_ENV=development # or production
# Next.js
NEXTAUTH_SECRET= # Optional, for future auth
# Claude Code
CLAUDE_HOME=/home/user/.claude # Override default ~/.claude/
For the desktop app, set these in the .env.local file in the BumbaClaude install directory:
%APPDATA%/BumbaClaude/.env.local
Accessing Configuration from Code
From Next.js (backend)
// Get config value
import db from '@/lib/db';
const teams = db.query('SELECT * FROM teams').all();
// Environment variables
const dbPath = process.env.DATABASE_PATH || './data/dashboard.db';
From React (frontend)
Configuration is passed to the frontend via API routes. Don't hardcode config in components.
// Fetch from API
const response = await fetch('/api/config');
const config = await response.json();
From Electron main process
// Read config.json
import { app } from 'electron';
import path from 'path';
import fs from 'fs';
const configPath = path.join(app.getPath('userData'), 'config.json');
const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
Permissions and File Access
BumbaClaude requires permission to:
- Read/write to %APPDATA% -- Configuration and database storage
- Read ~/.claude/ -- Team and task state
- Execute tmux -- Spawn and manage agent sessions
- Read/write working directories -- Only for Claude Code to use (BumbaClaude reads, doesn't write)
The app never:
- Writes to ~/.claude/ (read-only)
- Modifies Claude Code files
- Accesses files outside the specified working directory
Troubleshooting Configuration
Config file corrupted
- Delete
%APPDATA%/BumbaClaude/config.json - Restart the app to regenerate with defaults
Settings not saving
- Check if config.json is readable/writable: Right-click > Properties > Security
- Ensure the AppData folder has write permissions
- Run the app as Administrator to reset permissions
Global hotkey not working
- Hotkey may conflict with another app
- Try a different key combination (e.g.,
CommandOrControl+Shift+C) - Edit config.json directly to change it
Tray icon not showing
- Reload the app (Ctrl+Shift+R)
- Check Windows Settings > System > Taskbar > Taskbar corner overflow
- The icon may be hidden; click the ^ to reveal it
Notifications not appearing
- Check Windows Settings > System > Notifications
- BumbaClaude should have "Show notifications" enabled
- Some versions of Windows filter notifications per app