6 custom skills (assign-task, dispatch-webhook, daily-briefing, task-capture, qmd-brain, tts-voice) with technical documentation. Compatible with Claude Code, OpenClaw, Codex CLI, and OpenCode.
54 lines
1.6 KiB
Markdown
54 lines
1.6 KiB
Markdown
# Menu Bar Status Logic
|
|
|
|
## Overview
|
|
|
|
This page documents how OpenClaw displays agent work state through menu bar indicators and status messaging.
|
|
|
|
## Key Display Features
|
|
|
|
The system surfaces current agent activity via:
|
|
|
|
- Menu bar icon reflecting work state
|
|
- Status row showing session and activity information
|
|
- Health status (visible only when idle)
|
|
- Device list from paired nodes
|
|
- Usage metrics when available from providers
|
|
|
|
## Session Management
|
|
|
|
Sessions receive events containing a `runId` and `sessionKey`. The "main" session takes priority—when active, it immediately displays in the menu. If main is idle, the most recently active non-main session appears instead, preventing constant switching during transitions.
|
|
|
|
## Activity Indicators
|
|
|
|
Two activity types generate status updates:
|
|
|
|
**Jobs** represent high-level command execution with states: started, streaming, done, or error.
|
|
|
|
**Tools** show operational phases (start/result) with associated metadata and arguments.
|
|
|
|
## Visual States
|
|
|
|
The icon system includes four states:
|
|
|
|
- **Idle**: Normal display
|
|
- **Working main**: Full badge animation
|
|
- **Working other**: Muted badge
|
|
- **Overridden**: Debug mode
|
|
|
|
Activity kinds map to glyphs:
|
|
|
|
| Kind | Glyph |
|
|
|------|-------|
|
|
| exec | terminal |
|
|
| read | document |
|
|
| write | pencil |
|
|
| edit | notepad |
|
|
| attach | paperclip |
|
|
| others | wrench |
|
|
|
|
## Status Labels
|
|
|
|
Active work displays as: `<Session role> - <activity label>` (e.g., "Main - exec: pnpm test").
|
|
|
|
The system labels activities by extracting command first lines, shortened file paths, and inferred change types from diffs.
|