Skip to content

[External Plugin]: copilot-network-monitor #6080

Closed

Description

@nikhilbghodke

Plugin name

copilot-network-monitor

Short description

A lightweight, colored Copilot CLI connection indicator for macOS. Uses bounded, unauthenticated HTTPS checks, cache-only status rendering, configurable intervals, and reversible per-user login startup.

GitHub repository

nikhilbghodke/copilot-network-monitor

Plugin path inside the repository

plugin

Ref to review

v0.2.2

Commit SHA to review

90b41cbfa915cce9f79856a398cc8751ecf424e5

Version

0.2.2

License identifier

MIT

Author name

nikhilbghodke

Author URL

https://github.com/nikhilbghodke

Homepage URL

https://github.com/nikhilbghodke/copilot-network-monitor

Keywords

copilot-cli, connectivity, statusline, macos

Additional notes for reviewers

  • Release: https://github.com/nikhilbghodke/copilot-network-monitor/releases/tag/v0.2.2
  • Package manifest: plugin/plugin.json, using Agent Plugins 1.0. The package includes its MIT license.
  • Requires macOS, Python 3.10+, /usr/bin/curl, and Copilot CLI with custom status-line support. No runtime Python packages, MCP server, administrator access, or model requests are needed for monitoring.
  • Example display: Copilot connection: Reachable · 941 ms · checked 8s ago.
  • After installation, start a new session and invoke /copilot-network-monitor:network-monitor to request setup. Installation alone does not start the service or change the status bar. The skill requires approval before setup unless the user has already explicitly requested it.
  • Setup preserves the existing status command and creates a per-user LaunchAgent that runs immediately and at login. Monitoring continues while Copilot is closed.
  • The default endpoint is https://api.githubcopilot.com/_ping; Enterprise routing can be configured explicitly. The default interval is 25 seconds after each check finishes, configurable from 5 to 300 seconds. HTTP 429/5xx use exponential backoff capped at 300 seconds.
  • The probe uses an unauthenticated HTTPS GET, discards the response body, does not follow redirects, and uses a three-second curl deadline with a four-second subprocess deadline. Status rendering reads a local cache; stale observations are labeled Outdated.
  • No conversations, session logs, or traffic counters are read. The monitor has no telemetry. Its status measures HTTPS reachability and check duration, not bandwidth, authentication, model availability, or streaming reliability. Shell proxy variables and Copilot proxy settings are not automatically inherited.
  • Plugin updates require rerunning setup to refresh the service runtime. Users must run removal before plugin uninstall; disabling/uninstalling the plugin alone does not remove its independent LaunchAgent. Removal preserves newer user status-line edits and retains diagnostic logs and measurement caches.
  • Validation completed on macOS: 54 existing tests passed; the exact public v0.2.1 marketplace tag installed successfully in an isolated Copilot configuration; the updated skill was discovered and enabled; the temporary plugin installation was removed. Local release metadata, documentation links, and bundled licenses were checked. The marketplace's own manifest, vally lint, and quality gates remain to run during intake.
  • Intake follow-up: v0.2.1 passed manifest, install smoke, version, and ref/SHA checks but failed vally lint because a Markdown link pointed outside the skill directory. v0.2.2 removes that invalid link without changing the utility location, runtime code, or instructions. The original tags remain unchanged; this submission now pins the new release and commit for another intake pass.

Submission checklist

  • The plugin lives in a public GitHub repository.
  • The ref and/or sha I provided is immutable (release tag and/or full 40-character commit SHA), not a branch.
  • This submission follows this repository's contribution, security, and responsible AI policies.
  • This plugin is not already listed in the Awesome Copilot marketplace.

