MCPcopy Create free account
hub / github.com/Ishabdullah/Codey-v2 / _detect_peer_delegation

Function _detect_peer_delegation

core/agent.py:497–528  ·  view source on GitHub ↗

Detect phrases like: "ask gemini to X" "have claude do X" "call qwen and X" "use gemini to X" "tell claude to X" "let qwen X" "get claude to X" Returns (peer_name, task_string) or (None, None).

(user_message: str)

Source from the content-addressed store, hash-verified

495
496
497def _detect_peer_delegation(user_message: str):
498 """
499 Detect phrases like:
500 "ask gemini to X" "have claude do X" "call qwen and X"
501 "use gemini to X" "tell claude to X" "let qwen X"
502 "get claude to X"
503
504 Returns (peer_name, task_string) or (None, None).
505 """
506 _PEER_NAMES = ["claude", "gemini", "qwen"]
507 _pattern = re.compile(
508 r'\b(?:ask|call|have|tell|use|get|let)\s+('
509 + '|'.join(_PEER_NAMES)
510 + r')\s+(?:to\s+|and\s+|do\s+|to\s+do\s+|to\s+help\s+with\s+)?(.+)',
511 re.IGNORECASE,
512 )
513 m = _pattern.search(user_message)
514 if m:
515 return m.group(1).lower(), m.group(2).strip()
516
517 # Also match direct-name patterns: "gemini, X" / "qwen: X" / "claude - X"
518 _direct = re.compile(
519 r'^('
520 + '|'.join(_PEER_NAMES)
521 + r')[\s,:\-]+(.+)',
522 re.IGNORECASE,
523 )
524 m2 = _direct.match(user_message.strip())
525 if m2:
526 return m2.group(1).lower(), m2.group(2).strip()
527
528 return None, None
529
530
531def _auto_apply_peer_code(peer_output, context_message=""):

Callers 1

run_agentFunction · 0.85

Calls 1

searchMethod · 0.45

Tested by

no test coverage detected