The agent panel's `grep` tool output previously rendered file paths and line numbers as plain markdown text, so search results weren't clickable (unlike `find_path`, which emits `ResourceLink` content blocks). This PR makes `grep` results clickable in the same way `find_path` does: - `grep` now streams a `ResourceLink` content block per match (`crates/foo/bar.rs#L12-15` → `file:///abs/path#L12-15`) followed by the code snippet, via `event_stream.update_fields`, and sets `locations` on the tool call. - `render_resource_link` in `agent_ui` now splits an optional `#L...` fragment off `file://` URIs before resolving the project-relative path, so labels render as `path#L12-15` instead of falling back to the raw absolute URI. Clicking opens the file at the matched line (handled by the existing `MentionUri` selection parsing). - The model-facing text output of the tool is unchanged. Closes AI-401 Release Notes: - Improved the agent panel so that file search results from the agent's `grep` tool are clickable and open the file at the matched line.
2 files changedLine totals unavailable