-
Notifications
You must be signed in to change notification settings - Fork 0
Tool Reference
special-place-administrator edited this page Apr 3, 2026
·
4 revisions
SymForge currently exposes 31 tools plus prompts and resources.
Use this page for
looking up the right tool family after SymForge is already installed and connected in your client.
| Tool | Purpose |
|---|---|
health |
Index status, file/symbol counts, watcher state, parse diagnostics |
get_repo_map |
Structured overview of the entire repository with adjustable detail |
explore |
Concept-driven exploration with stemmed matching and convention enrichment |
| Tool | Purpose |
|---|---|
get_file_context |
File outline, imports, consumers, references, git context — call before reading a source file |
get_file_content |
Exact file reads with line ranges or around a symbol — for docs, config, or literal source |
get_symbol |
Full source of a function, struct, class, etc. by name (batch mode supported) |
get_symbol_context |
Symbol body + callers + callees + type dependencies, or expanded bundles |
| Tool | Purpose |
|---|---|
search_symbols |
Find symbols by name, kind, language, or path prefix |
search_text |
Full-text search with enclosing symbol context |
search_files |
Ranked file path discovery with co-change coupling |
| Tool | Purpose |
|---|---|
find_references |
Call sites, imports, type usages, implementations |
find_dependents |
File-level dependency graph |
trace_symbol |
Multi-hop caller/callee chains for a symbol |
inspect_match |
Deep-dive a search match with full symbol context |
| Tool | Purpose |
|---|---|
what_changed |
Changed files by git ref, timestamp, or working tree |
analyze_file_impact |
Reindex one file and report affected symbols and dependents |
diff_symbols |
Symbol-level diff between git refs (AST-based for supported languages, regex fallback for others) |
| Tool | Purpose |
|---|---|
validate_file_syntax |
Parse diagnostics with line/column location for both code files (tree-sitter) and config files (TOML, JSON, YAML, Env) |
| Tool | Purpose |
|---|---|
edit_plan |
Analyze impact and suggest the correct edit tool sequence |
replace_symbol_body |
Replace an entire symbol definition by name |
edit_within_symbol |
Scoped find/replace inside one symbol's range |
insert_symbol |
Insert code before or after a named symbol |
delete_symbol |
Delete a symbol and its attached doc comments by name |
batch_edit |
Apply multiple symbol-addressed edits atomically across files |
batch_rename |
Rename a symbol and update all references project-wide |
batch_insert |
Insert code before/after multiple symbols across files |
| Tool | Purpose |
|---|---|
ask |
Natural-language questions routed to the right SymForge tool internally |
conventions |
Auto-detect project coding patterns |
context_inventory |
See what symbols and files you've already fetched this session |
investigation_suggest |
Find gaps in your loaded context |
index_folder |
Full reindex of a directory |
- Use
get_file_contextbefore reading source files. - Use
search_symbolsorsearch_textbefore broad raw file scanning. - Use
get_file_contentfor docs and config where exact wording matters. - Use
edit_planbefore non-trivial edits. - Use
analyze_file_impactafter small edits andindex_folderafter large ones. -
edit_planaccepts a bare symbol, a file path, orpath::symbol. -
batch_editandbatch_insertaccept shorthand strings likesrc/lib.rs::helper => delete.
Tip
The fastest mental model is: orient with
get_repo_maporexplore, narrow withsearch_*, inspect withget_*, trace withfind_referencesortrace_symbol, then edit with the symbol-aware edit tools.
SymForge edit tools are intended to replace raw text-copy editing for source code.
Important behaviors:
- symbol-addressed range resolution
- doc-comment-aware edit ranges
- automatic indentation
- atomic writes
- immediate reindexing
- stale-callsite warnings on signature changes where applicable
SymForge also exposes prompts for higher-level workflows:
symforge-reviewsymforge-architecturesymforge-triagesymforge-onboardsymforge-refactorsymforge-debug
These prompts return procedural workflows that tell the agent which SymForge tools to call next.
Static resources:
symforge://repo/healthsymforge://repo/outlinesymforge://repo/mapsymforge://repo/changes/uncommitted
Resource templates:
symforge://file/context?...symforge://file/content?...symforge://symbol/detail?...symforge://symbol/context?...