From 1e60bcd53b90abbbf0ea48604516ce5ceb97694c Mon Sep 17 00:00:00 2001 From: Oleks Date: Sun, 10 May 2026 22:12:16 +0300 Subject: [PATCH] move hooks.json to plugin-root/hooks/, not under .claude-plugin/ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per https://code.claude.com/docs/en/plugins.md "Convert existing configurations": the hooks config file goes at `/hooks/hooks.json` — sibling to the script files under hooks/, NOT inside `.claude-plugin/`. v1.0.2 had it at `.claude-plugin/hooks/hooks.json` (still 0 hooks loaded). v1.0.3 puts it at the actually-documented path. Final layout: .claude-plugin/plugin.json hooks/hooks.json ← event → command map hooks/hyprpanel-state.sh ← the script `${CLAUDE_PLUGIN_ROOT}` in `command` strings is case-sensitive and correct. --- .claude-plugin/plugin.json | 2 +- {.claude-plugin/hooks => hooks}/hooks.json | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename {.claude-plugin/hooks => hooks}/hooks.json (100%) diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index c0ce295..3ba21b8 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "hyprpanel-state", - "version": "1.0.2", + "version": "1.0.3", "description": "Surfaces per-window Claude Code state in the Hyprland workspaces bar (HyprPanel). Wires hooks for UserPromptSubmit / PreToolUse / PostToolUse / Notification / Stop / SessionEnd that write state tokens to /tmp/hyprpanel-claude/ for the bar to read. Each kitty's icon and pip indicator reflects whether claude is active (blue), waiting on input (orange ●), done (green ✔), or sleeping for a /loop ScheduleWakeup (cyan ⧗). Companion to the workspaces patch in projects/hyprpanel-dev — installed bar binary needs that patch for the visuals; this plugin only owns the hook side.", "author": { "name": "oleks", diff --git a/.claude-plugin/hooks/hooks.json b/hooks/hooks.json similarity index 100% rename from .claude-plugin/hooks/hooks.json rename to hooks/hooks.json