나는 Claude Code를 최소한 30% 더 효율적으로 만들었습니다(어쨌든 나에게는).
hackernews
|
|
📦 오픈소스
#ai 모델
#claude
원문 출처: hackernews · Genesis Park에서 요약 및 분석
요약
클로드 코드(Claude Code)가 사용자 입력이 필요할 때 화면 테두리를 부드럽게 빛내주는 기능을 제공하는 방법이 소개되었습니다. macOS용 자동화 도구인 해머스푼(Hammerspoon)을 활용해 대기 중인 상황을 주변 시야로 인지하게 하여, 알림 없이도 작업 효율을 30% 이상 높일 수 있습니다. 사용자는 제공된 설치 스크립트를 통해 색상과 두께 등을 커스터마이징할 수 있으며, 멀티 모니터 환경에서도 문제없이 작동합니다.
본문
An ambient screen-border glow that tells you when Claude Code is waiting on you. The edges of your screen glow soft orange whenever Claude Code is blocked on your input — a finished turn, a permission prompt, an AskUserQuestion , or an MCP elicitation dialog. The glow clears the moment you unblock it. No notifications, no dock bouncing, no context switch — just a peripheral-vision signal so you can work in another window and know the instant Claude needs you. - macOS - Hammerspoon ( brew install --cask hammerspoon ) - Claude Code jq (brew install jq ) git clone https://github.com/noahkirsch/Claude-Code-Glow cd Claude-Code-Glow ./install.sh Then restart Claude Code so it picks up the new hook wiring. The installer: - Copies ClaudeGlow.spoon into~/.hammerspoon/Spoons/ - Appends a one-liner to ~/.hammerspoon/init.lua that loads and starts the Spoon - Merges the Claude Code hook wiring into ~/.claude/settings.json (a timestamped backup is saved alongside) - Reloads Hammerspoon It is safe to re-run; steps already applied are skipped. ./uninstall.sh Removes the Spoon, the loader lines, and the hook entries. Backups are saved. Hammerspoon draws a full-screen transparent canvas with a stack of stroked rectangles at decreasing alpha — a soft gradient band around the edges of every connected display. The canvas sits at the overlay window level, ignores clicks, and joins all Spaces so you see it everywhere. Claude Code hooks fire open hammerspoon://claudeglowon and …glowoff URLs at the right moments. Hammerspoon's URL event handler flips the canvases visible or hidden. Claude Code has several hooks that sound like "user needs to do something" but fire for unrelated reasons too. The wiring in hooks.json is narrowed to the events that actually require input: | Event | Glow | Why | |---|---|---| Stop | on | Claude finished its turn and is waiting for your next prompt | Notification (permission_prompt , elicitation_dialog ) | on | Claude wants a tool permission, or an MCP server is asking you something | PreToolUse (AskUserQuestion ) | on | Claude called AskUserQuestion and is waiting on your selection | UserPromptSubmit | off | You sent a prompt — Claude is working again | PostToolUse | off | A tool finished — covers the "you approved a permission" case, since no hook fires at the approve-click moment | SessionEnd | off | Session closed | Notable exclusions: Notification filters outidle_prompt andauth_success — those are informational and would cause false glows.SubagentStop is not wired — subagent completion isn't something you need to react to. Edit the Spoon call in ~/.hammerspoon/init.lua to customize before :start() : hs.loadSpoon("ClaudeGlow") spoon.ClaudeGlow.color = { red = 0.2, green = 0.7, blue = 1.0 } -- cyan spoon.ClaudeGlow.thickness = 60 -- wider band spoon.ClaudeGlow.layers = 32 -- smoother gradient spoon.ClaudeGlow:start() Defaults: { red = 1.0, green = 0.45, blue = 0.0 } (orange), thickness = 42 , layers = 24 . - Glow never appears. Confirm Hammerspoon is running. In the Hammerspoon Console, run hs.urlevent.openURL("hammerspoon://claudeglowon") — if the glow appears, the Spoon is wired up and the issue is on the Claude Code side. Check~/.claude/settings.json contains the hook entries. - Glow appears but doesn't clear. Likely a denied permission, since no hook fires on denial. The glow will clear on the next tool call or turn end. - Glow fires on things that don't need input. If you see this, open an issue with the Claude Code version and a rough description of what was happening — the event filter may need tightening. - Multi-monitor. Works out of the box; the Spoon subscribes to hs.screen.watcher and rebuilds when displays change. MIT
Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.
공유