Where tools come from
Because plans and agents are tools too, anything you build can be called by the next thing you build.
Tool files
A tool file is a YAML file in./.graph/tools/ or ~/.config/graph/tools/. Its kind decides what it runs:
Only
prompt and decision tools spend tokens, so moving work into exec and reshape tools makes it cheaper and repeatable.
Mark a tool read_only when it has no side effects. reshape and decision tools are read-only by default.
Tool names must be unique across both directories. To change a built-in tool for a project, put a file with the same name in the builtin/ subdirectory of a tools directory, and it replaces graph’s version. A pack is a plain copy in packs/<name>/, so you change its tools by editing them there; graph pack list reports the edits.
Inspect and run tools
graph tool list lists the catalog, graph tool show prints a tool’s description, schemas and source, and graph tool test calls it and prints the result.
Guides
Create a tool in the workbench
Draft, test-run and save a tool with the tool drafter.
Test a tool
Run any tool directly and see exactly what it returns.
Improve what graph knows about a tool
Give drafters and the workbench accurate output shapes for your tools.