MCPcopy Index your code
hub / github.com/google/adk-python / _get_all_agent_names

Function _get_all_agent_names

src/google/adk/cli/agent_test_runner.py:253–277  ·  view source on GitHub ↗
(obj, visited=None)

Source from the content-addressed store, hash-verified

251
252
253def _get_all_agent_names(obj, visited=None):
254 if visited is None:
255 visited = set()
256
257 if id(obj) in visited:
258 return set()
259 visited.add(id(obj))
260
261 from google.adk.workflow._parallel_worker import _ParallelWorker
262 from google.adk.workflow._workflow import Workflow
263
264 names = set()
265 if isinstance(obj, BaseAgent) and hasattr(obj, "name"):
266 names.add(obj.name)
267 if hasattr(obj, "sub_agents") and obj.sub_agents:
268 for sub in obj.sub_agents:
269 names.update(_get_all_agent_names(sub, visited))
270 elif isinstance(obj, Workflow):
271 if obj.graph and obj.graph.nodes:
272 for node in obj.graph.nodes:
273 names.update(_get_all_agent_names(node, visited))
274 elif isinstance(obj, _ParallelWorker):
275 if hasattr(obj, "_node"):
276 names.update(_get_all_agent_names(obj._node, visited))
277 return names
278
279
280def _extract_user_content(event: dict) -> Optional[types.Content]:

Callers 1

test_agent_replayFunction · 0.85

Calls 3

setFunction · 0.85
addMethod · 0.45
updateMethod · 0.45

Tested by

no test coverage detected