Forge
csharpdeeb25a2
1#nullable enable
2using CascadeIDE.Features.Chat;
3using CascadeIDE.Models.Intercom;
4
5namespace CascadeIDE.Services;
6
7/// <summary>Форма slash (<c>/build run</c>) у <c>command_id</c> в <see cref="IntentMelodyAliases.BundledRelativePath"/> (ADR 0119).</summary>
8public readonly record struct SlashRouteEntry(
9 string SlashPath,
10 string CommandId,
11 string Help,
12 ChatSlashCommandExecutionKind ExecutionKind = ChatSlashCommandExecutionKind.IdeCommand,
13 string? MfdPage = null,
14 string? PrimarySurface = null,
15 string? MapLevel = null,
16 string? Group = null,
17 SlashCompletionKind Completion = SlashCompletionKind.None,
18 string? ReportHandlerId = null,
19 string? IntercomHandlerId = null,
20 IntercomMessageAudience MessageAudience = IntercomMessageAudience.Channel,
21 bool AutoRunOnCommit = false,
22 bool AutoRunRequiresArgs = true,
23 SlashArgTailKind? ArgTailKindExplicit = null,
24 string Domain = "",
25 string Object = "",
26 string Intent = "",
27 SlashPathRole PathRole = SlashPathRole.Canonical)
28{
29 public SlashSemanticFields SemanticFields => new(Domain, Object, Intent, PathRole);
30}
31
View only · write via MCP/CIDE