using System.IO; using System.Text.Json; namespace AxCopilot.Services.Agent; public sealed class ExitPlanModeTool : IAgentTool { public string Name => "exit_plan_mode"; public string Description => "Disable plan mode marker for current workspace."; public ToolParameterSchema Parameters => new() { Properties = new(), Required = [] }; public Task ExecuteAsync(JsonElement args, AgentContext context, CancellationToken ct = default) { if (string.IsNullOrWhiteSpace(context.WorkFolder) || !Directory.Exists(context.WorkFolder)) return Task.FromResult(ToolResult.Fail("valid WorkFolder is required.")); var path = Path.Combine(context.WorkFolder, ".ax", "plan_mode.state"); if (File.Exists(path)) File.Delete(path); return Task.FromResult(ToolResult.Ok("Plan mode disabled.")); } }