Răsfoiți Sursa

fix(settings): scope graphify pretool hook to Bash search commands

Matcher was Glob|Grep — those tool inputs have no `command` field, so
the hint never fired. Switch to Bash matcher and gate on the actual
command substring (grep, rg, ripgrep, find, fd, ack, ag) so the
graphify hint only injects when Claude is about to scan raw files.

Co-Authored-By: Claude <noreply@anthropic.com>
bastien 1 săptămână în urmă
părinte
comite
858e7a7fc7
1 a modificat fișierele cu 2 adăugiri și 2 ștergeri
  1. 2 2
      .claude/settings.json

+ 2 - 2
.claude/settings.json

@@ -2,11 +2,11 @@
   "hooks": {
     "PreToolUse": [
       {
-        "matcher": "Glob|Grep",
+        "matcher": "Bash",
         "hooks": [
           {
             "type": "command",
-            "command": "[ -f graphify-out/graph.json ] && echo '{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"additionalContext\":\"graphify: Knowledge graph exists. Read graphify-out/GRAPH_REPORT.md for god nodes and community structure before searching raw files.\"}}' || true"
+            "command": "CMD=$(python3 -c \"import json,sys; d=json.load(sys.stdin); print(d.get('tool_input',d).get('command',''))\" 2>/dev/null || true); case \"$CMD\" in *grep*|*rg\\ *|*ripgrep*|*find\\ *|*fd\\ *|*ack\\ *|*ag\\ *)   [ -f graphify-out/graph.json ] &&   echo '{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"additionalContext\":\"graphify: Knowledge graph exists. Read graphify-out/GRAPH_REPORT.md for god nodes and community structure before searching raw files.\"}}'   || true ;; esac"
           }
         ]
       }