mirror of
https://wget.la/https://github.com/leookun/cursor-byok
synced 2026-08-18 12:07:02 +08:00
v0.3.8
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package forwarder
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
runtimecore "cursor/internal/backend/agent/core"
|
||||
)
|
||||
|
||||
func (service *Service) sanitizeCreatePlanInvocationForCurrentPlan(stream *ActiveStream, invocation runtimecore.ToolInvocation) (runtimecore.ToolInvocation, error) {
|
||||
if strings.TrimSpace(invocation.ToolName) != "CreatePlan" {
|
||||
return invocation, nil
|
||||
}
|
||||
args, err := runtimecore.DecodeCreatePlanArgsJSON(invocation.ArgsJSON)
|
||||
if err != nil {
|
||||
return invocation, newRecoverableToolInvocationError(fmt.Errorf("decode CreatePlan args failed: %w", err))
|
||||
}
|
||||
if strings.TrimSpace(args.GetName()) == "" {
|
||||
return invocation, nil
|
||||
}
|
||||
conversation, _, _, err := service.snapshotCheckpointConversation(stream)
|
||||
if err != nil {
|
||||
return invocation, err
|
||||
}
|
||||
if !hasCurrentPlan(conversation) {
|
||||
return invocation, nil
|
||||
}
|
||||
args.Name = ""
|
||||
sanitized, err := json.Marshal(args)
|
||||
if err != nil {
|
||||
return invocation, newRecoverableToolInvocationError(fmt.Errorf("encode sanitized CreatePlan args failed: %w", err))
|
||||
}
|
||||
invocation.ArgsJSON = sanitized
|
||||
return invocation, nil
|
||||
}
|
||||
Reference in New Issue
Block a user