From 49ee5f397c7795e8751d2a8f8a737fb52b1a145b Mon Sep 17 00:00:00 2001 From: CD Date: Sat, 7 Mar 2026 01:37:48 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20reviewer=20=ED=83=80=EC=9E=84=EC=95=84?= =?UTF-8?q?=EC=9B=83=20300=EC=B4=88,=20unified=EC=97=90=20workspace=20?= =?UTF-8?q?=EA=B2=BD=EB=A1=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - reviewer agent timeout: 180s → 300s (에이전트 시작 오버헤드 고려) - unified context에 workspace path 명시 → 경로 질문에 정확한 답변 - planner agent timeout 유지: 180s --- api/discord_bot.py | 1 + core/task_pipeline.py | 11 +++++++---- hello.csv | 1 + 3 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 hello.csv diff --git a/api/discord_bot.py b/api/discord_bot.py index 189272b..25fb1e7 100644 --- a/api/discord_bot.py +++ b/api/discord_bot.py @@ -114,6 +114,7 @@ async def _unified_call(text: str, history: str, project_path: str) -> dict: context = ( f"{history}" + f"## Workspace\nPath: {project_path}\n\n" f"## Project Docs\n{docs_index}\n\n" f"## User Message\n{text}" ) diff --git a/core/task_pipeline.py b/core/task_pipeline.py index b5fe145..8a8f727 100644 --- a/core/task_pipeline.py +++ b/core/task_pipeline.py @@ -54,7 +54,7 @@ class TaskPipeline: # ────────────────────────────────────────── async def plan(self, user_request: str) -> dict: - """Planner로 태스크 분해.""" + """Planner로 태스크 분해 (에이전트 모드 — 직접 처리 가능).""" context = self.ctx.gather(user_request) docs_ctx = self._docs_context() @@ -62,10 +62,13 @@ class TaskPipeline: f"## User Request\n{user_request}\n\n" f"## Project Context\n{context}\n\n" f"## Project Docs\n{docs_ctx}\n\n" - f"Decompose this request into concrete tasks." + f"Analyze this request. If simple, handle it directly (direct: true). " + f"If complex, decompose into tasks (direct: false)." ) - response = await self.gemini.call("planner", prompt, timeout=180) + response = await self.gemini.call_agent( + "planner", prompt, cwd=self.project_path, timeout=180, + ) self._log("plan", user_request, response) plan = self._extract_json(response) @@ -183,7 +186,7 @@ class TaskPipeline: ) response = await self.gemini.call_agent( - "reviewer", prompt, cwd=self.project_path, timeout=180, + "reviewer", prompt, cwd=self.project_path, timeout=300, ) self._log("batch_review", f"{len(tasks)} tasks", response) diff --git a/hello.csv b/hello.csv new file mode 100644 index 0000000..557db03 --- /dev/null +++ b/hello.csv @@ -0,0 +1 @@ +Hello World