From f7d25272034cf74723031c3e2cfa836db4a93670 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BA=90=E6=96=87=E9=9B=A8?= <41315874+fumiama@users.noreply.github.com> Date: Wed, 7 Jan 2026 00:15:05 +0800 Subject: [PATCH] fix: auto add mem req --- README.md | 4 ++-- agent.go | 5 +++-- prompt_test.go | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 90ec873..1419bc7 100644 --- a/README.md +++ b/README.md @@ -401,9 +401,9 @@ 在收到结果后,你必须要在如下三种情况中做出选择: 1. 需要进一步操作 - - 如还未告知用户,发消息将要执行的任务解释给用户,进入下一轮迭代; + - 如还未告知用户,发消息将要执行的任务解释给用户; - 如已告知,判断: - - 如果任务不是敏感或危险操作,直接调用相应 API 执行,进入下一轮迭代; + - 如果任务不是敏感或危险操作,直接调用相应 API 执行; - 否则,调用 end_action 暂停本次任务的迭代,等待用户确认。下次迭代将从1重新计数。 2. 任务成功完成,不再需要进一步对话,调用 end_action 结束本次任务的迭代; diff --git a/agent.go b/agent.go index 9a0b334..568babb 100644 --- a/agent.go +++ b/agent.go @@ -256,10 +256,11 @@ func (ag *Agent) GetAction(api deepinfra.API, p model.Protocol, grp int64, role err = errors.Wrap(ErrPermissionDenied, r.Action) return default: - if !ag.manualaddreq || !ag.manualaddmem { + autoaddmem := !ag.manualaddmem && r.Action == SVM + if !ag.manualaddreq || autoaddmem { ag.AddRequest(grp, &r) } - if !ag.manualaddmem && r.Action == SVM { + if autoaddmem { txt, err := extractMemory(&r) if err != nil { logrus.Debugln("[goba] GetAction extract memory err:", err) diff --git a/prompt_test.go b/prompt_test.go index 36752ad..42ee652 100644 --- a/prompt_test.go +++ b/prompt_test.go @@ -427,9 +427,9 @@ testchar 在收到结果后,你必须要在如下三种情况中做出选择: 1. 需要进一步操作 - - 如还未告知用户,发消息将要执行的任务解释给用户,进入下一轮迭代; + - 如还未告知用户,发消息将要执行的任务解释给用户; - 如已告知,判断: - - 如果任务不是敏感或危险操作,直接调用相应 API 执行,进入下一轮迭代; + - 如果任务不是敏感或危险操作,直接调用相应 API 执行; - 否则,调用 end_action 暂停本次任务的迭代,等待用户确认。下次迭代将从1重新计数。 2. 任务成功完成,不再需要进一步对话,调用 end_action 结束本次任务的迭代;