Skip to main content
Any Framework

Windows-first .NET tool that forwards GitHub Copilot CLI events to the ElBruno.CopilotCLIMonitor systray app.

Published
May 13, 2026
5mo ago
Total Downloads
1.8K
1,755

Deprecated Package Version

Reason: Legacy

This project has been retired and is no longer maintained. No further updates or support will be provided.

Install

dotnet add package ElBruno.CopilotCLIMonitor --version 0.2.0

No framework information available.

README

ElBruno.CopilotCLIMonitor

license NuGet .NET Build

Stop babysitting long-running Copilot CLI tasks. ElBruno.CopilotCLIMonitor is a lightweight Windows Systray application that keeps you informed with native notifications when your AI workflows finish.

Overview

ElBruno.CopilotCLIMonitor bridges GitHub Copilot CLI hooks and Windows desktop notifications. Minimize your terminal and stay aware of important events without constant terminal monitoring.

Supported events:

  • Task completed
  • Workflow finished
  • Build/test execution completed
  • Agent waiting for input
  • Error occurred
  • Approval required

Quick start

Install CLI bridge

dotnet tool install -g ElBruno.CopilotCLIMonitor

Install desktop app

Install the tray app (portable ZIP, installer, or Chocolatey package) so ElBruno.CopilotCLIMonitor.exe exists on your machine.

If your executable is in a custom path, set:

$env:COPILOTCLIMON_APP_PATH="C:\path\to\ElBruno.CopilotCLIMonitor.exe"

Start the app

copilotclimon

The application runs in the Windows Systray. Look for the notification icon in your system tray.

Initialize your repository

cd your-repository
copilotclimon init

This runs interactive setup (hook trigger selection), then installs repository hooks and configures event forwarding.

Use non-interactive defaults for automation:

copilotclimon init --default

Refresh managed files with latest templates:

copilotclimon upgrade
# or force a reinstall during init
copilotclimon init --default --force

Run your Copilot CLI tasks

copilot -p "Using BYOK, answer in one sentence with the wire model/deployment name you are using."

When your task completes, you'll receive a Windows toast notification—no terminal watching required.

Features

Systray integration

  • Persistent Windows Systray presence
  • Context menu with quick actions
  • Background execution while you work

Native toast notifications

  • Configurable notification behavior
  • Optional sound alerts
  • Priority levels (Info, Warning, Error)
  • Action buttons for quick responses

Event history

  • Recent events dashboard
  • Timestamp tracking
  • Event filtering
  • History clearing

Repository awareness

  • Per-repository hook configuration
  • Custom event routing
  • Local configuration support

Settings

Configure:

  • Notification types
  • Toast duration
  • Sound preferences
  • Quiet hours
  • Repository filters
  • Event filtering
  • Startup behavior
  • Logging level

Localization

  • Automatic RTL layout support based on UI culture
  • Dashboard and settings windows adapt to right-to-left languages
  • Event labels localized for English, Spanish, and French

Architecture

The solution has two main components:

1. Systray application

A native WPF Windows application that:

  • Lives in the Windows Systray
  • Receives and displays notifications
  • Manages user settings
  • Tracks recent events

2. Repository hook integration

CLI-based hook installer that:

  • Integrates with GitHub Copilot CLI hooks
  • Forwards events to the Systray app
  • Supports repository-local configuration
  • Validates hook installation

CLI commands

Initialize repository

copilotclimon init

Detects the current repository, prompts for hook trigger selection, installs hooks, and registers event forwarding.

Automation mode:

copilotclimon init --default

Force overwrite managed files:

copilotclimon init --default --force

Upgrade managed hook/config files

copilotclimon upgrade

Send notification

copilotclimon notify --event task-completed --message "Your message here"

Validate setup

copilotclimon doctor

Checks system configuration and hook installation.

Open dashboard

copilotclimon open

Opens the events dashboard window.

Show version

copilotclimon --version

Check for updates

copilotclimon update

Install latest version directly:

copilotclimon update --install

Configuration

Global configuration

User settings are stored in:

%AppData%\CopilotCliMon\preferences.json

