Skip to content

fix: filter Claude nested agent events - #231

Open
M1nt-Ch0c0 wants to merge 1 commit into
zarazhangrui:mainfrom
M1nt-Ch0c0:agent/filter-claude-nested-events
Open

fix: filter Claude nested agent events#231
M1nt-Ch0c0 wants to merge 1 commit into
zarazhangrui:mainfrom
M1nt-Ch0c0:agent/filter-claude-nested-events

Conversation

@M1nt-Ch0c0

Copy link
Copy Markdown

Fixes #229

改动

translateEventsrc/agent/claude/stream-json.ts)入口过滤 parent_tool_use_id 非空的 assistant/user 事件。这个字段是 Claude stream-json 里 Subagent 嵌套消息的标记(顶层为 null),之前漏判断,导致 Subagent 的 text/thinking/tool 事件全部以公开 AgentEvent 发到群里。

顶层 Task 工具的 tool_result 不受影响,Subagent 结果照常回到主 agent 做综合。

测试

  • 新增回归用例:嵌套 assistant/user 事件过滤、顶层 null 透传、system/result 生命周期事件不受影响
  • vitest run tests/unit/agent/claude-stream-json.test.ts:8 通过
  • tsc --noEmit:通过

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Claude Subagent 的内部消息被当正文发到群里

1 participant