Skip to content

Commit b929830

Browse files
gfraiteurclaude
andcommitted
Improve MCP console output timing
- Show "Request Approved" immediately after approval - Show "Executing Request" separator before command execution - Show "Request Completed" separator after execution - Fix auto-approve message: remove confusing colon and redundant command echo 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <[email protected]>
1 parent 82089ca commit b929830

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

src/PostSharp.Engineering.BuildTools/Mcp/Services/ApprovalPrompter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public Task<bool> RequestApprovalAsync(
4848
if ( assessment.Level == RiskLevel.Low && assessment.Recommendation == Recommendation.Approve )
4949
{
5050
AnsiConsole.WriteLine();
51-
AnsiConsole.MarkupLine( $"[green]Auto-approved (LOW risk):[/] [white]{Markup.Escape( command )}[/]" );
51+
AnsiConsole.MarkupLine( "[green]Auto-approved (LOW risk)[/]" );
5252
AnsiConsole.MarkupLine( $"[dim]Reason: {Markup.Escape( assessment.Reason )}[/]" );
5353
AnsiConsole.WriteLine();
5454

src/PostSharp.Engineering.BuildTools/Mcp/Tools/ExecuteCommandTool.cs

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,19 +82,28 @@ public async Task<CommandResult> ExecuteCommand(
8282

8383
if ( approved )
8484
{
85+
AnsiConsole.Write( new Rule( "[green]Request Approved[/]" ) );
86+
AnsiConsole.WriteLine();
87+
AnsiConsole.Write( new Rule( "[blue]Executing Request[/]" ) );
88+
AnsiConsole.WriteLine();
89+
8590
result = await this._executor.ExecuteAsync( command, workingDirectory, cancellationToken );
91+
92+
AnsiConsole.WriteLine();
93+
AnsiConsole.Write( new Rule( "[blue]Request Completed[/]" ) );
94+
AnsiConsole.WriteLine();
8695
}
8796
else
8897
{
98+
AnsiConsole.Write( new Rule( "[red]Request Rejected[/]" ) );
99+
AnsiConsole.WriteLine();
100+
89101
result = CommandResult.Rejected();
90102
}
91103

92104
// 5. Record in history
93105
this._history.Record( sessionId, command, claimedPurpose, approved, result );
94106

95-
AnsiConsole.Write( new Rule( $"[{( approved ? "green" : "red" )}]Request {( approved ? "Approved" : "Rejected" )}[/]" ) );
96-
AnsiConsole.WriteLine();
97-
98107
return result;
99108
}
100109
catch ( Exception ex )

0 commit comments

Comments
 (0)