Skip to main content

Module tools

Module tools 

Source
Expand description

Transport-free tool enumeration.

The embedded control plane returned a hardcoded [] for tools while both registries sat right there on the kernel — a client could not tell “no tools configured” from “tool listing is unavailable here”.

Tools come from TWO backends and a caller needs both to reason about what an agent can actually do:

  • NATIVE skills — in-process Rust (web_fetch, the diagnostics tool…). These work with no network and no child process, which is why they are the ones that function on a phone.
  • MCP tools — supplied by connected MCP servers, and therefore dependent on those servers being reachable.

The distinction is carried in the output rather than flattened away: an offline surface needs to show that its native tools still work while its MCP tools do not, and a merged list with no source field cannot express that.

Structs§

ToolEntry

Enums§

ToolSource
Which backend provides a tool.

Functions§

list
Every tool this runtime can currently dispatch.