From 708c265b4f8ad8b7f2c9afe85d00073644deec17 Mon Sep 17 00:00:00 2001 From: ispaydeu <31388982+ispaydeu@users.noreply.github.com> Date: Tue, 10 Mar 2026 20:02:53 -0400 Subject: [PATCH] fix: read tool_response field in observe.sh (#377) Claude Code sends tool output as `tool_response` in PostToolUse hook payloads, but observe.sh only checked for `tool_output` and `output`. This caused all observations to have empty output fields, making the observer pipeline blind to tool results. Adds `tool_response` as the primary field to check, with backward- compatible fallback to the existing `tool_output` and `output` fields. --- skills/continuous-learning-v2/hooks/observe.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/skills/continuous-learning-v2/hooks/observe.sh b/skills/continuous-learning-v2/hooks/observe.sh index ea44386b..653d56a3 100755 --- a/skills/continuous-learning-v2/hooks/observe.sh +++ b/skills/continuous-learning-v2/hooks/observe.sh @@ -124,7 +124,7 @@ try: # Extract fields - Claude Code hook format tool_name = data.get("tool_name", data.get("tool", "unknown")) tool_input = data.get("tool_input", data.get("input", {})) - tool_output = data.get("tool_output", data.get("output", "")) + tool_output = data.get("tool_response", data.get("tool_output", data.get("output", ""))) session_id = data.get("session_id", "unknown") tool_use_id = data.get("tool_use_id", "") cwd = data.get("cwd", "")