Repository navigation
Releases
v3.0.0
Workit v3.0.0 — Native Go binary
Workit is now a single native Windows executable. No Node.js required.
Install
- Download
workit.exefrom the assets below - Add it to your PATH
- Run
workit init(or keep using your existing config)
Existing profiles at %APPDATA%\workit\config.json are fully compatible — npm users can switch without re-running setup.
What's new
- Native
workit.exe— no Node.js, no npm install - Same features as v2.4.2 — profiles, presets, launch picker,
--skip-pick,--dry-run, v1 config migration - Detached process launch — apps survive after the CLI exits (Brave, Cursor, Teams, Discord, LoL via Riot Client, etc.)
- Interactive wizard rebuilt with huh — init, add/edit/rename/delete profiles, ← Back navigation
Breaking changes
- npm package deprecated —
dookie-workitis no longer the primary install path; use GitHub Releases instead - TypeScript source removed — development is now Go-only (
go 1.22+)
Technical
- CLI: cobra
- Config: viper (JSON in
%APPDATA%\workit\) - Windows spawn:
cmd /c startwithCREATE_NEW_PROCESS_GROUP
Requirements
- Windows 10/11
v2.4.0
v2.4.0 — General-purpose booter
Added
Manual pinned apps on every preset — add Spotify, Notion, or any app by path without needing a folder
Apps folder on work, school, games, minimal, and blank — pick from .json, .exe, or .lnk files at launch
← Back on more wizard steps (checkboxes, paths, URLs)
Fixed
Blank preset no longer saves an empty profile — wizard walks you through adding apps
False red ✗ on launch — Discord, LoL, etc. show green ✓ when they actually start
Work/school profiles blocked — empty apps folders no longer prevent launch; picker only runs when items exist
Copy reframed from game-only to general “apps” language
v2.4.1 — Pinned-only profiles launch again
Fixed
workit luke and other minimal/work/school/blank profiles no longer fail with “no pickable apps” when they only have pinned apps (e.g. browser)
Replaced --no-pick with --skip-pick (cac was forcing pick mode on every launch)
Changed
Wizard no longer shows a redundant “Enter a value” step before profile name, app path, and folder path
v2.4.2 — Safer reset
Changed
workit reset and init Full re-setup now ask twice before wiping your config
v2.3.1
Workit v2.3.1
Bug-fix release for game launches and browser windows.
Fixes
League of Legends no longer fails with spawn EPERM
LoL now opens through the Riot Client (same as Valorant), not by calling LeagueClient.exe directly
Workit also finds Riot Client at the usual install path: C:\Riot Games\Riot Client
More reliable app launching on Windows
Apps now launch the same way as double-clicking a shortcut (cmd start), which avoids permission errors on protected installs (Riot, Program Files, etc.)
Browser opens your profile URLs in a separate window
Spotify, Facebook, TFT Academy, and other profile URLs should open in a new window with just those tabs, not mixed into your existing browser window
Update
npm install -g dookie-workit
v2.3.0
Workit v2.3.0
One command to open your session, work, school, or games, without remembering extra flags.
What's new
Smarter launch
Run workit games and your always-on apps (Discord, browser, etc.) open right away
If you set up a games folder or catalog, you'll get a checklist to pick what else to open, no --pick needed
Use workit games --no-pick when you only want the pinned apps today
Easier setup
New School preset: browser, comms, and Google Classroom link
Setup wizard speaks plain language: work, school, games, not game-specific jargon
Add another profile anytime with workit init → Add a new profile
Handy commands
workit list → see your profiles
workit default school → choose which profile runs when you type plain workit
Install / update
npm install -g dookie-workit
v2.2.0
Changelog
2.2.0
Added
- Game catalog (LoL, Valorant, Genshin, ZZZ, Honkai, CS2, Elden Ring) with launcher-aware paths
- Game preset wizard: pick shared apps (Discord, Steam, browser) and select catalog games
- Optional custom games folder per profile (
.jsonor.exefiles) --pickflag: interactive checkbox to launch one or many catalog/custom gamesworkit rename <old> <new>and rename option inworkit init- Change preset/category when editing a profile (e.g. game → work) via
workit init workit delete <profile>— remove one profile without wiping everything- ← Back option on wizard steps to go one step earlier
- Profiles store
presetId(work, game, minimal, blank) for display and reconfigure
Changed
- Game preset stores shared apps (Discord, browser) as pinned; catalog/custom games use
--pick - Game preset no longer hardcodes all apps — built from your selections
2.1.0
Added
- League of Legends in the Game preset
- Browser URLs open in a new window (
--new-window) instead of appending tabs to an existing window
Removed
- Pomodoro timer (
workit pomocommand and all pomo config)
2.0.0
Breaking
- Profile-based config (v2) replaces fixed
browser/ide/commsslots - v1 configs auto-migrate to a
defaultprofile on first run
Added
- Named profiles:
workit,workit game, etc. - Presets in init wizard: Work, Game, Minimal, Blank
--dry-runflag to preview launches without spawningworkit resetcommand- Typed errors (
NotConfiguredError,ProfileNotFoundError,ValidationError) - Protocol allowlist for
ms-teams:,steam:,steam:// - Verified spawn (detects immediate launch failures)
- Vitest unit tests and CI workflow on push/PR
Changed
- All profile apps launch concurrently
- Empty app paths are skipped instead of erroring
- Init wizard supports edit-existing-profile without full wipe
workit configuses unsafe read so broken URLs can still be inspected
Removed
- Role-based wizard step (DevOps/Data/SWE)
- Hard requirement for Brave, Cursor, Teams
1.0.0
- Initial release: work routine launcher with pomodoro timer
v2.1.0
Changelog
2.1.0
Added
- League of Legends in the Game preset
- Browser URLs open in a new window (
--new-window) instead of appending tabs to an existing window
Removed
- Pomodoro timer (
workit pomocommand and all pomo config)
2.0.0
Breaking
- Profile-based config (v2) replaces fixed
browser/ide/commsslots - v1 configs auto-migrate to a
defaultprofile on first run
Added
- Named profiles:
workit,workit game, etc. - Presets in init wizard: Work, Game, Minimal, Blank
--dry-runflag to preview launches without spawningworkit resetcommand- Typed errors (
NotConfiguredError,ProfileNotFoundError,ValidationError) - Protocol allowlist for
ms-teams:,steam:,steam:// - Verified spawn (detects immediate launch failures)
- Vitest unit tests and CI workflow on push/PR
Changed
- All profile apps launch concurrently
- Empty app paths are skipped instead of erroring
- Init wizard supports edit-existing-profile without full wipe
workit configuses unsafe read so broken URLs can still be inspected
Removed
- Role-based wizard step (DevOps/Data/SWE)
- Hard requirement for Brave, Cursor, Teams
1.0.0
- Initial release: work routine launcher with pomodoro timer