Skip to content

Built-in Tools

The agent has access to these tools for interacting with your codebase. Tools run in parallel when independent.

Tool Reference

ToolDescriptionApproval
read_fileRead file contents with optional line range. Handles binary detection and large files (max 1 MB).Auto
write_fileCreate or overwrite a file. Shows diff preview before writing.Required
edit_fileSearch-and-replace within a file. Minimal diffs, preserves formatting.Required
bashRun shell commands. Streams output in real-time. 30 second timeout.Required
list_directoryList directory contents with metadata. Respects .gitignore. Max 1,000 entries.Auto
grepRegex search across files. Uses ripgrep when available. 15 second timeout.Auto
spawn_subagentSpawn a single focused subagent for an isolated task.Auto
spawn_parallel_subagentsSpawn multiple subagents to work concurrently on independent tasks.Auto
web_fetchFetch URL content as markdown. Handles PDFs with OCR fallback via Mistral/OpenAI vision.Auto
web_searchSearch the web via Brave, DuckDuckGo, Tavily, or Firecrawl. Auto-detects configured providers with DuckDuckGo fallback.Auto
web_browserBrowser automation via Chrome DevTools Protocol. Actions: navigate, screenshot, click, type, extract_text, evaluate.Required
skillList available skills (no args) or activate a skill by name.Auto

Approval Levels

Each tool has one of three approval levels:

  • Auto — the tool runs without asking. Read-only tools like read_file, list_directory, and grep fall into this category.
  • Required — Glue shows a confirmation modal before running the tool. Tools that modify your codebase (write_file, edit_file, bash) require explicit approval. See Tool Approval for details.
  • Always — the user has permanently trusted this tool. Any tool can be promoted to this level through the approval modal or by editing ~/.glue/preferences.json.

TIP

Tools that are independent of each other run in parallel automatically. For example, the agent can read multiple files or search across different directories at the same time.

MCP-sourced tools

In addition to the built-ins above, any tool advertised by a configured MCP server becomes part of the same agent loop. They appear in the registry as <server-id>__<tool-name> (for example, playwright__browser_navigate for the Playwright MCP server), route through the same permission gate, and emit the same observability spans.

Native tool names always win on conflict — an MCP server advertising read_file is silently superseded by the built-in. Use the server-namespaced form to address the MCP version explicitly.

See also

Released under the MIT License.