From 56a97e917875438224a8fe0ccc0e4b9c7dc351ec Mon Sep 17 00:00:00 2001 From: Snider Date: Sat, 25 Apr 2026 13:34:14 +0100 Subject: [PATCH] =?UTF-8?q?fix(agent/brain):=20AX-6=20sweep=20on=20direct.?= =?UTF-8?q?go=20=E2=80=94=20net/url=20=E2=86=92=20core.URLEncode=20+=20cor?= =?UTF-8?q?e.Join?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit url.Values manipulation replaced with []string builder + core.URLEncode + core.Join("&", params...). net/url import removed. Co-authored-by: Codex Closes tasks.lthn.sh/view.php?id=966 --- pkg/brain/direct.go | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/pkg/brain/direct.go b/pkg/brain/direct.go index a684d8e..06d3032 100644 --- a/pkg/brain/direct.go +++ b/pkg/brain/direct.go @@ -4,7 +4,6 @@ package brain import ( "context" - "net/url" "time" "dappco.re/go/agent/pkg/agentic" @@ -204,23 +203,23 @@ func (s *DirectSubsystem) forget(ctx context.Context, _ *mcp.CallToolRequest, in } func (s *DirectSubsystem) list(ctx context.Context, _ *mcp.CallToolRequest, input ListInput) (*mcp.CallToolResult, ListOutput, error) { - params := url.Values{} + var params []string if input.Project != "" { - params.Set("project", input.Project) + params = append(params, core.Concat("project=", core.URLEncode(input.Project))) } if input.Type != "" { - params.Set("type", input.Type) + params = append(params, core.Concat("type=", core.URLEncode(input.Type))) } if input.AgentID != "" { - params.Set("agent_id", input.AgentID) + params = append(params, core.Concat("agent_id=", core.URLEncode(input.AgentID))) } if input.Limit > 0 { - params.Set("limit", core.Sprint(input.Limit)) + params = append(params, core.Concat("limit=", core.URLEncode(core.Sprint(input.Limit)))) } path := "/v1/brain/list" - if encoded := params.Encode(); encoded != "" { - path = core.Concat(path, "?", encoded) + if len(params) > 0 { + path = core.Concat(path, "?", core.Join("&", params...)) } result := s.apiCall(ctx, "GET", path, nil)