From 6daac161908313ea4cc9823e7046f9324f32db99 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Sun, 16 Aug 2026 18:52:52 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20agent=E4=BC=9A=E8=AF=9Ddspy=E5=8A=A0conf?= =?UTF-8?q?irm=E4=BA=8B=E4=BB=B6=E5=A4=84=E7=90=86=E5=88=86=E6=94=AF(?= =?UTF-8?q?=E5=8F=8B=E5=A5=BD=E6=8F=90=E7=A4=BA=E8=80=8C=E9=9D=9E=E5=8E=9F?= =?UTF-8?q?=E5=A7=8BJSON)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- wwwroot/api/agent_chat.dspy | 5 +++++ wwwroot/api/agent_chat_generic.dspy | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/wwwroot/api/agent_chat.dspy b/wwwroot/api/agent_chat.dspy index cbd5a86..213aaf9 100644 --- a/wwwroot/api/agent_chat.dspy +++ b/wwwroot/api/agent_chat.dspy @@ -100,6 +100,11 @@ if action == 'send_message': yield json.dumps({"content": data.get('message', '')}, ensure_ascii=False) + '\n' elif t == 'ask_user': yield json.dumps({"content": "❓ " + data.get('message', '')}, ensure_ascii=False) + '\n' + elif t == 'confirm': + _tool = data.get('tool', '') + _params = data.get('params', {}) or {} + _cmd = _params.get('command', '') if isinstance(_params, dict) else '' + yield json.dumps({"content": "⚠️ 需要你确认执行命令:`" + str(_cmd)[:120] + "`\n请回复「确认」执行,或「取消」放弃。"}, ensure_ascii=False) + '\n' elif t == 'error': yield json.dumps({"error": data.get('message', '')}, ensure_ascii=False) + '\n' else: diff --git a/wwwroot/api/agent_chat_generic.dspy b/wwwroot/api/agent_chat_generic.dspy index 3cfa1d8..49621c8 100644 --- a/wwwroot/api/agent_chat_generic.dspy +++ b/wwwroot/api/agent_chat_generic.dspy @@ -38,6 +38,11 @@ if action == 'send_message': yield json.dumps({"content": data.get('message', '')}, ensure_ascii=False) + '\n' elif t == 'ask_user': yield json.dumps({"content": "❓ " + data.get('message', '')}, ensure_ascii=False) + '\n' + elif t == 'confirm': + _tool = data.get('tool', '') + _params = data.get('params', {}) or {} + _cmd = _params.get('command', '') if isinstance(_params, dict) else '' + yield json.dumps({"content": "⚠️ 需要你确认执行命令:`" + str(_cmd)[:120] + "`\n请回复「确认」执行,或「取消」放弃。"}, ensure_ascii=False) + '\n' elif t == 'error': yield json.dumps({"error": data.get('message', '')}, ensure_ascii=False) + '\n' else: