Skip to main content
~/.liza/AGENT_TOOLS.md is not a sample file you leave untouched. It is the operational tool contract that agents follow when deciding how to search code, read files, fetch documentation, and fall back when a preferred tool is unavailable. Every row in the file is an instruction agents treat as authoritative.
CRITICAL: Customize AGENT_TOOLS.md before your first serious run. The default file references optional tools that Liza does not install for you. Agents follow this contract literally — instructions for missing tools cause repeated failed attempts, fallback churn, and bloated context windows. A misconfigured tool contract wastes agent turns, degrades decision quality, and makes failures noisy and hard to diagnose.

What AGENT_TOOLS.md Controls

The file tells agents:
  • Which search tools to use for code discovery (and in what order of preference)
  • Which AI-assisted tools are available for semantic lookup, documentation, and web search
  • Which version control tools to call for GitHub operations
  • Which data tools are available for database queries
  • How to fall back gracefully when a preferred tool is absent from the current session
Liza separates global guidance (this file) from session-specific activation (MAS prompts and pairing hooks). AGENT_TOOLS.md should describe routing rules that are safe for any project and any stack. It must not contain generated paths for a specific repository, worktree-specific index locations, or readiness claims from a past session.

Common Tools the File References

Review each category against what you actually have installed. Remove rows for tools you do not have. Rename rows for tools you have under a different name or provider.

Search & Code Navigation

rtk, rg (ripgrep), ast-grep, Semble (semble), SCIP Search (scip-search), Stacklit (stacklit), Functional Clusters (functional-clusters)

AI / LLM Tools

Morph MCP (morph-mcp), Perplexity, context7, Ref, DeepWiki, fetch MCP

Version Control

gh (GitHub CLI) for PR creation, issue lookup, and repository operations

Data & Structured Navigation

postgres, jq, yq, mdq, mdtoc for database queries and structured file parsing

Optional Indexing Tools

Four optional navigation tools require explicit opt-in via environment variables set before you run liza init. None of them are installed by Liza — you install and maintain them separately.
SCIP Search provides symbol lookup, package discovery, reference graphs, and static call-graph hints indexed per-worktree. It is the right tool when an agent needs exact symbol navigation rather than text search.Opt-in:
Omit --scip-search flags to let Liza auto-detect supported languages from tracked files. In monorepos, start with explicit language flags.Required indexers (installing scip-search alone is not enough):
How Liza uses SCIP: Indexes live under <worktree>/.liza/scip/ for task agents and <project_root>/.liza/scip/ for the orchestrator. Liza generates and refreshes these at controlled lifecycle points. When indexing fails for a language, Liza omits that language from agent prompt guidance and falls back to rg and ast-grep — it does not block agent spawn.Durable configuration — write the language allowlist to state.yaml via init flags:

Multi-Agent Warnings

Some tool categories are a poor fit for Liza’s multi-agent mode, where many divergent worktrees run simultaneously.

IDE-Backed MCP Tools

IDE integrations typically index one open project at a time. In multi-agent mode, they become stale for divergent worktrees and may return results from the wrong checkout. Use them in pairing mode only.

Centralized Indexes

Code graph tools, embedding stores, and branch-global review indexes that maintain a single shared index become stale when agents work in multiple worktrees. They can return silently incorrect results.

LSP Servers

Language servers like gopls, pyright, and tsserver are tied to a specific worktree. Duplicating them across many parallel worktrees is expensive and often impractical.

Session Token-Compression Tools

Interactive-session compression tools add little in multi-agent mode — Liza already reduces context structurally. Exception: RTK remains useful because it compresses tool output at the transport layer.
Safe defaults for multi-agent worktrees:
  • Semble with the explicit target root supplied by Liza
  • scip-search with explicit --index paths supplied by Liza
  • Stacklit with explicit -i paths supplied by Liza
  • rg for literal text and path discovery
  • ast-grep for syntax-pattern structural search and rewrites
  • morph-mcp as semantic fallback when Semble is unavailable
  • Direct file reads as the evidence source for all edits and claims

How to Audit Your Installation

Before your first serious run, ask an agent to review the installed file against your actual environment:

How to Update AGENT_TOOLS.md

Edit the file directly after reviewing the agent’s proposed diff:
After running liza setup --force, your global contracts and skills are refreshed from the latest binary. If you provided a custom --agent-tools file, pass it again with --force to ensure your custom version is reinstalled rather than replaced by the embedded default.
Keep your customized AGENT_TOOLS.md in version control alongside your dotfiles or in a shared team repository. This makes it easy to reapply after upgrades and ensures everyone on your team benefits from the same tuned tool routing.