An Obsidian plugin that helps you consciously switch between different work rolesโlike developer, writer, researcher, or QAโwith intentional transitions and session tracking.
Why I built this: I wear many hats throughout the day (developer, writer, researcher). This plugin helps me be intentional about which role I'm in and switch between them mindfully.
- Custom Work Roles: Define roles with unique colors and letter-based icons (A-Z)
- Intentional Transitions: Configurable transition delays with educational messages about context switching
- Session Locks: Minimum session duration prevents task-jumping and encourages deep focus
- Role Awareness: Visual cues (status bar, workspace borders, colored UI) remind you which role you're in
- Session Tracking: Track time spent in each role with real-time timers and historical data
- Analytics Dashboard: View daily, weekly, and monthly time statistics
- Side Panel View: Quick access to all roles with real-time session tracking
- Role Dashboard: Comprehensive analytics and session management
- Smart Settings: Preset buttons + direct input fields for easy configuration
- Mobile Optimized: Fully responsive design for mobile devices
- Visual Feedback: Click animations and color-coded role indicators
- Periodic Reminders: Optional notifications to keep you aware of your current role
- Real-time Updates: Live countdown timers for session locks and durations
- Data Preservation: Historical data retained even when roles are deleted (appears as "Deleted Role")
- Transition Messages: Educational tips about context switching during role transitions
- Auto-save: Data saved periodically and when app is backgrounded (mobile-friendly)
When you're wearing multiple hats on a project:
๐ง Developer Role: Writing code, implementing features
- Switch to Developer mode when coding
- Track time spent on implementation vs other activities
- Use role notes to capture technical decisions and code ideas
๐ QA Role: Testing, bug hunting, quality assurance
- Switch to QA mode when testing your own code
- Approach your work with a different mindset - looking for issues rather than building
- Track testing time separately from development time
- Document bugs and edge cases in role-specific notes
๐ Planning Role: Architecture, project planning, requirements
- Switch to Planning mode for high-level thinking
- Step back from code details to see the bigger picture
- Track time spent on strategic thinking vs tactical work
For writers, bloggers, and content creators:
โ๏ธ Writer Role: Creating first drafts, brainstorming content
- Focus purely on getting ideas down without judgment
- Track productive writing time vs editing time
- Capture creative ideas in role-specific notes
๐ Editor Role: Reviewing, refining, and polishing content
- Switch mindset from creative to critical
- Approach your own work objectively for better editing
- Track revision time to understand your editing patterns
๐ Reviewer Role: Final review, fact-checking, publishing prep
- Final quality check with fresh perspective
- Ensure consistency and accuracy before publication
- Document review checklists and publishing notes
For researchers, analysts, and knowledge workers:
๐ Researcher Role: Gathering information, exploring topics
- Deep dive into sources and materials
- Track research time vs analysis time
- Collect and organize findings in role notes
๐ง Analyst Role: Processing information, drawing conclusions
- Switch from gathering to synthesizing mode
- Focus on patterns and insights rather than collection
- Document analytical frameworks and methodologies
๐ Evaluator Role: Reviewing findings, quality control
- Step back to assess research quality and completeness
- Challenge your own conclusions with fresh eyes
- Track validation and review activities separately
- Install: Enable "RoleSwitch" in Settings โ Community plugins
- Setup: Go to Settings โ RoleSwitch
- Create your work roles (e.g., "Developer", "Writer", "Researcher")
- Choose letter icons (A-Z), colors, and descriptions
- Configure transition duration and minimum session duration
- Access: Open the RoleSwitch side panel from the left sidebar
- Start: Click on any role to begin a session
- Switch: When locked, wait for the minimum duration or use the transition modal
- Track: View your analytics in the Dashboard button
- Transition duration: Time to wait before switching roles (5-120 seconds)
- Presets: 5s, 10s, 30s or enter custom value
- Minimum session duration: Minimum time before allowing role switches (5-60 minutes)
- Presets: 5m, 15m, 30m or enter custom value
- Show status bar: Display current role in Obsidian status bar
- Show workspace border: Visual border in role's color
- Border opacity: Adjust border visibility (0.1-1.0)
- Presets: 0.3, 0.5, 0.8 or enter custom value
- Show periodic reminder: Enable role reminders
- Reminder interval: How often to show reminders (1-60 minutes)
- Presets: 5m, 15m, 30m or enter custom value
- Features - Detailed feature overview
- Installation - Installation and setup guide
- Usage - Interface guide and usage patterns
- Troubleshooting - Common issues and solutions
- Development - Contributing and technical details
- Header: Shows plugin logo and title
- Roles Grid: Click any role to start/switch sessions
- Current Session: Real-time duration and lock status
- Quick Actions: Dashboard and End Session buttons
When switching roles, you'll see:
- Countdown timer
- Educational message about context switching
- Cancel button if needed
- Analytics: Today, week, and month statistics
- Current Session: Live tracking with lock countdown
- Averages: Daily averages for week and month
- Version: 0.1.1
- Minimum Obsidian: 1.6.0
- Platforms: Windows, macOS, Linux, iOS, Android
- License: MIT
- Letter-based icons (A-Z) for simpler role identification
- Click highlight effects for better visual feedback
- Improved icon selection with color toggle
- End Session button always visible (disabled when locked)
- Logo integration in side panel and dashboard
- Preset buttons + direct input for all settings
- Unit labels for better clarity (seconds, minutes, opacity)
- Transition messages with context switching education
- Periodic reminders with customizable intervals
- Real-time lock countdowns in multiple locations
- Auto-save on app backgrounding (mobile-friendly)
- Historical data preserved when roles deleted
- Error handling for save operations
- Fixed mobile data persistence issues
The following features are currently disabled in this version but remain in the codebase for future use:
- API & Synchronization Settings: Combined API server and device synchronization functionality (will be enabled in a future version)
Be intentional about your roles. Switch with purpose.

