summaryrefslogtreecommitdiffhomepage
path: root/internal/llm/agent
diff options
context:
space:
mode:
Diffstat (limited to 'internal/llm/agent')
-rw-r--r--internal/llm/agent/mcp-tools.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/internal/llm/agent/mcp-tools.go b/internal/llm/agent/mcp-tools.go
index 16dddc1ba..53aada33f 100644
--- a/internal/llm/agent/mcp-tools.go
+++ b/internal/llm/agent/mcp-tools.go
@@ -80,9 +80,14 @@ func runTool(ctx context.Context, c MCPClient, toolName string, input string) (t
}
func (b *mcpTool) Run(ctx context.Context, params tools.ToolCall) (tools.ToolResponse, error) {
+ sessionID, messageID := tools.GetContextValues(ctx)
+ if sessionID == "" || messageID == "" {
+ return tools.ToolResponse{}, fmt.Errorf("session ID and message ID are required for creating a new file")
+ }
permissionDescription := fmt.Sprintf("execute %s with the following parameters: %s", b.Info().Name, params.Input)
p := b.permissions.Request(
permission.CreatePermissionRequest{
+ SessionID: sessionID,
Path: config.WorkingDirectory(),
ToolName: b.Info().Name,
Action: "execute",