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
patternstringrequiredRegex pattern to search for.
globstringoptionalFile glob filter, e.g. "*.h", "*.cc", "api/**/*.h".
case_sensitivebooleanoptionaltrueCase-sensitive search.
max_resultsnumberoptional50Max results to return.
versionstringoptionallibwebrtc 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
namestringrequiredSymbol name to search for, e.g. PeerConnectionInterface.
kindenum["class","struct","enum","function","method","field","typedef","macro","namespace","any"]optionalanyRestrict to a symbol kind.
scopestringoptionalDirectory prefix to limit search, e.g. "api/" or "modules/audio_coding/".
limitnumberoptional30Max results (max 200).
versionstringoptionallibwebrtc 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
symbolstringrequiredSymbol name to find references for.
kindenum["all","call","type","qualified","base_class"]optionalallRestrict to a reference kind.
scopestringoptionalEnclosing scope prefix, e.g. "webrtc::PeerConnection" or "webrtc::".
file_globstringoptionalSQL LIKE pattern for file path, e.g. "api/%" or "%/test/%".
include_testsbooleanoptionalfalseInclude *test*/*mock*/*fake* files.
limitnumberoptional50Max results (max 500).
versionstringoptionallibwebrtc 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
pathstringrequiredFile path relative to WebRTC root, e.g. "api/peer_connection_interface.h".
start_linenumberoptionalStart line (1-based, inclusive).
end_linenumberoptionalEnd line (1-based, inclusive).
versionstringoptionallibwebrtc 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).
versionstringoptionallibwebrtc 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
pathstringrequiredFile path relative to WebRTC root, e.g. "api/jsep.h".
include_membersbooleanoptionaltrueInclude class members.
include_macrosbooleanoptionaltrueInclude macro definitions.
versionstringoptionallibwebrtc 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
namestringrequiredClass name or qualified name, e.g. webrtc::PeerConnectionInterface.
directionenum["parents","children","both"]optionalbothTraversal direction.
limitnumberoptional100Max results (max 500).
versionstringoptionallibwebrtc 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_namestringrequiredQualified 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).
versionstringoptionallibwebrtc 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
pathstringrequiredFile 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).
versionstringoptionallibwebrtc version, e.g. "M131". Also accepts browser overlays "F133" (Firefox) / "S26" (Safari). Default: latest installed.