@shardflux/menubar-darwin
v0.8.6
Published
Shardflux macOS menu bar app
Readme
Shardflux menu bar for macOS
Move to cloud uses CLI 0.24.0+ to stop a local reply and continue it in the cloud automatically. The command timeout is 15 minutes for project transfer and VM start. (0.8.6+)
The native app payload for shard menubar (CLI 0.15.0+), version 0.8.0. macOS 14+, Apple Silicon and Intel.
Install once with npm i -g shardflux, then run shard or shard ./ on a project. The CLI installs the app in
~/Applications/Shardflux.app and starts it automatically on macOS the first time shard runs, with launch at login enabled.
One app runs per config directory (0.8.4+): opening Shardflux again while it runs brings its window forward or opens
the launcher, and a newer copy takes over from an older one.
shard menubar status --json
shard menubar stopThe menu shows live conversations in one-line rows, each named by its title (or first prompt) and the repository or folder you work in. Click a row to open it; hover or right-click to archive it. Finished conversations collapse under N done. The ⋯ menu contains Settings…, Check for updates and Quit. A dot marks an available update.
It reads the CLI's saved profile and project key; enable notifications in Settings. shard menubar stop turns
it off, including launch at login.
The npm package is a universal app signed with Shardflux's code-signing certificate (0.3.2+), so the permissions you grant it carry over to every update. After npm i -g shardflux, the running app moves to the new version by itself the next time its menu and windows are closed (0.3.2+).
Read Cloud agents.
In 0.8.3+ with CLI 0.22.0+, the T3 Code card shows the full remedy for a stopped workspace link. Inspections keep your approved sign-in and do not restart a link refused because its T3 environment allowance is full. After freeing a slot in T3 Connect, explicitly open the project in T3 again to retry.
Credential approvals (0.1.0+)
The menu bar app shows pending browser login requests. In 0.3.0, choose Review to select your vault and login item, then Allow login or Deny. Choose Ask every time, Allow for this project, or Allow on my machine (all projects). Machine permission applies to this account and profile; a saved project choice takes precedence. Remember for unattended sign-in is off by default. It saves only the requested fields, encrypted, for the current conversation, project template or machine template according to the selected scope. The scoped API must be available for conversation and machine storage. The workspace relay renews automatically while its issuing principal stays authorized.
Vault fills: sent end to end from your vault to the workspace; Shardflux only relays encrypted bytes. Remembered credentials: stored encrypted with AWS KMS and filled straight into the page; agents never see it, and every use is logged.
Conversation device tools (0.2.0+)
In 0.3.0, Review opens a native approval panel with the exact command, file paths or port mapping. Outside-conversation access only offers Allow once. Notifications open the same panel; they do not bypass review.
The background helper runs approved device commands, transfers files, opens localhost ports and mirrors your cloud
conversation transcripts. Open Review from the notification, then choose Allow once, Always for this project or Deny in the panel.
Paths outside a conversation’s local worktree ask separately. When an ACP application is connected, its own
permission prompt handles the request. Project grants live in ~/.config/shardflux/device-grants.json.
New conversation (0.3.0+, CLI 0.15.0+)
Press Option-Shift-Space from any app, or choose New conversation in the menu (⌘N). In the floating launcher, describe what the agent should do, choose a project and Claude or Codex, then press ⌘Enter. Both the task and project are required. Your task becomes the conversation's first user-authored message.
With 0.8.3+, sending a prompt clears and closes the launcher immediately. Its prompt and status animate to a card stack near the top of the display. The newest card sits in front; Show all launches expands the stack. You can reopen the launcher and send another prompt while earlier starts continue. Successful cards dismiss; failures retain Edit prompt, a setup remedy or Open conversation for a thread that already exists. Reduce Motion disables the upward animation.
The launcher remembers the agent and last project. It uses the frontmost app's working folder when macOS exposes an unambiguous folder without extra permission. Otherwise it keeps the last project. Tab searches recent local projects or opens Choose folder…; the list is ready the moment the launcher opens. Typing also searches live conversations. The highlighted row follows the pointer and the arrow keys in your macOS accent colour; Enter opens it, and Esc closes the list before the launcher. Add up to five small text files, branch context or a clipboard link through + at the end of the prompt line, or drop text files into the panel. These become text context in the first message. Esc closes the panel and returns focus.
Show the agent what you see: click the camera button or press ⇧⌘S, then drag across any part of any display. The capture is attached at native resolution as a thumbnail chip; hover or click it to preview, × removes it, and up to five fit. Esc during a capture returns to the launcher with your text and attachments; a second Esc closes it. The first capture asks macOS for Screen Recording; if it is off, the launcher shows Open System Settings. Captures stay in memory on your Mac and go straight into the conversation's VM, where Claude and Codex open them.
Drag the launcher by its background to put it anywhere. It reopens there on each display and always stays fully on screen. Settings → Launcher → Reset launcher position, or a double-click on its background, brings it back to the default spot.
Open the standard macOS Settings window from ⋯ → Settings… or ⌘,. Account shows your account, plan and current-period usage. General contains the profile, launch at login, your cloud machine's setup, command center and archive recovery. Agents shows available sign-in and connection metadata. Launcher contains the shortcut recorder, conflict notice, project-detection preference and Reset launcher position. Notifications controls waiting and approval alerts with the macOS permission state. Updates shows installed versions and one update action; About has documentation and support links. Missing server metadata is shown as unavailable, never inferred from saved credentials.
The app checks readable shortcut preferences and uses macOS hotkey registration, without Accessibility permission. It avoids the standard Spotlight, input-source, desktop assistant and 1Password combinations; if Option-Shift-Space is taken, it tries Control-Shift-Space, then Control-Option-Shift-Space.
Settings uses the Shardflux mark beside your account. Claude and Codex icons come from the installed apps through macOS, matching your Dock. If no app is installed, the app uses an unmodified official publisher mark. The same icons appear in conversation rows, the launcher and conversation notification attachments.
Below the prompt, three dropdowns choose the agent (0.5.0+, CLI 0.17.0+): the app by its icon, the model ("Opus", "GPT-6.1 Sol") and the effort ("High"). ⇧⌘M opens the models and ⇧⌘E the effort levels. Default leaves the choice to the agent; each app remembers its own choice.
The conversation opens where you work (0.3.1+): Claude in Claude Desktop when it's installed, otherwise Claude Code in Terminal, and Codex in the Codex app. With T3 Code connected (0.5.0+, CLI 0.17.0+), new Claude and Codex threads start in T3 Code, and Start carries T3 Code's icon. Choose the place per app in Settings → Agents → Open conversations in: for Claude a terminal app on this Mac (Ghostty, iTerm2, Terminal…; each one by name in 0.8.3+ with CLI 0.22.0+), Claude Desktop, your browser (claude.ai) or T3 Code; for Codex a terminal app (0.8.3+ with CLI 0.22.0+), its app or T3 Code. Connecting T3 Code in the first run moves both to T3 Code. The first run asks the same per agent. The choice is shared with shard, so threads you start from the terminal open there too.
This uses shard agents new --app claude|codex --path <folder> --prompt-file <file> [--model <id>] [--effort <level>] [--in t3] [--image -] --json (captures as PNG on standard input, CLI 0.15.0+), then the same shard agents open <workspace> --in auto --json path as session rows (--in web for the browser; Terminal runs shard agents open <workspace> there). The CLI chooses the app destination. Progress and errors stay with each submitted prompt’s status card; Open conversation retries an existing creation. The menu is optional: both CLI commands work independently.
Accounts (0.6.0+, CLI 0.18.0+)
Under your conversations, Accounts shows the Claude and ChatGPT/Codex account your threads use: email, plan and one
meter for the usage window closest to its limit. A dot appears only when something needs you (amber: running low; red
with Sign in: the sign-in expired); hover a row for every window and when it resets. Settings → Agents lists
every account. Its ⋯ menu signs it in again, moves it up or down (the first account is the one new threads use) or
removes it; Add account… signs in with Claude or ChatGPT, or adds an API key (written to shard on standard input,
never shown again). The app reads shard agents accounts --json every minute while the menu or Settings is open.
Move to cloud (0.7.0+, CLI 0.19.0+)
On this Mac lists the newest Claude Code and Codex sessions of your projects, from the terminal, Claude Desktop's
Code tab or the Codex app. A session's ⋯ menu has Move to cloud: the same session, with its whole history,
continues on a cloud computer (shard move --session <id> --path <project> --detach --json, after a running turn
finishes), and its conversation opens where your conversations open. A moved session says In the cloud and opens
there; a yellow dot marks one continued on this Mac after it moved.
In 0.8.5+, a failed move stays at its row as Couldn’t move. Hover for the reason, click to retry, or open ⋯ → Retry move to cloud. Retry or Refresh clears the previous failure. Actions also recover Node.js when an upgrade removes the previously recorded binary (CLI 0.23.0+ records a matching stable Node.js path).
⋯ → Open files opens ~/Shardflux, where every conversation's committed files appear by repository, base
branch and conversation (0.4.0+, CLI 0.16.0+). Large files are listed as <file>.placeholder.txt; ⋯ → Download
lists them and downloads one in place (shard files pull), then shows it in Finder.
Cloud machine from this computer (0.8.0+, CLI 0.20.0+)
Right after the first run's Agents step, your own Claude or Codex sets up your cloud machine from this computer:
your tools, runtimes, shell, dotfiles and skills, saved as your machine
(shard machine setup --from-this-computer --if-needed --json). It runs once, in the background; the first run shows
its progress in one line, then what it set up. Settings → General → Set up from this computer shows the same line,
with Set up, Retry, or Set up again in the row's ⋯ menu.
On macOS 26, the menu, launcher and approval panels use native Liquid Glass; Settings uses native translucent materials and unified toolbar chrome. macOS 14/15 keeps live frosted materials. Reduce Transparency and Increase Contrast select solid backgrounds. See the repository’s apps/menubar/GLASS.md for the shared onboarding integration API and build requirements.
Machine readiness (0.8.3+, CLI 0.22.0+) is separate from Claude/Codex connectivity. Onboarding and Settings show the saved version, saving or failed state and recovery, no saved template, or an unavailable readiness check. A missing or zero saved version cannot say ready.
Codex Cloud chats open in your browser. Use the conversation’s Original history action to reach its first chat after the Codex connector changes (CLI 0.23.0+).
