concepts

Compound tools

One-call tools for rename, move, refactor, test, and commit. LSP-backed and verified: renaming a class across 8 files takes 3 steps instead of 19.

Copy & share

Loading sections…

Connect MCP or install the Empryo skill

Section exports contain only that heading’s content. Markdown and text links fetch the selected content directly, without the rest of the page.

Compound tools do a full task in a single call. You don't have to explain every step to the agent, and the agent doesn't burn tokens guessing commands.

The tools

ToolOne-liner
rename_symbolRename a symbol across every file. LSP-backed, verified.
move_symbolMove a symbol to another file + update every import.
rename_fileRename or move a file + update every importer.
refactorExtract function/variable, organize imports, format.
projectAuto-detected lint / typecheck / test / build across 21 ecosystems.
navigateDefinitions, references, call hierarchy, type hierarchy.
readFull file, line ranges, or a single symbol by name.
ast_editSurgical TypeScript/JavaScript edits - 65+ AST operations.

See the rename & refactor recipe and test & commit recipe for copy-paste examples.

Why they exist

Without compound tools, the agent burns steps guessing:

Agent: I'll run the tests with `npm test`
Shell: npm ERR! missing script: test
Agent: Let me try `npx jest`...

With project(action: "test"), one call detects your toolchain and runs the right command. Same idea for rename, move, refactor.

Benchmark

Renaming an exported class across 8 files:

Manual approachrename_symbol
Agent steps193
Token cost$0.228$0.036

The tool finds the symbol itself, runs an LSP rename, verifies zero dangling references, and reports back. No exploration, no guesswork, no verification spiral.

Documentation