AX Agent 진행 시간·글로우 경로 정리 및 최근 로컬 변경 일괄 반영
- AX Agent 스트리밍 경과 시간을 공용 helper로 통일해 비정상적인 수천만 시간 표시를 방지함 - 채팅 입력창 글로우를 런처와 같은 표시/숨김 중심의 얇은 외곽 글로우로 정리하고 런처 글로우 설정은 일반 설정에 유지함 - README와 DEVELOPMENT 문서를 2026-04-08 12:02 (KST) 기준으로 갱신하고 Release 빌드 경고 0 / 오류 0을 확인함
This commit is contained in:
@@ -36,17 +36,16 @@ public class ClipboardTool : IAgentTool
|
||||
Required = ["action"],
|
||||
};
|
||||
|
||||
public Task<ToolResult> ExecuteAsync(JsonElement args, AgentContext context, CancellationToken ct = default)
|
||||
public async Task<ToolResult> ExecuteAsync(JsonElement args, AgentContext context, CancellationToken ct = default)
|
||||
{
|
||||
var action = args.GetProperty("action").GetString() ?? "";
|
||||
|
||||
try
|
||||
{
|
||||
// 클립보드는 STA 스레드에서만 접근 가능
|
||||
ToolResult? result = null;
|
||||
Application.Current.Dispatcher.Invoke(() =>
|
||||
// 클립보드는 STA 스레드에서만 접근 가능 — InvokeAsync로 UI 스레드 블로킹 방지
|
||||
var result = await Application.Current.Dispatcher.InvokeAsync(() =>
|
||||
{
|
||||
result = action switch
|
||||
return action switch
|
||||
{
|
||||
"read" => ReadClipboard(),
|
||||
"write" => WriteClipboard(args),
|
||||
@@ -55,11 +54,11 @@ public class ClipboardTool : IAgentTool
|
||||
_ => ToolResult.Fail($"Unknown action: {action}"),
|
||||
};
|
||||
});
|
||||
return Task.FromResult(result ?? ToolResult.Fail("클립보드 접근 실패"));
|
||||
return result ?? ToolResult.Fail("클립보드 접근 실패");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return Task.FromResult(ToolResult.Fail($"클립보드 오류: {ex.Message}"));
|
||||
return ToolResult.Fail($"클립보드 오류: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user