diff --git a/README.md b/README.md index 7d7f988..055cdcc 100644 --- a/README.md +++ b/README.md @@ -1214,3 +1214,5 @@ MIT License - [ChatWindow.AgentEventRendering.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.AgentEventRendering.cs)에 `AppendAgentEventPresentationMeta(...)`와 공통 chip helper를 추가해, 권한 요청/도구 결과 metadata를 실제 transcript 카드에 반영했다. - 권한 요청 이벤트는 이제 `ActionHint`, `Severity`, `RequiresPreview`를 이용해 `미리보기 권장`, `주의 필요`, `검토 권장` 같은 보조 chip과 안내 문구를 보여준다. - 도구 결과 이벤트는 `FollowUpHint`, `NeedsAttention`, `StatusKind`를 이용해 `확인 필요`, `승인 후 계속`, `후속 점검` 같은 후속 행동 중심 안내를 transcript 안에서 바로 보여주도록 정리했다. +- 업데이트: 2026-04-06 13:08 (KST) + - 같은 metadata가 모두 회색 chip으로 보이던 부분을 보강했다. [ChatWindow.AgentEventRendering.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.AgentEventRendering.cs) 의 보조 chip 색을 `주의 필요=빨강`, `검토 권장/후속 점검=앰버`, `미리보기 권장=파랑`, `승인 후 계속=오렌지`로 나눠, 권한 요청과 도구 결과 상태가 시각적으로도 더 즉시 구분되게 맞췄다. diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 6985af7..00c54d5 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -4946,3 +4946,4 @@ ow + toggle ?쒓컖 ?몄뼱濡??ㅼ떆 ?뺣젹?덈떎. - Document update: 2026-04-06 11:52 (KST) - Extended `SkillGalleryWindow.xaml.cs` to expose runtime-policy metadata (`model`, `effort`, `execution context`, `agent`, `disable model invocation`, `when to use`) so AX skills are easier to inspect and maintain like `claw-code` bundled skills. - Document update: 2026-04-06 13:01 (KST) - Wired the new permission/result metadata into transcript rendering. `ChatWindow.AgentEventRendering.cs` now appends action-level guidance and attention chips to permission/tool-result event banners instead of using badge labels alone. - Document update: 2026-04-06 13:01 (KST) - Permission events now surface `ActionHint`, `Severity`, and `RequiresPreview` through inline cues such as `미리보기 권장`, `주의 필요`, and `검토 권장`, while tool-result events surface `FollowUpHint`, `NeedsAttention`, and `StatusKind` through cues such as `확인 필요`, `승인 후 계속`, and `후속 점검`. +- Document update: 2026-04-06 13:08 (KST) - Refined the transcript chips to visually differentiate metadata states instead of rendering every cue in the same neutral style. `ChatWindow.AgentEventRendering.cs` now uses blue for preview guidance, red for high-severity attention, amber for review/partial follow-up, and orange for approval-required continuation cues. diff --git a/src/AxCopilot/Views/ChatWindow.AgentEventRendering.cs b/src/AxCopilot/Views/ChatWindow.AgentEventRendering.cs index f7ec878..01b0558 100644 --- a/src/AxCopilot/Views/ChatWindow.AgentEventRendering.cs +++ b/src/AxCopilot/Views/ChatWindow.AgentEventRendering.cs @@ -104,14 +104,29 @@ public partial class ChatWindow guidance = permissionPresentation.ActionHint; if (permissionPresentation.RequiresPreview) - chipRow.Children.Add(CreateAgentMetaChip("미리보기 권장", "\uE8A7", secondaryText, hintBg, borderColor)); + chipRow.Children.Add(CreateAgentMetaChip( + "미리보기 권장", + "\uE8A7", + BrushFromHex("#1D4ED8"), + BrushFromHex("#EFF6FF"), + BrushFromHex("#BFDBFE"))); if (evt.Type == AgentEventType.PermissionRequest) { if (string.Equals(permissionPresentation.Severity, "high", StringComparison.OrdinalIgnoreCase)) - chipRow.Children.Add(CreateAgentMetaChip("주의 필요", "\uE814", secondaryText, hintBg, borderColor)); + chipRow.Children.Add(CreateAgentMetaChip( + "주의 필요", + "\uE814", + BrushFromHex("#B91C1C"), + BrushFromHex("#FEF2F2"), + BrushFromHex("#FECACA"))); else if (string.Equals(permissionPresentation.Severity, "medium", StringComparison.OrdinalIgnoreCase)) - chipRow.Children.Add(CreateAgentMetaChip("검토 권장", "\uE946", secondaryText, hintBg, borderColor)); + chipRow.Children.Add(CreateAgentMetaChip( + "검토 권장", + "\uE946", + BrushFromHex("#A16207"), + BrushFromHex("#FFFBEB"), + BrushFromHex("#FDE68A"))); } } @@ -120,12 +135,27 @@ public partial class ChatWindow guidance = toolResultPresentation.FollowUpHint; if (toolResultPresentation.NeedsAttention) - chipRow.Children.Add(CreateAgentMetaChip("확인 필요", "\uE814", secondaryText, hintBg, borderColor)); + chipRow.Children.Add(CreateAgentMetaChip( + "확인 필요", + "\uE814", + BrushFromHex("#B91C1C"), + BrushFromHex("#FEF2F2"), + BrushFromHex("#FECACA"))); if (string.Equals(toolResultPresentation.StatusKind, "approval_required", StringComparison.OrdinalIgnoreCase)) - chipRow.Children.Add(CreateAgentMetaChip("승인 후 계속", "\uE8D7", secondaryText, hintBg, borderColor)); + chipRow.Children.Add(CreateAgentMetaChip( + "승인 후 계속", + "\uE8D7", + BrushFromHex("#C2410C"), + BrushFromHex("#FFF7ED"), + BrushFromHex("#FED7AA"))); else if (string.Equals(toolResultPresentation.StatusKind, "partial", StringComparison.OrdinalIgnoreCase)) - chipRow.Children.Add(CreateAgentMetaChip("후속 점검", "\uE7BA", secondaryText, hintBg, borderColor)); + chipRow.Children.Add(CreateAgentMetaChip( + "후속 점검", + "\uE7BA", + BrushFromHex("#A16207"), + BrushFromHex("#FFFBEB"), + BrushFromHex("#FDE68A"))); } if (!string.IsNullOrWhiteSpace(guidance))