Activity

  1. added
    awaiting-reviewSubmission is waiting for automated intake validation
    external-pluginPublic external plugin submission
    requires-submitter-fixesSubmission has quality-gate findings that submitter must fix before maintainer review
    and removed
    awaiting-reviewSubmission is waiting for automated intake validation
    on Oct 31, 2026
  2. github-actions commented on Oct 31, 2026

    @github-actions
    Contributor

    ✅ External plugin intake passed

    This submission passed automated intake validation and quality checks and is ready for maintainer review.

    View workflow run · Download full quality gate logs

    Reviewer signals

    These are non-blocking heuristics for maintainer review; they are not evidence of misconduct or low quality.

    Signal Result
    Repository age 0 day(s)
    Repository activity repository is 0 day(s) old; 0 watchers; 0 forks
    Repository counts 1 stars · 0 watchers · 0 forks · 0 open issues/PRs
    Homepage heuristics ⚠️ pricing, checkout

    Quality gate summary

    Legend: ✅ pass · ⚠️ warning · 🛑 fail

    Gate Status
    spec compliance ✅ pass
    vally lint ✅ pass
    install smoke test ✅ pass
    version match ✅ pass
    ref/sha consistency ✅ pass
    canvas structure ⚪ not_run
    • spec compliance: pass
    • vally lint: pass
    • install smoke test: pass
    • version match: pass
    • ref/sha consistency: pass
    • canvas structure: not_run
    • overall: pass
    spec compliance output (✅ pass)
    Agent Plugins v1.0.0 manifest checks passed for plugin.json.
    
    vally lint output (✅ pass)
    ✅ network-monitor (2/2 checks passed)
        ✓ [spec-compliance] All 1 skill(s) are spec-compliant.
            ✓ spec-compliance: All spec checks passed.
        ✓ [valid-refs] All file references across 1 skill(s) are valid.
            ✓ valid-refs: All file references resolve to existing files within the skill directory.
    
    1 skill(s) linted, 1 passed
    
    install smoke test output (✅ pass)
    Install smoke test succeeded. Verified /tmp/external-plugin-quality-0weGjv/copilot-home/.copilot/installed-plugins/external-plugin-intake/copilot-network-monitor/plugin.json.
    
    Version match output
    - v0.2.2: matched version "0.2.2" at "plugin/plugin.json".
    - 90b41cbfa915cce9f79856a398cc8751ecf424e5: matched version "0.2.2" at "plugin/plugin.json".
    
    Ref/SHA consistency output
    source.ref "v0.2.2" resolves to the same commit as source.sha "90b41cbfa915cce9f79856a398cc8751ecf424e5".
    
    Canvas structure output
    Canvas structure gate skipped because plugin is not tagged with "canvas".
    

    Canonical external.json payload

    {
      "name": "copilot-network-monitor",
      "description": "A lightweight, colored Copilot CLI connection indicator for macOS. Uses bounded, unauthenticated HTTPS checks, cache-only status rendering, configurable intervals, and reversible per-user login startup.",
      "version": "0.2.2",
      "author": {
        "name": "nikhilbghodke",
        "url": "https://github.com/nikhilbghodke"
      },
      "repository": "https://github.com/nikhilbghodke/copilot-network-monitor",
      "homepage": "https://github.com/nikhilbghodke/copilot-network-monitor",
      "license": "MIT",
      "keywords": [
        "copilot-cli",
        "connectivity",
        "statusline",
        "macos"
      ],
      "source": {
        "source": "github",
        "repo": "nikhilbghodke/copilot-network-monitor",
        "path": "plugin",
        "ref": "v0.2.2",
        "sha": "90b41cbfa915cce9f79856a398cc8751ecf424e5"
      }
    }
  3. added
    awaiting-reviewSubmission is waiting for automated intake validation
    ready-for-reviewSubmission passed intake validation and is ready for maintainer review
    and removed
    requires-submitter-fixesSubmission has quality-gate findings that submitter must fix before maintainer review
    awaiting-reviewSubmission is waiting for automated intake validation
    on Oct 31, 2026
  4. aaronpowell commented on Nov 1, 2026

    @aaronpowell
    Contributor

    /reject Niche and not broadly applicable. A skill is also not the right way to do this, it should be done using a customised status line.

  5. added
    rejectedSubmission was rejected by a maintainer
    and removed
    ready-for-reviewSubmission passed intake validation and is ready for maintainer review
    on Nov 1, 2026
  6. github-actions commented on Nov 1, 2026

    @github-actions
    Contributor

    ❌ External plugin rejected

    A maintainer rejected copilot-network-monitor, and the submission issue has been closed.

    Reason

    Niche and not broadly applicable. A skill is also not the right way to do this, it should be done using a customised status line.

    This issue is now closed and /rerun-intake will no longer reopen it. If you address the feedback, please open a new external plugin submission issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    external-pluginPublic external plugin submissionrejectedSubmission was rejected by a maintainer

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions