We need visibility into which skills and tools are being used across Copilot CLI, VS Code, and Claude Code to understand adoption and prioritize development. Agent hooks let us do this — they are commands (shell scripts, PowerShell scripts, or any executable) that run automatically before or after an AI agent uses a tool, without modifying the agent itself.
The PostToolUse hook fires after every tool call, receiving the tool name, arguments, and session info via stdin as JSON — making it ideal for telemetry and observability. However, different AI coding clients use different formats for their hooks configuration. This document outlines those differences.