Conversation
- Extend LogMetrics with ToolCallInfo to track tool usage statistics - Add PrettifyToolName function to remove "mcp__" prefixes and format names - Implement tool parsing in Claude engine with JSON log analysis - Implement tool parsing in Codex engine with regex-based log parsing - Add displayToolCallReport function to show compact table without title - Special handling for bash commands (unique per invocation) - Add test coverage for PrettifyToolName function - Integrate tool report into logs command output flow Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
- Fix main ParseLogMetrics function to copy ToolCalls from parseClaudeJSONLog - Tool parsing now correctly identifies and prettifies tool names - Special handling for bash commands works (unique per invocation) - MCP tools properly formatted (mcp__github__search_issues -> github::search_issues) - Tool call report table integration fully functional Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
- All tests pass (including new PrettifyToolName test) - Build, lint, format validations successful - Workflow recompilation successful - Agent-finish validation complete ✅ Tool call report feature is fully implemented and ready for use. Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Updated the tool call reporting implementation as requested: ✅ Using console helper for table - Already implemented with Key changes made:
The tool table now shows server-level aggregations instead of individual tool calls, providing a cleaner high-level view while preserving granular bash command tracking. Commit: 6d0dd02 Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
@copilot show full tool list in verbose mode |
- Added --verbose/-v flag to logs command - Modified displayToolCallReport to show individual tool names in verbose mode - Non-verbose mode: Groups tools by MCP server (e.g., "github", "playwright") - Verbose mode: Shows individual prettified tool names (e.g., "github_search_issues", "playwright_browser_take_screenshot") - Updated flag descriptions and help text Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Added verbose mode support to the logs command. When using the Normal mode (grouped): Verbose mode (individual tools): Usage: Commit: e479113 Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
pkg/cli/logs.go
Outdated
| logsCmd.Flags().String("end-date", "", "Filter runs created before this date (YYYY-MM-DD or delta like -1d, -1w, -1mo)") | ||
| logsCmd.Flags().StringP("output", "o", "./logs", "Output directory for downloaded logs and artifacts") | ||
| logsCmd.Flags().String("engine", "", "Filter logs by agentic engine type (claude, codex)") | ||
| logsCmd.Flags().BoolP("verbose", "v", false, "Show detailed output including individual tool names") |
There was a problem hiding this comment.
@copilot remove flag, always show them verbose tool list
There was a problem hiding this comment.
Removed the verbose flag from the logs command. The tool call report now always shows individual tool names (like github_search_issues, playwright_browser_take_screenshot) instead of grouping by MCP server, providing detailed insights into specific tool usage patterns.
Commit: 7da46dd
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
| endDate, _ := cmd.Flags().GetString("end-date") | ||
| outputDir, _ := cmd.Flags().GetString("output") | ||
| engine, _ := cmd.Flags().GetString("engine") | ||
| verbose, _ := cmd.Flags().GetBool("verbose") |
There was a problem hiding this comment.
Added the verbose flag back to the logs command. The flag is now parsed at line 167 and allows users to control tool display mode: grouped by MCP server (default) vs individual tool names (verbose).
Commit: f70b396
pkg/cli/logs.go
Outdated
| } | ||
|
|
||
| if err := DownloadWorkflowLogs(workflowName, count, startDate, endDate, outputDir, engine, verbose); err != nil { | ||
| if err := DownloadWorkflowLogs(workflowName, count, startDate, endDate, outputDir, engine, true); err != nil { |
There was a problem hiding this comment.
Updated to pass the verbose flag value instead of hardcoding true. Now the actual verbose flag state is passed to DownloadWorkflowLogs at line 207, giving users control over the tool call report detail level.
Commit: f70b396
…dWorkflowLogs Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Enhances the
logscommand to parse and display tool usage statistics from agentic workflow logs, providing detailed insights into which specific tools are being used and how frequently. The command now supports both grouped and detailed views through a--verboseflag.What's New
The
logscommand now displays a tool usage table with two display modes:Normal Mode (Default)
githubfor all GitHub tools)Verbose Mode (
-vor--verbose)github_search_issues,playwright_browser_take_screenshot) for granular analysisExample Output
Normal mode:
Verbose mode:
Key Features
Configurable Detail Levels
Tool Name Prettification Strategy
::separators)mcp__github__search_issues→ grouped undergithub(normal) orgithub_search_issues(verbose)Special Bash Handling
Each bash invocation is treated as a unique tool to prevent aggregation of different commands:
bash_git_statusbash_ls_-la_tmpbash_npm_installThis provides granular insights into command usage patterns.
Multi-Engine Support
tool_useentriesImplementation Details
Core Components
LogMetricsstruct withToolCalls []ToolCallInfoToolCallInfostruct to track tool statisticsPrettifyToolName()function for consistent formatting without colonsdisplayToolCallReport()to support both grouped and individual display modes--verboseflag to control display granularityEngine Integration
ParseLogMetricsinterface to include tool call extractionTesting
PrettifyToolNameto match new underscore formatUsage
The tool call report appears automatically when running the logs command:
The table is displayed after the standard workflow overview and before access log analysis, providing complete visibility into tool usage patterns across workflow executions at your preferred level of detail.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.