0xPlaygrounds / 0xPlaygrounds/rig

feat: make ToolServer a trait

Open
#1,026 2 comments 1 reaction 0 assignees View on GitHub
feat low priority
Dominant language
Rust
Stars
8.6k
Forks
959
Avg merge
4h 32m
Merged PRs (30d)
117

Description

- [x] I have looked for existing issues (including closed) about this

## Feature Request

This is a (low priority!) proposal to make ToolServers a trait rather than just having one single ToolServer type. The use case for this is primarily that users may want to pull tools from other sources than just in-memory (for example, tools as WASM modules).

Currently, this feature is very low priority as nobody's asked for it (but it *is* something of interest since the end goal is eventually that every part of Rig should be self-implementable). Please react to this post or comment if you would like this feature.

Contributor guide

Open the contributing guide

Research direction

Look at the existing ToolServer type in the codebase to understand its current responsibilities and interface. The goal is to abstract it into a trait, allowing alternative implementations like WASM modules. Start by identifying all methods the ToolServer provides and defining a trait that captures its core functionality. Check for any existing tests related to ToolServer to ensure the trait design maintains compatibility.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.