{"repo":"NousResearch/hermes-agent","public_id":"28961","display_label":"Plugin hook session_id propagation and tool correlation","summary":"These issues and PRs concern missing or incorrect session_id and tool_call_id fields in pre_tool_call plugin hooks across multiple call sites, including nested tool execution. Related feature work covers request-scoped hooks, tool call correlation IDs, and hook-based blocking of tool execution.","subsystem":"agent","counts":{"members":11,"open_issues":1,"open_issues_distinct":1,"open_prs":2,"closed_issues":5,"merged_prs":0,"attempt_prs":5},"landed_fix":null,"resolution":{"state":"unresolved","by":null},"freshness":{"state":"never_verified","last_verified_at":null,"is_stale":false},"grouping":{"backbone":"STRUCTURAL_PARTIAL","link_density":0.14327272727272727},"fix_edges":[],"members":[{"kind":"issue","number":28961,"title":"tool_executor pre_tool_call hook calls omit session_id and tool_call_id (v0.14.0)","url":null,"state":"closed"},{"kind":"issue","number":34618,"title":"`session_id` not propagated to `get_pre_tool_call_block_message` from its 3 callsites — `pre_tool_call` plugin hooks that scope by session silently no-op","url":null,"state":"closed"},{"kind":"issue","number":39728,"title":"fix: pre_tool_call hook missing session_id in three call sites","url":null,"state":"closed"},{"kind":"issue","number":44582,"title":"pre_tool_call plugin hook not invoked during agent tool execution","url":null,"state":"closed"},{"kind":"issue","number":48311,"title":"pre_tool_call hooks receive an empty session_id (task_id passed instead) — breaks session-scoped hook policy","url":null,"state":"closed"},{"kind":"issue","number":51931,"title":"[Bug]: Nested tool hooks(on_pre_tool_call and on_post_tool_call) can't get session_id","url":null,"state":"open"},{"kind":"pr","number":28982,"title":"fix: pass session_id and tool_call_id in pre_tool_call hook","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"0d9b7132ffe8c70b593a87445b181742dc878827","number":0}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false,"is_fix_pr":true,"fix_tier":"suggested","fix_detail_withheld":true},{"kind":"pr","number":34622,"title":"fix(plugins): propagate session_id to pre_tool_call hook from all 3 callsites","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"d682f320b","number":0},{"kind":"commit","value":"36308f0667","number":0}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false,"is_fix_pr":true,"fix_tier":"suggested","fix_detail_withheld":true},{"kind":"pr","number":52000,"title":"fix(execute_code): forward session_id to nested tool calls via RPC","url":null,"state":"open","close_reason":{"refs":[{"kind":"commit","value":"6da0ae1cf","number":0},{"kind":"commit","value":"58e35f829","number":0},{"kind":"pr","value":"#82243","number":82243},{"kind":"pr","value":"#51931","number":51931},{"kind":"pr","value":"#51931","number":51931}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":52001,"title":"fix(execute_code): preserve session id for nested tools","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#52000","number":52000}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":82243,"title":"feat(tools): compose deferred tools in execute_code","url":null,"state":"open","close_reason":{"refs":[{"kind":"commit","value":"5adc1527622aec861319ba9617cde7701b06595c","number":0},{"kind":"pr","value":"#51931","number":51931},{"kind":"pr","value":"#52000","number":52000}],"category":"wontfix_bydesign","implication":"wontfix"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}