Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@cte
Copy link
Collaborator

@cte cte commented Dec 14, 2025

Shout-out to https://github.com/sst/opencode for the idea.

Screenshot 2025-12-20 at 9 43 24 PM

@roomote
Copy link
Contributor

roomote bot commented Dec 14, 2025

Rooviewer Clock   See task on Roo Cloud

Reviewed commit 0083691 which adds support for global custom tools. The change introduces loadFromDirectories() and loadFromDirectoriesIfStale() methods to load tools from both global (~/.roo/tools) and project-local (.roo/tools) directories. Tools now track their source file path via the source property. The UI displays source paths for each tool. All 18 locale files updated with appropriate translations. Comprehensive test coverage added for multi-directory loading with override semantics. All previously flagged issues remain resolved. No new issues found.

  • toJsonSchema() produces placeholder output instead of actual JSON Schema data (resolved - method removed)
  • clearCache() clears in-memory cache but leaves compiled files on disk (resolved - now cleans disk cache)
  • loadFromDirectoryIfStale() throws on non-existent directories (resolved - added existence check and timestamp tracking)
  • Test file serialize.ts should be named serialize.spec.ts for tests to run (resolved - file renamed)
  • formatXml produces (type: undefined) for nullable parameters using anyOf schema (resolved - added getParameterType() helper)
  • formatNative mutates input object which could cause side effects if serialized tool is reused (resolved - now creates shallow copy)
Previous reviews

Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues.

@hannesrudolph hannesrudolph added the Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. label Dec 14, 2025
@cte
Copy link
Collaborator Author

cte commented Dec 15, 2025

@roomote Fix all issues flagged by the reviewer:

  • clearCache() clears in-memory cache but leaves compiled files on disk
  • loadFromDirectoryIfStale() throws on non-existent directories (timestamp issue now fixed)
  • Test file serialize.ts should be named serialize.spec.ts for tests to run
  • formatXml produces (type: undefined) for nullable parameters using anyOf schema
  • formatNative mutates input object which could cause side effects if serialized tool is reused (we still need to make the changes to $schema and required but maybe there's a safe way?

@roomote
Copy link
Contributor

roomote bot commented Dec 15, 2025

Fixaroo Clock   See task on Roo Cloud

Fixed all 5 reported issues. All local checks passed.

View commit | Revert commit

- clearCache() now also removes compiled files from disk
- loadFromDirectoryIfStale() checks directory existence before statSync
- Renamed serialize.ts to serialize.spec.ts for test discovery
- formatXml handles anyOf schema for nullable parameters
- formatNative avoids mutating input object
@cte cte changed the title Add @roo-code/core Custom tool calling Dec 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement New feature or request Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. lgtm This PR has been approved by a maintainer size:XXL This PR changes 1000+ lines, ignoring generated files.

Projects

No open projects
Archived in project

Development

Successfully merging this pull request may close these issues.

5 participants