Files
AX-Copilot-Codex/src/AxCopilot/Views/AgentSettingsWindow.xaml
lacvet f9d18fba08
Some checks failed
Release Gate / gate (push) Has been cancelled
AX Agent 폴더 데이터 활용 사용자 옵션 제거 및 자동 정책 고정
- 코워크/코드의 폴더 내 문서 활용을 사용자 설정에서 제거하고 탭별 자동 정책으로 고정
- ChatWindow 하단 데이터 활용 버튼과 AX Agent 내부 설정 row, 메인 설정/구형 설정창의 관련 UI 제거
- Chat/Cowork/Code 탭별 자동 데이터 활용 정책을 none/passive/active로 고정하고 저장 경로에서 사용자 선택값 반영 제거
- README와 DEVELOPMENT 문서에 변경 이력 및 적용 기준 반영
- 검증: dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\verify\ -p:IntermediateOutputPath=obj\verify\ (경고 0 / 오류 0)
2026-04-05 23:06:38 +09:00

1058 lines
66 KiB
XML

<Window x:Class="AxCopilot.Views.AgentSettingsWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="AX Agent 설정"
Width="780"
Height="760"
MinWidth="700"
MinHeight="580"
WindowStyle="None"
ResizeMode="CanResizeWithGrip"
Background="{DynamicResource LauncherBackground}"
WindowStartupLocation="CenterOwner"
ShowInTaskbar="False">
<Window.Resources>
<Style x:Key="OutlineHoverBtn" TargetType="Button">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/>
<Setter Property="Foreground" Value="{DynamicResource PrimaryText}"/>
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="Padding" Value="9,5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border x:Name="Bd"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="8"
Padding="{TemplateBinding Padding}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="Bd" Property="Background" Value="{DynamicResource ItemHoverBackground}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ToggleSwitch" TargetType="CheckBox">
<Setter Property="Cursor" Value="Hand"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="CheckBox">
<Grid Width="46" Height="26" VerticalAlignment="Center">
<Border x:Name="Track"
Width="46"
Height="26"
CornerRadius="13"
Background="#D0D0E0"/>
<Ellipse x:Name="Thumb"
Width="20"
Height="20"
Margin="3,0,0,0"
HorizontalAlignment="Left"
VerticalAlignment="Center"
Fill="White">
<Ellipse.Effect>
<DropShadowEffect BlurRadius="5" ShadowDepth="1" Opacity="0.25" Direction="270"/>
</Ellipse.Effect>
</Ellipse>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="Track" Property="Background" Value="{DynamicResource AccentColor}"/>
<Setter TargetName="Thumb" Property="HorizontalAlignment" Value="Right"/>
<Setter TargetName="Thumb" Property="Margin" Value="0,0,3,0"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="HelpTooltipStyle" TargetType="ToolTip">
<Setter Property="Background" Value="#1F2937"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="BorderBrush" Value="#3B82F6"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Padding" Value="12,10"/>
<Setter Property="FontSize" Value="12"/>
<Setter Property="HasDropShadow" Value="True"/>
<Setter Property="Placement" Value="Mouse"/>
</Style>
</Window.Resources>
<Border Background="{DynamicResource LauncherBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1">
<Grid Visibility="Collapsed">
<Grid.RowDefinitions>
<RowDefinition Height="48"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="56"/>
</Grid.RowDefinitions>
<Border Grid.Row="0"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource SeparatorColor}"
BorderThickness="0,0,0,1">
<Grid Margin="14,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="AX Agent 설정"
FontSize="14"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Grid.Column="1"
Cursor="Hand"
Padding="8,4"
CornerRadius="8"
Background="Transparent"
MouseLeftButtonUp="BtnClose_MouseLeftButtonUp">
<TextBlock Text="닫기"
Foreground="{DynamicResource SecondaryText}"
FontSize="12"/>
</Border>
</Grid>
</Border>
<Border Grid.Row="1"
Background="{DynamicResource LauncherBackground}"
BorderBrush="{DynamicResource SeparatorColor}"
BorderThickness="0,0,0,1">
<WrapPanel Margin="18,12,18,10">
<Border x:Name="AgentTabBasicCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,8,0"
MouseLeftButtonUp="AgentTabBasicCard_MouseLeftButtonUp">
<TextBlock Text="기본" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="AgentTabChatCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,8,0"
MouseLeftButtonUp="AgentTabChatCard_MouseLeftButtonUp">
<TextBlock Text="채팅" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="AgentTabCoworkCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,8,0"
MouseLeftButtonUp="AgentTabCoworkCard_MouseLeftButtonUp">
<TextBlock Text="코워크" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="AgentTabCodeCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,8,0"
MouseLeftButtonUp="AgentTabCodeCard_MouseLeftButtonUp">
<TextBlock Text="코드" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="AgentTabDevCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,8,0"
MouseLeftButtonUp="AgentTabDevCard_MouseLeftButtonUp">
<TextBlock Text="개발자" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="AgentTabToolsCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,8,0"
MouseLeftButtonUp="AgentTabToolsCard_MouseLeftButtonUp">
<TextBlock Text="도구" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="AgentTabEtcCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
MouseLeftButtonUp="AgentTabEtcCard_MouseLeftButtonUp">
<TextBlock Text="스킬/차단" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
</WrapPanel>
</Border>
<ScrollViewer Grid.Row="2"
VerticalScrollBarVisibility="Auto"
HorizontalScrollBarVisibility="Disabled">
<StackPanel Margin="18,14,18,16">
<StackPanel x:Name="PanelBasic">
<TextBlock Text="기본 상태"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<Grid Margin="0,8,0,0" Visibility="Collapsed">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Margin="0,0,12,0">
<TextBlock Text="AX Agent 사용"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
<TextBlock Text="비활성화하면 AX Agent 대화와 관련 설정이 숨겨집니다."
Foreground="{DynamicResource SecondaryText}"
FontSize="11"
Margin="0,2,0,0"/>
</StackPanel>
<CheckBox x:Name="ChkAiEnabled"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0" Visibility="Collapsed">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Margin="0,0,12,0">
<TextBlock Text="표현 수준"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
<TextBlock Text="계획, 승인 카드, 보조 설명의 정보 밀도를 조정합니다."
Foreground="{DynamicResource SecondaryText}"
FontSize="11"
Margin="0,2,0,0"/>
</StackPanel>
<WrapPanel Grid.Column="1">
<Border x:Name="DisplayModeRichCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,6,0"
MouseLeftButtonUp="DisplayModeRichCard_MouseLeftButtonUp">
<TextBlock Text="풍부하게" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="DisplayModeBalancedCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
Margin="0,0,6,0"
MouseLeftButtonUp="DisplayModeBalancedCard_MouseLeftButtonUp">
<TextBlock Text="적절하게" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="DisplayModeSimpleCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,7"
MouseLeftButtonUp="DisplayModeSimpleCard_MouseLeftButtonUp">
<TextBlock Text="간단하게" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
</WrapPanel>
</Grid>
<Border Height="1" Margin="0,10,0,10" Background="{DynamicResource SeparatorColor}"/>
<TextBlock Text="테마"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<WrapPanel Margin="0,8,0,0">
<Border x:Name="ThemeSystemCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,8"
Margin="0,0,8,8"
MouseLeftButtonUp="ThemeSystemCard_MouseLeftButtonUp">
<TextBlock Text="System" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="ThemeLightCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,8"
Margin="0,0,8,8"
MouseLeftButtonUp="ThemeLightCard_MouseLeftButtonUp">
<TextBlock Text="Light" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="ThemeDarkCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,8"
Margin="0,0,8,8"
MouseLeftButtonUp="ThemeDarkCard_MouseLeftButtonUp">
<TextBlock Text="Dark" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
</WrapPanel>
<Border Height="1" Margin="0,10,0,10" Background="{DynamicResource SeparatorColor}"/>
</StackPanel>
<StackPanel x:Name="PanelChat">
<TextBlock Text="모델 및 연결"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<TextBlock Text="서비스를 선택하고 모델, 연결 옵션, 운영 모드를 조정합니다."
Margin="0,4,0,10"
FontSize="11"
Foreground="{DynamicResource SecondaryText}"/>
<WrapPanel>
<Border x:Name="SvcOllamaCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,8"
Margin="0,0,8,8"
MouseLeftButtonUp="SvcOllamaCard_MouseLeftButtonUp">
<TextBlock Text="Ollama" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="SvcVllmCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,8"
Margin="0,0,8,8"
MouseLeftButtonUp="SvcVllmCard_MouseLeftButtonUp">
<TextBlock Text="vLLM" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="SvcGeminiCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,8"
Margin="0,0,8,8"
MouseLeftButtonUp="SvcGeminiCard_MouseLeftButtonUp">
<TextBlock Text="Gemini" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
<Border x:Name="SvcClaudeCard"
Cursor="Hand"
CornerRadius="10"
BorderThickness="1"
BorderBrush="{DynamicResource BorderColor}"
Padding="10,8"
Margin="0,0,8,8"
MouseLeftButtonUp="SvcClaudeCard_MouseLeftButtonUp">
<TextBlock Text="Claude" FontSize="12" Foreground="{DynamicResource PrimaryText}"/>
</Border>
</WrapPanel>
<TextBox x:Name="ModelInput"
Visibility="Collapsed"
Margin="0,6,0,8"
Padding="8,6"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
<WrapPanel x:Name="ModelChipPanel" Margin="0,0,0,8"/>
<Grid Margin="0,6,0,0" Visibility="Collapsed">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="vLLM SSL 인증서 검증 우회 허용"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<CheckBox x:Name="ChkVllmAllowInsecureTls"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0" Visibility="Collapsed">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="운영 모드"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">
사내 모드는 외부 검색, 외부 URL 열기, 외부 HTTP 호출을 제한합니다.
<LineBreak/>사외 모드는 외부 연동이 필요한 작업까지 허용합니다.
</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<Button x:Name="BtnOperationMode"
Grid.Column="1"
MinWidth="140"
Style="{StaticResource OutlineHoverBtn}"
Click="BtnOperationMode_Click"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="기본 출력 형식"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">
결과물을 어떤 문서 형태로 우선 제안할지 정합니다.
<LineBreak/>AI 자동으로 두면 요청 성격에 맞는 형식을 먼저 고릅니다.
</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<Button x:Name="BtnDefaultOutputFormat"
Grid.Column="1"
MinWidth="140"
Style="{StaticResource OutlineHoverBtn}"
Click="BtnDefaultOutputFormat_Click"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="기본 디자인 무드"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">
HTML 미리보기나 문서형 결과물에서 기본으로 쓸 시각 스타일입니다.
</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<Button x:Name="BtnDefaultMood"
Grid.Column="1"
MinWidth="140"
Style="{StaticResource OutlineHoverBtn}"
Click="BtnDefaultMood_Click"/>
</Grid>
<Border Height="1" Margin="0,10,0,10" Background="{DynamicResource SeparatorColor}"/>
</StackPanel>
<StackPanel x:Name="PanelCowork" Visibility="Collapsed">
<TextBlock Text="권한 및 실행"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="권한 모드"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="320">
파일 읽기, 수정, 실행 요청을 얼마나 자주 승인받을지 정합니다.
<LineBreak/>보수적으로 둘수록 안전하고, 자동 승인 계열일수록 빠르게 진행됩니다.
</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<Button x:Name="BtnPermissionMode"
Grid.Column="1"
MinWidth="120"
Style="{StaticResource OutlineHoverBtn}"
Click="BtnPermissionMode_Click"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="추론 강도"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">
답을 만들기 전에 얼마나 많이 따져보고 진행할지 정합니다.
</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<Button x:Name="BtnReasoningMode"
Grid.Column="1"
MinWidth="120"
Style="{StaticResource OutlineHoverBtn}"
Click="BtnReasoningMode_Click"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="Cowork 검증 강제"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableCoworkVerification"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="프로젝트 규칙 자동 반영"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableProjectRules"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="에이전트 메모리 사용"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableAgentMemory"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="최대 Agent Pass"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="320">
한 번의 작업에서 에이전트가 계획, 실행, 확인 단계를 반복할 수 있는 최대 횟수입니다.
</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<TextBox x:Name="TxtMaxAgentIterations"
Grid.Column="1"
Padding="8,5"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
</Grid>
</StackPanel>
<StackPanel x:Name="PanelCode" Visibility="Collapsed">
<TextBlock Text="코드 실행"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="Code 검증 강제"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableCodeVerification"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="병렬 도구 실행"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableParallelTools"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="Worktree 도구"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableWorktreeTools"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="Team 도구"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableTeamTools"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="Cron 도구"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableCronTools"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
</StackPanel>
<StackPanel x:Name="PanelDev" Visibility="Collapsed">
<Border Height="1" Margin="0,10,0,10" Background="{DynamicResource SeparatorColor}"/>
<TextBlock Text="컨텍스트 및 오류 관리"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="자동 컨텍스트 압축 사용"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<CheckBox x:Name="ChkEnableProactiveCompact"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<TextBlock Text="압축 시작 한도(%)"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<TextBox x:Name="TxtContextCompactTriggerPercent"
Grid.Column="1"
Padding="8,5"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="최대 컨텍스트 토큰"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="280">한 번의 응답 생성에 넘겨줄 최대 문맥 크기입니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<TextBox x:Name="TxtMaxContextTokens"
Grid.Column="1"
Padding="8,5"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="오류 재시도 횟수"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="280">도구 실행 실패 시 자동으로 다시 시도할 최대 횟수입니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<TextBox x:Name="TxtMaxRetryOnError"
Grid.Column="1"
Padding="8,5"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
</Grid>
</StackPanel>
<StackPanel x:Name="PanelTools" Visibility="Collapsed">
<TextBlock Text="도구 및 검증"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="스킬 시스템"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">슬래시 명령으로 재사용 가능한 작업 템플릿을 불러오는 기능입니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<CheckBox x:Name="ChkEnableSkillSystem"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="도구 훅 사용"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">특정 도구 실행 전후에 스크립트를 자동으로 호출하는 확장 기능입니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<CheckBox x:Name="ChkEnableToolHooks"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="입력 변형 반영"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableHookInputMutation"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="권한 갱신 반영"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<CheckBox x:Name="ChkEnableHookPermissionUpdate"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Border Height="1" Margin="0,12,0,12" Background="{DynamicResource SeparatorColor}"/>
<TextBlock Text="도구 노출"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<TextBlock Text="AX Agent에 노출할 도구를 내부 설정에서 바로 켜고 끕니다."
Margin="0,4,0,8"
FontSize="11"
Foreground="{DynamicResource SecondaryText}"/>
<StackPanel x:Name="ToolCardsPanel"/>
<Border Height="1" Margin="0,12,0,12" Background="{DynamicResource SeparatorColor}"/>
<TextBlock Text="도구 훅"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<StackPanel x:Name="HookListPanel" Margin="0,8,0,0"/>
<Button Content="훅 추가"
HorizontalAlignment="Left"
Margin="0,8,0,0"
Style="{StaticResource OutlineHoverBtn}"
Click="BtnAddHook_Click"/>
</StackPanel>
<StackPanel x:Name="PanelEtc" Visibility="Collapsed">
<TextBlock Text="스킬/차단"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<TextBlock Text="스킬 폴더와 슬래시/드래그 동작, 폴백 모델과 MCP 서버를 관리합니다."
Margin="0,4,0,8"
FontSize="11"
Foreground="{DynamicResource SecondaryText}"/>
<Grid Margin="0,8,0,0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="스킬 폴더"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="320">추가 스킬을 읽어올 폴더입니다. `.skill.md` 또는 `SKILL.md` 파일을 두면 저장 후 다시 불러옵니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<TextBox x:Name="TxtSkillsFolderPath"
Grid.Row="1"
Grid.Column="0"
Margin="0,8,0,0"
Padding="8,5"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
<Button Grid.Column="1"
Grid.Row="1"
Margin="8,0,0,0"
Style="{StaticResource OutlineHoverBtn}"
Content="찾아보기"
Click="BtnBrowseSkillFolder_Click"/>
<Button Grid.Column="2"
Grid.Row="1"
Margin="8,0,0,0"
Style="{StaticResource OutlineHoverBtn}"
Content="열기"
Click="BtnOpenSkillFolder_Click"/>
</Grid>
<Border Height="1" Margin="0,12,0,12" Background="{DynamicResource SeparatorColor}"/>
<TextBlock Text="로드된 스킬"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<TextBlock Text="현재 AX Agent에서 사용할 수 있는 슬래시 스킬 목록입니다."
Margin="0,4,0,8"
FontSize="11"
Foreground="{DynamicResource SecondaryText}"/>
<StackPanel x:Name="SkillListPanel"/>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="슬래시 팝업 표시 개수"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">`/` 입력 시 한 번에 보여줄 명령과 스킬 개수입니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<TextBox x:Name="TxtSlashPopupPageSize"
Grid.Column="1"
Padding="8,5"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1"
Foreground="{DynamicResource PrimaryText}"
FontSize="12"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="드래그 앤 드롭 AI 액션"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">파일을 끌어놓았을 때 AI 작업 추천과 첨부 보조 동작을 보여줍니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<CheckBox x:Name="ChkEnableDragDropAiActions"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Grid Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="선택 시 자동 전송"
VerticalAlignment="Center"
Foreground="{DynamicResource PrimaryText}"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="300">추천 액션을 고르면 바로 메시지를 보내 실행까지 이어갑니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<CheckBox x:Name="ChkDragDropAutoSend"
Grid.Column="1"
Style="{StaticResource ToggleSwitch}"/>
</Grid>
<Border Height="1" Margin="0,12,0,12" Background="{DynamicResource SeparatorColor}"/>
<TextBlock Text="폴백 모델"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"/>
<StackPanel x:Name="FallbackModelsPanel" Margin="0,8,0,0"/>
<Border Height="1" Margin="0,12,0,12" Background="{DynamicResource SeparatorColor}"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal">
<TextBlock Text="MCP 서버"
FontSize="13"
FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/>
<Border Width="16" Height="16" CornerRadius="8" Background="{DynamicResource ItemHoverBackground}" Margin="6,0,0,0" Cursor="Help" VerticalAlignment="Center">
<TextBlock Text="?" FontSize="10" FontWeight="Bold" Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
<Border.ToolTip>
<ToolTip Style="{StaticResource HelpTooltipStyle}">
<TextBlock TextWrapping="Wrap" Foreground="White" FontSize="12" LineHeight="18" MaxWidth="320">외부 도구 서버를 연결해 AX Agent가 브라우저나 파일시스템 같은 확장 기능을 사용할 수 있게 합니다.</TextBlock>
</ToolTip>
</Border.ToolTip>
</Border>
</StackPanel>
<Button Grid.Column="1"
Style="{StaticResource OutlineHoverBtn}"
Content="서버 추가"
Click="BtnAddMcpServer_Click"/>
</Grid>
<StackPanel x:Name="McpServerListPanel" Margin="0,8,0,0"/>
</StackPanel>
</StackPanel>
</ScrollViewer>
<Border Grid.Row="3"
Background="{DynamicResource ItemBackground}"
BorderBrush="{DynamicResource SeparatorColor}"
BorderThickness="0,1,0,0">
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Right"
VerticalAlignment="Center"
Margin="0,0,14,0">
<Button Content="고급 설정 열기"
Style="{StaticResource OutlineHoverBtn}"
Margin="0,0,8,0"
Click="BtnOpenFullSettings_Click"/>
<Button Content="저장"
MinWidth="96"
Margin="0,0,8,0"
Background="{DynamicResource AccentColor}"
Foreground="White"
BorderThickness="0"
Padding="10,6"
Cursor="Hand"
Click="BtnSave_Click"/>
</StackPanel>
</Border>
</Grid>
</Border>
</Window>