Forge
csharpdeeb25a2
1// <auto-generated/>
2using CascadeIDE.Services;
3
4namespace CascadeIDE.Features.IdeMcp.Execution;
5
6/// <summary>Сгенерированные хендлеры MCP → <see cref="IIdeMcpActions"/> (<c>CascadeIDE.ProtocolDocGen</c>).</summary>
7internal sealed partial class IdeMcpCommandExecutor
8{
9 partial void RegisterGenerated(Action<string, Handler> add)
10 {
11 add(Services.IdeCommands.GetSolutionInfo, async (_, _) => await Task.FromResult(_actions.GetSolutionInfo()));
12 add(Services.IdeCommands.GetIdeState, async (_, _) => await _actions.GetIdeStateAsync());
13 add(Services.IdeCommands.GetCockpitSurface, async (_, _) => await _actions.GetCockpitSurfaceAsync());
14 add(Services.IdeCommands.GetUiModesDiagnostics, async (_, _) => await _actions.GetUiModesDiagnosticsAsync());
15 add(Services.IdeCommands.GetSolutionFiles, async (_, _) => await _actions.GetSolutionFilesAsync());
16 add(Services.IdeCommands.SearchWorkspaceText, async (args, _) => await _actions.SearchWorkspaceTextAsync(McpCommandJsonArgs.String(args, "pattern") ?? "", McpCommandJsonArgs.String(args, "subpath"), McpCommandJsonArgs.Bool(args, "fixed_string"), McpCommandJsonArgs.String(args, "glob"), McpCommandJsonArgs.Int(args, "max_matches", 200), McpCommandJsonArgs.String(args, "rg_path")));
17 add(Services.IdeCommands.SearchWebPublicQuery, async (args, ct) => await _actions.SearchWebPublicQueryAsync(McpCommandJsonArgs.String(args, "query") ?? "", ct));
18 add(Services.IdeCommands.FetchWebPublicUrl, async (args, ct) => await _actions.FetchWebPublicUrlAsync(McpCommandJsonArgs.String(args, "url") ?? "", McpCommandJsonArgs.OptionalInt32(args, "max_chars"), ct));
19 add(Services.IdeCommands.GetCodeNavigationContext, async (args, _) => await _actions.GetCodeNavigationContextAsync(McpCommandJsonArgs.String(args, "mode") ?? "related", McpCommandJsonArgs.String(args, "file_path"), McpCommandJsonArgs.OptionalInt32(args, "line"), McpCommandJsonArgs.OptionalInt32(args, "column"), McpCommandJsonArgs.OptionalInt32(args, "max_related"), McpCommandJsonArgs.OptionalInt32(args, "max_nodes"), McpCommandJsonArgs.OptionalInt32(args, "max_edges"), McpCommandJsonArgs.String(args, "preset"), McpCommandJsonArgs.StringList(args, "include_kinds"), McpCommandJsonArgs.StringList(args, "exclude_kinds"), McpCommandJsonArgs.String(args, "level")));
20 add(Services.IdeCommands.GetCurrentFileDiagnostics, async (_, _) => await _actions.GetCurrentFileDiagnosticsAsync());
21 add(Services.IdeCommands.Build, async (_, _) => await _actions.BuildAsync());
22 add(Services.IdeCommands.BuildStructured, async (_, _) => await _actions.BuildStructuredAsync());
23 add(Services.IdeCommands.RunTests, async (_, _) => await _actions.RunTestsAsync());
24 add(Services.IdeCommands.RunAffectedTests, async (args, _) => await _actions.RunAffectedTestsAsync(McpCommandJsonArgs.StringList(args, "changed_paths")));
25 add(Services.IdeCommands.RunCodeCleanup, async (args, _) => await _actions.RunCodeCleanupAsync(McpCommandJsonArgs.String(args, "include_path")));
26 add(Services.IdeCommands.GetCodeMetrics, async (args, _) => await _actions.GetCodeMetricsAsync(McpCommandJsonArgs.String(args, "scope"), McpCommandJsonArgs.String(args, "path")));
27 add(Services.IdeCommands.CodebaseIndexStatus, async (args, ct) => await _actions.CodebaseIndexStatusAsync(McpCommandJsonArgs.String(args, "workspace_path"), McpCommandJsonArgs.String(args, "solution_path"), ct));
28 add(Services.IdeCommands.CodebaseIndexSearch, async (args, ct) =>
29 {
30 var top = McpCommandJsonArgs.OptionalInt32(args, "top_n") ?? 15;
31 if (top < 1) top = 1;
32 if (top > 128) top = 128;
33 var semantic = McpCommandJsonArgs.OptionalBool(args, "semantic") ?? false;
34 var alpha = McpCommandJsonArgs.OptionalDouble(args, "alpha") ?? 0.65;
35 var beta = McpCommandJsonArgs.OptionalDouble(args, "beta") ?? 0.35;
36 var vecTopK = McpCommandJsonArgs.OptionalInt32(args, "vec_top_k") ?? 30;
37 return await _actions.CodebaseIndexSearchAsync(
38 McpCommandJsonArgs.String(args, "workspace_path"),
39 McpCommandJsonArgs.String(args, "solution_path"),
40 McpCommandJsonArgs.String(args, "query") ?? "",
41 top,
42 McpCommandJsonArgs.String(args, "path_prefix"),
43 McpCommandJsonArgs.StringList(args, "exclude_path_prefixes"),
44 McpCommandJsonArgs.StringList(args, "extensions"),
45 semantic,
46 alpha,
47 beta,
48 vecTopK,
49 ct);
50 });
51 add(Services.IdeCommands.CodebaseIndexExplain, async (args, ct) =>
52 {
53 var hitId = McpCommandJsonArgs.OptionalInt64(args, "hit_id");
54 if (hitId is null) return "{\"error\":\"missing_hit_id\"}";
55 return await _actions.CodebaseIndexExplainAsync(
56 McpCommandJsonArgs.String(args, "workspace_path"),
57 McpCommandJsonArgs.String(args, "solution_path"),
58 hitId.Value,
59 ct);
60 });
61 add(Services.IdeCommands.CodebaseIndexReindex, async (args, ct) => await _actions.CodebaseIndexReindexAsync(
62 McpCommandJsonArgs.String(args, "workspace_path"),
63 McpCommandJsonArgs.String(args, "solution_path"),
64 McpCommandJsonArgs.Bool(args, "full_rebuild"),
65 ct));
66 add(Services.IdeCommands.GitStatus, async (_, _) => await _actions.GitStatusAsync());
67 add(Services.IdeCommands.GitDiff, async (args, _) => await _actions.GitDiffAsync(McpCommandJsonArgs.String(args, "path"), McpCommandJsonArgs.Bool(args, "staged")));
68 add(Services.IdeCommands.GitLog, async (args, _) => await _actions.GitLogAsync(McpCommandJsonArgs.Int(args, "n", 20)));
69 add(Services.IdeCommands.GitFetch, async (args, _) => await _actions.GitFetchAsync(McpCommandJsonArgs.String(args, "remote"), McpCommandJsonArgs.Bool(args, "all"), McpCommandJsonArgs.Bool(args, "prune")));
70 add(Services.IdeCommands.GitPull, async (args, _) => await _actions.GitPullAsync(McpCommandJsonArgs.String(args, "remote"), McpCommandJsonArgs.String(args, "branch"), McpCommandJsonArgs.Bool(args, "ff_only", true)));
71 add(Services.IdeCommands.GitBranch, async (args, _) => await _actions.GitBranchAsync(McpCommandJsonArgs.String(args, "action"), McpCommandJsonArgs.String(args, "name"), McpCommandJsonArgs.String(args, "start_point"), McpCommandJsonArgs.Bool(args, "force")));
72 add(Services.IdeCommands.GitShow, async (args, _) =>
73 {
74 var rev = McpCommandJsonArgs.String(args, "rev") ?? "";
75 if (string.IsNullOrWhiteSpace(rev)) return "Missing rev";
76 return await _actions.GitShowAsync(rev, McpCommandJsonArgs.String(args, "path"), McpCommandJsonArgs.Bool(args, "stat_only"));
77 });
78 add(Services.IdeCommands.GitSubmodule, async (args, _) => await _actions.GitSubmoduleAsync(McpCommandJsonArgs.String(args, "action"), McpCommandJsonArgs.String(args, "path"), McpCommandJsonArgs.Bool(args, "recursive", true)));
79 add(Services.IdeCommands.GitCommit, async (args, _) =>
80 {
81 if (string.IsNullOrWhiteSpace(McpCommandJsonArgs.String(args, "message"))) return "Missing message";
82 return await _actions.GitCommitAsync(McpCommandJsonArgs.String(args, "message")!, McpCommandJsonArgs.StringList(args, "paths"));
83 });
84 add(Services.IdeCommands.GitPush, async (args, _) => await _actions.GitPushAsync(McpCommandJsonArgs.String(args, "remote"), McpCommandJsonArgs.String(args, "branch")));
85 add(Services.IdeCommands.GetBuildOutput, async (_, _) => await Task.FromResult(_actions.GetBuildOutput()));
86 add(Services.IdeCommands.GetUiTheme, async (_, _) => await Task.FromResult(_actions.GetUiTheme()));
87 add(Services.IdeCommands.SetUiTheme, async (args, _) => await _actions.SetUiThemeAsync(McpCommandJsonArgs.String(args, "theme") ?? ""));
88 add(Services.IdeCommands.GetUiLayout, async (_, _) => await _actions.GetUiLayoutAsync());
89 add(Services.IdeCommands.GetColorsUnderCursor, async (_, _) => await _actions.GetColorsUnderCursorAsync());
90 add(Services.IdeCommands.GetControlAppearance, async (args, _) => await _actions.GetControlAppearanceAsync(McpCommandJsonArgs.String(args, "name")));
91 add(Services.IdeCommands.SetControlLayout, async (args, _) =>
92 {
93 if (args is null || string.IsNullOrEmpty(McpCommandJsonArgs.String(args, "name"))) return "Missing name or layout";
94 return await _actions.SetControlLayoutAsync(McpCommandJsonArgs.String(args, "name")!, McpCommandJsonArgs.String(args, "layout") ?? "{}" );
95 });
96 add(Services.IdeCommands.SetControlText, async (args, _) => await _actions.SetControlTextAsync(McpCommandJsonArgs.String(args, "name") ?? "", McpCommandJsonArgs.String(args, "text") ?? ""));
97 add(Services.IdeCommands.ClickControl, async (args, _) => await _actions.ClickControlAsync(McpCommandJsonArgs.String(args, "name")));
98 add(Services.IdeCommands.SendKeys, async (args, _) => await _actions.SendKeysAsync(McpCommandJsonArgs.String(args, "name"), McpCommandJsonArgs.String(args, "keys") ?? ""));
99 add(Services.IdeCommands.SetFocus, async (args, _) => await _actions.SetFocusAsync(McpCommandJsonArgs.String(args, "name")));
100 add(Services.IdeCommands.HighlightControl, async (args, _) => await _actions.HighlightControlAsync(McpCommandJsonArgs.String(args, "name")));
101 add(Services.IdeCommands.SetPanelSize, async (args, _) =>
102 {
103 double? w = args is not null && args.TryGetValue("width", out var pw) && pw.TryGetDouble(out var wv) ? wv : null;
104 double? h = args is not null && args.TryGetValue("height", out var ph) && ph.TryGetDouble(out var hv) ? hv : null;
105 return await _actions.SetPanelSizeAsync(McpCommandJsonArgs.String(args, "panel") ?? "", w, h);
106 });
107 add(Services.IdeCommands.GetSupportedEditorLanguages, async (_, _) => await Task.FromResult(_actions.GetSupportedEditorLanguages()));
108 add(Services.IdeCommands.ChatExportReadable, async (args, _) => await _actions.ExportChatReadableAsync(McpCommandJsonArgs.Bool(args, "write_file", false), McpCommandJsonArgs.String(args, "file_name")));
109 }
110}
111
View only · write via MCP/CIDE