Intermediate9 min

Background Monitor Plugins

Background monitors continuously watch external sources — log files, process output, CI pipelines — and deliver notifications to Claude Code when conditions change. Unlike hooks (which react to Claude's own tool events), monitors watch the world outside Claude.

Quick Reference

  • Monitors continuously watch external sources — hooks react to Claude's own tool events
  • Monitors deliver notifications to the active Claude Code session as structured events
  • Claude can respond automatically to monitor notifications (via hooks) or surface them for review
  • Use cases: tail dev server logs, watch CI output, monitor error rates, watch test runner
  • Noise control: filter monitor output to only relevant events before delivery
  • Monitor plugins defined in monitors/monitors.json with command, triggers, and filters
  • Part of the Channels feature — requires Claude Code v2.0+ and Desktop app or CLI
  • Claude can be configured to auto-respond to monitor events in an agentic loop

Monitors vs Hooks: The Critical Distinction

Different Trigger Sources

Hooks fire on Claude Code's own tool use events (PreToolUse, PostToolUse, Stop). Monitors watch external sources independent of what Claude is doing. A monitor can notify Claude while it's idle, between tasks, or before it's even started a task.

DimensionHooksMonitors
Trigger sourceClaude Code's own tool useExternal sources (logs, processes, APIs)
Firing patternEvent-driven by Claude's actionsContinuous — fires whenever condition matches
Use caseReact to what Claude doesReact to what happens in your environment
ExampleFormat code after every EditAlert Claude when the dev server crashes