Claude Code 세션용 macOS 메뉴 표시줄 도우미

hackernews | | 📦 오픈소스
#ai 세션 #claude #claude code #macos #메뉴바 #모니터링
원문 출처: hackernews · Genesis Park에서 요약 및 분석

요약

Pulse는 macOS 메뉴바에서 Claude Code 세션의 실시간 작업 상태를 모니터링할 수 있는 도구입니다. 사용자는 창을 전환하지 않고도 직렬 회전, 주황색/빨간색 점멸 등 아이콘 변화를 통해 AI의 작동, 유휴, 위험 명령어 탐지 여부를 즉시 확인할 수 있습니다. 특히 'rm -rf'나 'git push' 같은 특정 쉘 명령어가 실행될 때 사용자가 직접 설정한 정규 표현식 규칙에 따라 경고를 띄우거나 아예 차단하는 보안 기능을 제공합니다. 모든 데이터는 클라우드 없이 기기 내에서만 처리되며, Swift 5.9 이상이 설치된 macOS 14+ 환경에서 MIT 라이선스로 무료 제공됩니다.

본문

A macOS menu bar companion for Claude Code. See what your AI sessions are doing without switching windows. Pulse sits in your menu bar and shows a live indicator for every running Claude Code session. When Claude is working, the icon spins. When it needs your attention, the icon blinks in color. Click to see all sessions at a glance. git clone https://github.com/sayantan94/pulse.git cd pulse ./pulse setup ./pulse start That's it. Setup checks for dependencies (Swift, jq), builds from source, and registers hooks with Claude Code. If jq is missing, it installs it via Homebrew. The menu bar icon changes based on what Claude is doing: | Icon | Meaning | |---|---| | Faded sparkle | No active sessions | | Sparkle + spinning arc | Claude is working | | Blinking orange sparkle | Risky command detected (warn) or session idle | | Blinking red sparkle | Command blocked | Click the icon to open the panel. You'll see every active session listed by its working directory, with the current status. Click a session to jump to its terminal. Pulse watches every shell command Claude runs. If it matches a pattern you've defined, it either warns you (orange blink, command still runs) or blocks it (red blink, command prevented). Default patterns include rm , git push , sudo , rm -rf , npm publish , and more. Some warn, some block. You can change this two ways: From the menu bar panel — click the icon, expand the Rules section. Toggle any pattern between Warn and Block. Add new patterns. Turn on "Block all by default" to block everything that matches. From the config file — edit ~/.pulse/hooks/risky-patterns.json : { "blockByDefault": false, "patterns": [ {"pattern": "rm -rf", "label": "rm -rf", "mode": "block"}, {"pattern": "git push", "label": "git push", "mode": "warn"}, {"pattern": "npm publish", "label": "npm publish", "mode": "warn"} ] } Each pattern is a regex. Mode is "warn" or "block" . Changes take effect immediately. Run Claude Code in as many terminals as you want. Each session is tracked by its working directory. The menu bar icon shows the highest priority state: red (blocked) > orange (risky/idle) > green (working) > gray (no sessions) Sessions are named after the working directory automatically. To override: export CLAUDE_SESSION_NAME="my-project" Set this before starting Claude Code. ./pulse doctor # Check dependencies and installation status ./pulse setup # Install deps, build, register hooks ./pulse start # Launch Pulse in the menu bar ./pulse remove # Stop, unregister hooks, delete everything Run ./pulse doctor anytime to check if everything is set up correctly. Pulse uses Claude Code hooks — shell scripts that run before and after every tool call. When Claude runs a command, the hook writes a small JSON file to /tmp/pulse/ . The menu bar app watches that directory and updates in real time. No network calls. No cloud. Everything stays on your machine. - macOS 14+ - Swift 5.9+ (comes with Xcode Command Line Tools) - jq (setup installs it automatically) MIT

Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.

공유

관련 저널 읽기

전체 보기 →