Commit Graph

4 Commits

Author SHA1 Message Date
Kurtis Van Gent
b4862825e8 refactor: implement dynamic tool registration (#613)
This PR refactors the tool configuration and loading mechanism to use a
dynamic registration pattern. Each tool package now registers itself
with a central registry, and the server configuration code uses this
registry to decode and initialize tools.

Key changes:
- Introduced tools.Register and tools.DecodeToolConfig for dynamic tool
handling.
- Removed direct imports of specific tool packages from
internal/server/config.go.
- Updated individual tool packages to include init() functions for
self-registration.
- Modified ToolKind constants to be local kind constants within each
tool package.
- Adjusted test files to reflect the changes in tool kind identifiers.

This change simplifies adding new tools and decouples the server
configuration from specific tool implementations.

---------

Co-authored-by: Yuan Teoh <yuanteoh@google.com>
Co-authored-by: Yuan <45984206+Yuan325@users.noreply.github.com>
2025-06-04 10:19:42 -07:00
Kurtis Van Gent
1539ee56dd feat: add basic CLI (#5) 2024-07-15 11:12:29 -06:00
Kurtis Van Gent
0adb59c273 chore(ci): set up ci 2024-07-12 16:42:13 -06:00
Kurtis Van Gent
a612765c85 chore: init project 2024-06-07 21:29:24 +00:00