FLOATIFY
Session HUDs for Developers
A macOS menu bar app for Claude Code and Codex. Each live session gets a persistent floater with project label, color status, sprite avatar, git file count, and activity time.
WORLD 1-1
POWER-UPS
Per-Session Floaters
Each Claude Code or Codex session gets its own floater instead of one global status box.
Zero Focus Stealing
Non-activating NSPanel windows stay above apps without interrupting typing or mouse focus.
Project-Aware Labels
Each floater shows the current folder name, so multiple sessions stay easy to scan.
Drag, Close, Arrange
Move floaters anywhere, close the ones you do not need, restack them from the menu bar, or click a floater to open its project in VS Code.
Color-First Status
Red means running. Green means complete. Status stays readable without extra words.
Claude and Codex
Both tools get live session discovery. Codex can infer task state from session logs. Claude still works best with hooks.
Render Modes
Super Slay turns effects up, Slay keeps the standard animated look, and Lame strips heavy repeat effects for the lowest CPU.
File Changes & Activity
See git modified files count and time since last activity. Stay informed about what is happening in each session at a glance.
MINI-GAME
WARP ZONE
Hook Trigger
Live process scan discovers sessions
CLI Command
CLI sends status via FIFO pipe
Floater Appears
Persistent floater appears per session
START GAME
- 1
Clone the repository
$ git clone https://github.com/hieppp/floatify.git - 2
Build and install
$ cd floatify && ./build.sh - 3
What build.sh does
Builds the app and CLI, installs Floatify.app to /Applications, updates /usr/local/bin/floatify, and relaunches the app.
- 4
Claude Code hooks ~/.claude/settings.json
{ "hooks": { "Stop": [{ "hooks": [{ "type": "command", "command": "floatify --status complete" }] }], "SessionEnd": [{ "hooks": [{ "type": "command", "command": "floatify --status complete" }] }] } } - 5
Codex hooks ~/.codex/hooks.json
{ "hooks": { "UserPromptSubmit": [{ "hooks": [{ "type": "command", "command": "floatify --status running" }] }], "Stop": [{ "hooks": [{ "type": "command", "command": "floatify --status complete" }] }] } } - 6
Test it
$ floatify --status running $ floatify --status complete
GAME OPTIONS
Render
Super Slay, Slay, or Lame
Theme
Dark or light palette
Display
Compact, regular, or large
Timeout
Seconds before idle and complete
Codex infers task state from logs. Claude needs hooks for precise status.