GUI Work Mode
How to use desktop Work mode, My Workflows, workflow sessions, preset plugins, and custom skills.
What it is
CrabCode Desktop has two workspace modes in the top chrome: Code and Work.
| Mode | Use it for | Sidebar focus |
|---|---|---|
| Code | Repo-bound coding, tests, Git, file work | Projects, project sessions, unspecified-directory sessions |
| Work | Cross-project tasks organized by workflow | My Workflows, workflow sessions, unattributed workflow chats |
Work mode is not a separate account or cloud workspace. It still uses the local App Server, the same login, models, plugins, MCP servers, permissions, and memory.
Enter Work
Switch to Work from the desktop top area. The project tree becomes "My Workflows":
- Finance workflow: invoices, reconciliation, reimbursements, ledgers.
- Legal workflow: contract review, data compliance, employment matters.
- Office workflow: documents, spreadsheets, and office automation.
- Custom: a workflow synthesized from local file-backed skills.
- Unattributed workflow chats: butler conversations that are not assigned to a workflow.
Preset workflow entries appear first; their actual capability cards come from installed official plugins and marketplace data. If a backing plugin is missing, clicking the preset opens the plugin install path instead of pretending the capability exists.
How workflow sessions are grouped
Work sessions are butler sessions. CrabCode records "this thread belongs to that workflow" in threadWorkflowMap.
| Entry | Result |
|---|---|
| New-session button on a workflow row | New chat is assigned to that workflow |
| Fill a capability card and send | Current chat stays in that workflow context |
| New workflow chat / butler entry | Chat is unattributed and appears under "Unattributed workflow chats" |
| Unmount a workflow | History is not deleted; re-mounting can place it back under the workflow |
Work mode uses a local workspaces/butler directory under CrabCode's state directory. Code mode without a selected project uses a separate workspaces/unspecified directory. This keeps no-project Code chats out of Work, and keeps Work chats from accidentally inheriting a project cwd.
Capability cards and skill fill
Inside a workflow, the center area shows capability cards.
| State | Meaning | Click behavior |
|---|---|---|
| Ready | Plugin or skill is installed and enabled | Fills the composer with an @skill token or template |
| Disabled | Plugin/skill exists but is disabled | Opens plugin or skill management |
| Not installed | The preset workflow needs an official plugin | Opens the plugin install path |
Cards only come from real sources: official marketplace data, installed plugins, enabled skills, or local custom skills.
Add and unmount workflows
Use the + button beside "My Workflows" to open the workflow library and mount more workflows. Mounting adds an entry to the sidebar; it does not copy or delete plugins.
Unmounting a workflow only removes it from "My Workflows":
- Plugins are not deleted.
- Skills are not deleted.
- Historical chats are not deleted.
- If you unmount the Custom workflow, CrabCode remembers that intent. Future custom skills show a prompt to re-mount instead of silently adding it back.
Custom workflow
When you add user-level or project-level skills, the GUI derives a Custom workflow from installed skills:
| Skill path | Scope |
|---|---|
~/.crabcode/skills/<name>/SKILL.md | User-level, visible across projects |
<repo>/.crabcode/skills/<name>/SKILL.md | Project-level, visible in that project context |
When at least one local file-backed skill exists, Custom mounts automatically unless you explicitly unmounted it before.
Boundary with Code
| Question | Rule |
|---|---|
| Can Work edit the current project? | Only when you explicitly reference/enter that project context and approve tools; ordinary Work chats use the butler workspace |
| Where does Code send a no-project chat? | workspaces/unspecified, not the Work butler workspace |
| Does switching Code / Work lose my place? | The GUI keeps separate navigation snapshots for Code and Work |
| Can Work use plugins, MCP, browser, and automations? | Yes; it uses the same App Server capabilities and permission boundaries |
Troubleshooting
| Symptom | Fix |
|---|---|
| Workflows appear but no capability cards | Install or enable the corresponding official plugins in Plugins / skills |
| Clicking a preset jumps to Plugins | Normal install guidance; install the official plugin and return to Work |
| Custom skill exists but Custom workflow is missing | Check whether the skill is enabled; if you previously unmounted Custom, use + to re-mount |
| Chat appears under "Unattributed workflow chats" | It has no workflow attribution; create from a workflow row to auto-group it |
| History seems gone after unmount | Chats are not deleted; re-mount the workflow or check the unattributed group |