Restore read_image tool to sage and muse agents#75
Restore read_image tool to sage and muse agents#75manthanabc merged 2 commits intopatch/sync-upstream-2026-01-15from
Conversation
Co-Authored-By: ForgeCode <noreply@forgecode.dev> Co-authored-by: manthanabc <48511543+manthanabc@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR attempts to restore the read_image tool to the sage and muse agents to achieve consistent tool availability across all three agents (sage, muse, and paws). However, the implementation is incomplete and will cause runtime failures.
Changes:
- Added
read_imageto sage.md tools list - Added
read_imageto muse.md tools list
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| crates/paws_repo/src/agents/sage.md | Adds read_image tool to sage agent's available tools |
| crates/paws_repo/src/agents/muse.md | Adds read_image tool to muse agent's available tools |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - search | ||
| - plan | ||
| - sage | ||
| - read_image |
There was a problem hiding this comment.
The read_image tool cannot be used because it is not registered in the ToolCatalog enum. While the ReadImage struct exists in crates/paws_domain/src/tools/catalog.rs (line 95), it is not included as a variant in the ToolCatalog enum (lines 40-54).
The tool registry checks ToolCatalog::contains() before executing tools (see crates/paws_app/src/tool_registry.rs line 101), which means any agent attempting to call read_image will receive a "Tool not found" error at runtime.
To fix this issue, you need to:
- Add
ReadImage(ReadImage)as a variant to theToolCatalogenum incrates/paws_domain/src/tools/catalog.rs - Add the corresponding match arm in the
ToolExecutor::call_internalmethod incrates/paws_app/src/tool_executor.rsto handle the execution - Add match arms for
ReadImagein all other places whereToolCatalogvariants are matched (likedescription(),schema(), etc.)
Note: This same issue exists in paws.md which also lists read_image on line 18.
| - read_image |
| tools: | ||
| - read | ||
| - fetch | ||
| - read_image |
There was a problem hiding this comment.
The read_image tool cannot be used because it is not registered in the ToolCatalog enum. While the ReadImage struct exists in crates/paws_domain/src/tools/catalog.rs (line 95), it is not included as a variant in the ToolCatalog enum (lines 40-54).
The tool registry checks ToolCatalog::contains() before executing tools (see crates/paws_app/src/tool_registry.rs line 101), which means any agent attempting to call read_image will receive a "Tool not found" error at runtime.
To fix this issue, you need to:
- Add
ReadImage(ReadImage)as a variant to theToolCatalogenum incrates/paws_domain/src/tools/catalog.rs - Add the corresponding match arm in the
ToolExecutor::call_internalmethod incrates/paws_app/src/tool_executor.rsto handle the execution - Add match arms for
ReadImagein all other places whereToolCatalogvariants are matched (likedescription(),schema(), etc.)
Note: This same issue exists in paws.md which also lists read_image on line 18.
| - read_image |
The
read_imagetool was removed from sage.md and muse.md but retained in paws.md, creating inconsistent tool availability across agents.Changes
read_imageto sage.md tools listread_imageto muse.md tools listAll three agents (sage, muse, paws) now have consistent image reading capabilities.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.