Junhoee's picture
Upload 98 files
f646e0b verified
Raw
History Blame Contribute Delete
1 kB
"""director — 신뢰축/비트/수렴 판정 (LlmAgent).
구조화 값은 텍스트가 아니라 FunctionTool이 session.state에 직접 기록한다
(output_key 구조화 기대 금지 / output_schema+tools 동시 사용 금지 — CLAUDE.md).
수렴 선언(finish_pocket)은 escalate만 세우고, 최종 전이는 services/pocket.py가 재검증한다.
"""
from __future__ import annotations
from pathlib import Path
from google.adk.agents import LlmAgent
from engine.model import LLM_MODEL
from engine.tools.state.finish_pocket import finish_pocket
from engine.tools.state.mark_beat import mark_beat
from engine.tools.state.update_trust import update_trust
_INSTRUCTION = Path(__file__).resolve().parents[2] / "instructions" / "director.md"
def create_director(model=None) -> LlmAgent:
return LlmAgent(
name="director",
model=model or LLM_MODEL,
instruction=_INSTRUCTION.read_text(encoding="utf-8"),
tools=[update_trust, mark_beat, finish_pocket],
)