MCPcopy Create free account
hub / github.com/AI45Lab/Code / _ensure_session

Method _ensure_session

examples/ahp_agent_monitors_agent.py:102–118  ·  view source on GitHub ↗

懒初始化:第一次请求时才创建 session(避免启动超时)

(self)

Source from the content-addressed store, hash-verified

100 self.stats = {"requests": 0, "allowed": 0, "blocked": 0}
101
102 def _ensure_session(self):
103 """懒初始化:第一次请求时才创建 session(避免启动超时)"""
104 if self.session is not None:
105 return
106 config = find_config()
107 agent = Agent.create(config)
108 import tempfile
109 workspace = tempfile.mkdtemp(prefix="ahp_srv_")
110
111 # 挂载 ahp_skills 目录,让 AHP Server 智能体使用 skill 分析工具调用
112 skill_dir = str(Path(__file__).parent / "ahp_skills")
113 opts = SessionOptions()
114 opts.builtin_skills = False
115 opts.skill_dirs = [skill_dir]
116 opts.permission_policy = PermissionPolicy(default_decision="allow")
117 self.session = agent.session(workspace, opts)
118 log(f"AHP Server Agent 已就绪 (config={config}, skills={skill_dir})")
119
120 def _llm_decide(self, prompt: str) -> Dict[str, Any]:
121 """查询 LLM 并解析 JSON 响应"""

Callers 1

_llm_decideMethod · 0.95

Calls 6

find_configFunction · 0.70
logFunction · 0.70
SessionOptionsClass · 0.50
PermissionPolicyClass · 0.50
createMethod · 0.45
sessionMethod · 0.45

Tested by

no test coverage detected