{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tips.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tips.py"},"lines":{"text":"    \"Check scrollback output separately from live TUI state.\",\n"},"line_number":15,"absolute_offset":732,"submatches":[{"match":{"text":"scrollback"},"start":11,"end":21}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tips.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":47460,"human":"0.000047s"},"searches":1,"searches_with_match":1,"bytes_searched":1802,"bytes_printed":446,"matched_lines":1,"matches":1}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tool_view.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tool_view.py"},"lines":{"text":"# Tools that are always hidden from scrollback (have dedicated event channels).\n"},"line_number":69,"absolute_offset":1970,"submatches":[{"match":{"text":"scrollback"},"start":36,"end":46}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tool_view.py"},"lines":{"text":"# milestones are mirrored to scrollback.\n"},"line_number":73,"absolute_offset":2213,"submatches":[{"match":{"text":"scrollback"},"start":29,"end":39}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tool_view.py"},"lines":{"text":"def should_show_tool_in_scrollback(\n"},"line_number":77,"absolute_offset":2328,"submatches":[{"match":{"text":"scrollback"},"start":24,"end":34}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tool_view.py"},"lines":{"text":"    \"\"\"Determine whether a tool call/result should appear in scrollback.\n"},"line_number":83,"absolute_offset":2478,"submatches":[{"match":{"text":"scrollback"},"start":61,"end":71}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tool_view.py"},"lines":{"text":"    \"\"\"根据工具名 + 参数返回 scrollback 语义显示名称。\"\"\"\n"},"line_number":338,"absolute_offset":10218,"submatches":[{"match":{"text":"scrollback"},"start":38,"end":48}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tool_view.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":126137,"human":"0.000126s"},"searches":1,"searches_with_match":1,"bytes_searched":29775,"bytes_printed":1747,"matched_lines":5,"matches":5}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/resume_selector.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/resume_selector.py"},"lines":{"text":"        full_screen=True,  # alternate screen buffer，退出后零 scrollback 残留\n"},"line_number":253,"absolute_offset":7437,"submatches":[{"match":{"text":"alternate screen"},"start":29,"end":45},{"match":{"text":"scrollback"},"start":68,"end":78}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/resume_selector.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":30148,"human":"0.000030s"},"searches":1,"searches_with_match":1,"bytes_searched":7779,"bytes_printed":549,"matched_lines":1,"matches":2}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/logging_adapter.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/logging_adapter.py"},"lines":{"text":"    - 仅入 EventRenderer pending 队列，由明确 boundary 写入 scrollback\n"},"line_number":53,"absolute_offset":1651,"submatches":[{"match":{"text":"scrollback"},"start":70,"end":80}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/logging_adapter.py"},"lines":{"text":"    - WARNING/ERROR 以用户友好格式显示在 TUI scrollback\n"},"line_number":277,"absolute_offset":9182,"submatches":[{"match":{"text":"scrollback"},"start":55,"end":65}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/logging_adapter.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":77635,"human":"0.000078s"},"searches":1,"searches_with_match":1,"bytes_searched":12141,"bytes_printed":818,"matched_lines":2,"matches":2}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"lines":{"text":"        # 否则多余的固定高度会导致 prompt_toolkit 非全屏渲染时高度波动 → scrollback 污染。\n"},"line_number":456,"absolute_offset":17524,"submatches":[{"match":{"text":"scrollback"},"start":97,"end":107}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"lines":{"text":"        # Team inbox 消息直连 scrollback（绕开 session_event_queue，实现实时显示）\n"},"line_number":610,"absolute_offset":24710,"submatches":[{"match":{"text":"scrollback"},"start":34,"end":44}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"lines":{"text":"        \"\"\"将本次 running 耗时以极客风格写入 history scrollback.\"\"\"\n"},"line_number":870,"absolute_offset":34619,"submatches":[{"match":{"text":"scrollback"},"start":65,"end":75}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"lines":{"text":"                    # 后续 _drain_history_async（同 frame）写 scrollback。\n"},"line_number":1103,"absolute_offset":45683,"submatches":[{"match":{"text":"scrollback"},"start":68,"end":78}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"lines":{"text":"                # 动态帧率：busy/动画时降为 6fps（缓解 scrollback 污染），idle 时 4fps\n"},"line_number":1411,"absolute_offset":58185,"submatches":[{"match":{"text":"scrollback"},"start":68,"end":78}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"lines":{"text":"        await self._replay_scrollback_after_rewind()\n"},"line_number":1534,"absolute_offset":62897,"submatches":[{"match":{"text":"scrollback"},"start":27,"end":37}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"lines":{"text":"            # Ensure scrollback prints don't mix with the inline (full_screen=False) UI.\n"},"line_number":1581,"absolute_offset":64348,"submatches":[{"match":{"text":"scrollback"},"start":21,"end":31}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":247561,"human":"0.000248s"},"searches":1,"searches_with_match":1,"bytes_searched":72879,"bytes_printed":2554,"matched_lines":7,"matches":7}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/animations.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/animations.py"},"lines":{"text":"    \"Synthesizing signal\",\n"},"line_number":27,"absolute_offset":621,"submatches":[{"match":{"text":"signal"},"start":18,"end":24}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/animations.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":58478,"human":"0.000058s"},"searches":1,"searches_with_match":1,"bytes_searched":12498,"bytes_printed":418,"matched_lines":1,"matches":1}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/plugins/marketplace_install_view.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/plugins/marketplace_install_view.py"},"lines":{"text":"            on_done: 安装成功后自动调用的回调，用于关闭面板并输出 scrollback 消息。\n"},"line_number":88,"absolute_offset":2530,"submatches":[{"match":{"text":"scrollback"},"start":88,"end":98}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/plugins/marketplace_install_view.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":50022,"human":"0.000050s"},"searches":1,"searches_with_match":1,"bytes_searched":10195,"bytes_printed":547,"matched_lines":1,"matches":1}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"import signal\n"},"line_number":9,"absolute_offset":130,"submatches":[{"match":{"text":"signal"},"start":7,"end":13}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"        previous_handler = signal.getsignal(signal.SIGINT)\n"},"line_number":128,"absolute_offset":3919,"submatches":[{"match":{"text":"signal"},"start":27,"end":33},{"match":{"text":"signal"},"start":37,"end":43},{"match":{"text":"signal"},"start":44,"end":50}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"        signal.signal(signal.SIGINT, signal.SIG_IGN)\n"},"line_number":129,"absolute_offset":3978,"submatches":[{"match":{"text":"signal"},"start":8,"end":14},{"match":{"text":"signal"},"start":15,"end":21},{"match":{"text":"signal"},"start":22,"end":28},{"match":{"text":"signal"},"start":37,"end":43}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"            signal.signal(signal.SIGINT, previous_handler)\n"},"line_number":140,"absolute_offset":4291,"submatches":[{"match":{"text":"signal"},"start":12,"end":18},{"match":{"text":"signal"},"start":19,"end":25},{"match":{"text":"signal"},"start":26,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    \"\"\"在 TUI 内异步加载 MCP，初始化阶段不输出 scrollback 文案。\"\"\"\n"},"line_number":238,"absolute_offset":7761,"submatches":[{"match":{"text":"scrollback"},"start":62,"end":72}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":55286,"human":"0.000055s"},"searches":1,"searches_with_match":1,"bytes_searched":14618,"bytes_printed":1993,"matched_lines":5,"matches":12}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/error_display.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/error_display.py"},"lines":{"text":"    - message: full error text for scrollback (plain English, no icons)\n"},"line_number":10,"absolute_offset":239,"submatches":[{"match":{"text":"scrollback"},"start":35,"end":45}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/error_display.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":17956,"human":"0.000018s"},"searches":1,"searches_with_match":1,"bytes_searched":3075,"bytes_printed":471,"matched_lines":1,"matches":1}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"from comate_cli.terminal_agent.tool_view import summarize_tool_args, resolve_display_tool_name, should_show_tool_in_scrollback\n"},"line_number":52,"absolute_offset":1133,"submatches":[{"match":{"text":"scrollback"},"start":116,"end":126}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"        与 text delta 对称：按完整行即时 commit 到 scrollback，未换行尾巴留在\n"},"line_number":388,"absolute_offset":14229,"submatches":[{"match":{"text":"scrollback"},"start":62,"end":72}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"        scrollback 看到 \"thinking → text\" 而非 \"text → thinking\" 错序。\n"},"line_number":480,"absolute_offset":18376,"submatches":[{"match":{"text":"scrollback"},"start":8,"end":18}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"        保证 scrollback 看到完整 turn 内容。\n"},"line_number":498,"absolute_offset":19068,"submatches":[{"match":{"text":"scrollback"},"start":15,"end":25}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"            \"Skip duplicate system message in scrollback: severity=%s content=%r\",\n"},"line_number":557,"absolute_offset":21471,"submatches":[{"match":{"text":"scrollback"},"start":46,"end":56}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"        # text_pending / thinking）保证 scrollback 看到完整内容\n"},"line_number":619,"absolute_offset":23944,"submatches":[{"match":{"text":"scrollback"},"start":43,"end":53}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"        \"\"\"线程安全入口：只入队，不调度 prompt_toolkit，不立即写 scrollback。\"\"\"\n"},"line_number":769,"absolute_offset":29238,"submatches":[{"match":{"text":"scrollback"},"start":84,"end":94}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"        \"\"\"追加一条灰色无前缀的计时统计行到 history scrollback.\"\"\"\n"},"line_number":865,"absolute_offset":32410,"submatches":[{"match":{"text":"scrollback"},"start":68,"end":78}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"                # tool 调用前先把 _text_pending / _thinking_batch 落到 scrollback，\n"},"line_number":1528,"absolute_offset":60704,"submatches":[{"match":{"text":"scrollback"},"start":78,"end":88}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"                if not should_show_tool_in_scrollback(tool_name, args_dict):\n"},"line_number":1588,"absolute_offset":63717,"submatches":[{"match":{"text":"scrollback"},"start":43,"end":53}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"                if not should_show_tool_in_scrollback(tool_name, stored_args, is_result=True, is_error=is_error):\n"},"line_number":1594,"absolute_offset":64177,"submatches":[{"match":{"text":"scrollback"},"start":43,"end":53}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"lines":{"text":"                # 在 scrollback 渲染计划内容，让用户审阅后再决策。\n"},"line_number":1720,"absolute_offset":70458,"submatches":[{"match":{"text":"scrollback"},"start":22,"end":32}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/event_renderer.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":255083,"human":"0.000255s"},"searches":1,"searches_with_match":1,"bytes_searched":72478,"bytes_printed":4431,"matched_lines":12,"matches":12}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/commands.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/commands.py"},"lines":{"text":"            # 将 /mcp 命令和结果刷入 scrollback\n"},"line_number":682,"absolute_offset":24776,"submatches":[{"match":{"text":"scrollback"},"start":45,"end":55}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/commands.py"},"lines":{"text":"        # 否则 user entry 的尾部空行会在 scrollback 中残留。\n"},"line_number":1229,"absolute_offset":43981,"submatches":[{"match":{"text":"scrollback"},"start":50,"end":60}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/commands.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":186181,"human":"0.000186s"},"searches":1,"searches_with_match":1,"bytes_searched":62134,"bytes_printed":814,"matched_lines":2,"matches":2}}}
{"type":"begin","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"}}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"from comate_cli.terminal_agent.tool_view import should_show_tool_in_scrollback\n"},"line_number":22,"absolute_offset":709,"submatches":[{"match":{"text":"scrollback"},"start":68,"end":78}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"    async def _replay_scrollback_after_rewind(self) -> None:\n"},"line_number":35,"absolute_offset":1261,"submatches":[{"match":{"text":"scrollback"},"start":22,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"        \"\"\"清屏并重建 scrollback：Logo + 当前会话历史。\"\"\"\n"},"line_number":36,"absolute_offset":1322,"submatches":[{"match":{"text":"scrollback"},"start":27,"end":37}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"            scrollback_console = Console(\n"},"line_number":46,"absolute_offset":1749,"submatches":[{"match":{"text":"scrollback"},"start":12,"end":22}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"            print_logo(scrollback_console, project_root=project_root)\n"},"line_number":52,"absolute_offset":1984,"submatches":[{"match":{"text":"scrollback"},"start":23,"end":33}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"                if not should_show_tool_in_scrollback(tool_name, resume_args, is_result=True, is_error=is_error):\n"},"line_number":151,"absolute_offset":6566,"submatches":[{"match":{"text":"scrollback"},"start":43,"end":53}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"            scrollback_console = Console(\n"},"line_number":308,"absolute_offset":13054,"submatches":[{"match":{"text":"scrollback"},"start":12,"end":22}]}}
{"type":"match","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"lines":{"text":"            print_history_group_sync(scrollback_console, group)\n"},"line_number":313,"absolute_offset":13202,"submatches":[{"match":{"text":"scrollback"},"start":37,"end":47}]}}
{"type":"end","data":{"path":{"text":"/home/hyc/projects/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/tui_parts/history_sync.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":83912,"human":"0.000084s"},"searches":1,"searches_with_match":1,"bytes_searched":16144,"bytes_printed":2883,"matched_lines":8,"matches":8}}}
{"data":{"elapsed_total":{"human":"0.018226s","nanos":18225732,"secs":0},"stats":{"bytes_printed":17671,"bytes_searched":315518,"elapsed":{"human":"0.001236s","nanos":1235859,"secs":0},"matched_lines":46,"matches":54,"searches":12,"searches_with_match":12}},"type":"summary"}
