ForcePilot/backend/package/yuxi/utils/subagent_thread_utils.py
2026-06-02 18:47:28 +08:00

13 lines
433 B
Python

from __future__ import annotations
import hashlib
_CHILD_THREAD_ID_PREFIX = "subagent_"
_CHILD_THREAD_ID_DIGEST_LENGTH = 64 - len(_CHILD_THREAD_ID_PREFIX)
def make_child_thread_id(parent_thread_id: str, agent_slug: str, tool_call_id: str) -> str:
digest = hashlib.sha256(f"{parent_thread_id}:{agent_slug}:{tool_call_id}".encode()).hexdigest()
return f"{_CHILD_THREAD_ID_PREFIX}{digest[:_CHILD_THREAD_ID_DIGEST_LENGTH]}"