fix: 修复 UserPromptSubmit 事件 prompt 为空的问题
UserPromptSubmit 不是工具事件,prompt 文本作为顶层 JSON 字段传递, 而非 tool_input.prompt。新增 Prompt 字段到结构体并从 event.Prompt 读取。
This commit is contained in:
+2
-1
@@ -17,6 +17,7 @@ type ClaudeCodeHookEvent struct {
|
||||
ToolInput map[string]interface{} `json:"tool_input,omitempty"`
|
||||
Matcher string `json:"matcher,omitempty"`
|
||||
StopHookActive bool `json:"stop_hook_active,omitempty"`
|
||||
Prompt string `json:"prompt,omitempty"` // UserPromptSubmit 事件的 prompt 文本
|
||||
}
|
||||
|
||||
type HookHandler struct {
|
||||
@@ -139,7 +140,7 @@ func (h *HookHandler) handleUserPromptSubmit(event ClaudeCodeHookEvent) {
|
||||
return
|
||||
}
|
||||
|
||||
prompt, _ := event.ToolInput["prompt"].(string)
|
||||
prompt := event.Prompt
|
||||
if prompt == "" {
|
||||
log.Printf("empty prompt in UserPromptSubmit, session=%s", event.SessionID)
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user