Optional machine-wide defaults can be stored in:

%ProgramData%\CopilotCliMon\preferences.system.json

Machine-wide values load first, then per-user values override them. Environment variables can override both file-based layers; see setup.md.

Repository configuration

Local hook configuration:

.copilotclimonitor

IPC authentication (optional)

To require authentication between CLI and monitor IPC calls, set the same token in both processes:

$env:COPILOTCLIMON_IPC_TOKEN = "your-shared-secret"

When configured, the monitor accepts only requests containing this token.

Technology

  • .NET 10 – Modern .NET runtime
  • WPF – Native Windows desktop framework
  • Windows Notifications – Native toast notifications
  • GitHub Copilot CLI – Hook integration

Setup guide

See setup.md for detailed installation and configuration instructions.

Standalone installer packaging

See installer.md for standalone Windows package generation.

Portable ZIP distribution

See portable-distribution.md for no-installation packaging and usage.

Chocolatey packaging

See chocolatey.md for creating and publishing Chocolatey packages.

Windows Store packaging

See microsoft-store.md for generating MSIX artifacts and Partner Center submission steps.

Troubleshooting

See troubleshooting.md for common issues and solutions.

Windows security notes

See windows-security-notes.md for Defender/SmartScreen and antivirus compatibility guidance.

Code coverage

See coverage.md for local and CI coverage report generation.

Linting rules

See linting.md for .editorconfig and StyleCop analyzer configuration.

Accessibility testing

See accessibility-testing.md for keyboard, screen reader, and WCAG-focused validation checklist.

Performance testing

See performance-testing.md for memory/CPU/responsiveness guardrail tests.

Code quality metrics

See code-quality-metrics.md for CodeQL and SonarQube integration details.

Diagnostic mode

See diagnostic-mode.md for enabling verbose troubleshooting logs.

Log file rotation

See log-rotation.md for daily/size-based log rotation settings.

Telemetry (optional)

See telemetry.md for opt-in telemetry behavior and data details.

Privacy policy

See privacy-policy.md for data handling practices and user controls.

User manual

See user-manual.md for end-user step-by-step usage.

Video tutorials

See video-tutorials.md for recording plans, standards, and publishing checklist.

Architecture documentation

See architecture.md for technical design details. See api-documentation.md for method signatures and class relationship diagrams.

Developer guide

See developer-guide.md for contributing workflow, setup, and architecture references.

Versioning and release strategy

This project uses Semantic Versioning (MAJOR.MINOR.PATCH) with an automated release pipeline. See versioning.md for bump rules and release flow. See release-branch-strategy.md for main/develop/release/* branch responsibilities. Use scripts/version-auto-increment.ps1 to auto-calculate next patch/minor/major before applying version bump updates. Use .github/release-notes-template.md to keep release notes format consistent across versions. For emergency patch releases, follow hotfix-process.md.

Examples

Hook integration example

The following hook configuration forwards Copilot CLI events:

# Installed in: .copilotclimonitor/hooks/on-task-complete.sh
#!/bin/bash
copilotclimon notify \
  --event task-completed \
  --message "Migration task finished" \
  --repository "$(basename $(git rev-parse --show-toplevel))" \
  --branch "$(git rev-parse --abbrev-ref HEAD)"

Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Product screenshots

Screenshot catalog and capture standards are documented in screenshots.md.

Logo variants

Logo source variants and export targets are documented in logo-variants.md.

Marketing graphics

Social cards and feature-promotion assets are documented in marketing-graphics.md.

Hook configuration guide

For advanced hook setup, custom scripts, and secure event routing, see hook-configuration.md.

License

This project is licensed under the MIT License. See LICENSE for details.

Inspiration

This project is inspired by and follows patterns from:

Support

About ElBruno

ElBruno creates developer tools, samples, and educational content for AI-assisted development. Follow for updates:

Changes from Previous Version

No structural changes between v0.1.2 and v0.2.0.

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

NuGet marks this package as deprecated. Review the publisher's migration guidance before adopting it.No target framework metadata is available. Confirm compatibility in a representative project before standardising on this package.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.