Code navigation (9)

Search, read, and traverse the libwebrtc source tree — regex, AST symbols, references, and include graphs.

search_codeSearch Code

Regex search across the WebRTC codebase (ripgrep). Returns matching lines with file paths and line numbers.

ParameterTypeRequiredDefaultDescription
patternstringrequired—Regex pattern to search for.
globstringoptional—File glob filter, e.g. "*.h", "*.cc", "api/**/*.h".
case_sensitivebooleanoptionaltrueCase-sensitive search.
max_resultsnumberoptional50Max results to return.
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

find_symbolFind Symbol

Find declarations of classes, structs, enums, functions, methods, fields, typedefs, or macros via the tree-sitter AST index. Returns location, signature, and qualified name.

ParameterTypeRequiredDefaultDescription
namestringrequired—Symbol name to search for, e.g. PeerConnectionInterface.
kindenum["class","struct","enum","function","method","field","typedef","macro","namespace","any"]optionalanyRestrict to a symbol kind.
scopestringoptional—Directory prefix to limit search, e.g. "api/" or "modules/audio_coding/".
limitnumberoptional30Max results (max 200).
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

find_referencesFind References

AST-backed search for identifier references — type usages, qualified names, call targets — filtered by enclosing scope and file path. Skips comments and strings.

ParameterTypeRequiredDefaultDescription
symbolstringrequired—Symbol name to find references for.
kindenum["all","call","type","qualified","base_class"]optionalallRestrict to a reference kind.
scopestringoptional—Enclosing scope prefix, e.g. "webrtc::PeerConnection" or "webrtc::".
file_globstringoptional—SQL LIKE pattern for file path, e.g. "api/%" or "%/test/%".
include_testsbooleanoptionalfalseInclude *test*/*mock*/*fake* files.
limitnumberoptional50Max results (max 500).
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

read_fileRead File

Read a file from the WebRTC source tree (paths relative to the WebRTC root), optionally a line range.

ParameterTypeRequiredDefaultDescription
pathstringrequired—File path relative to WebRTC root, e.g. "api/peer_connection_interface.h".
start_linenumberoptional—Start line (1-based, inclusive).
end_linenumberoptional—End line (1-based, inclusive).
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

list_directoryList Directory

List files and subdirectories in a directory of the WebRTC source tree.

ParameterTypeRequiredDefaultDescription
pathstringoptional(root)Directory path relative to WebRTC root.
recursivebooleanoptionalfalseList recursively (1 level deep only).
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

file_overviewFile Overview

AST-backed hierarchical outline of a C++ file: namespaces, classes/structs, enums, methods, fields, typedefs, and macros, ordered by source line.

ParameterTypeRequiredDefaultDescription
pathstringrequired—File path relative to WebRTC root, e.g. "api/jsep.h".
include_membersbooleanoptionaltrueInclude class members.
include_macrosbooleanoptionaltrueInclude macro definitions.
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

class_hierarchyClass Hierarchy

AST-backed lookup of parent (base) and child (derived) classes for a class. Accepts a simple or qualified name.

ParameterTypeRequiredDefaultDescription
namestringrequired—Class name or qualified name, e.g. webrtc::PeerConnectionInterface.
directionenum["parents","children","both"]optionalbothTraversal direction.
limitnumberoptional100Max results (max 500).
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

class_membersClass Members

List methods, fields, nested types, and enum values of a specific class (qualified name preferred).

ParameterTypeRequiredDefaultDescription
class_namestringrequired—Qualified name, e.g. "webrtc::SessionDescriptionInterface", or a simple name.
kindenum["all","method","field","enum_value","typedef"]optionalallRestrict to a member kind.
include_declarationsbooleanoptionaltrueInclude forward-only declarations along with definitions.
limitnumberoptional200Max results (max 500).
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.

include_graphInclude Graph

Trace #include chains for a file: what it includes (forward) and what files include it (reverse).

ParameterTypeRequiredDefaultDescription
pathstringrequired—File path relative to WebRTC root, e.g. "api/jsep.h".
directionenum["includes","included_by","both"]optionalbothDirection of traversal.
max_depthnumberoptional1Depth of traversal (1 = direct only, max 3).
versionstringoptional—libwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.