Files
magnus919_agent-skills/meshcore-packet-capture/references/source-index.md
T
Magnus HedemarkandMagnus Hedemark b4e7c582a6 docs(meshcore-packet-capture): refresh skill for upstream v2.2.0
Bring SKILL.md and references up to date with agessaman/meshcore-packet-capture
v2.2.0 (26 commits past the v2.0.0 source index):

- CLI boundary: document --neighbors-now / --neighbors-exit
- Config: payload decoding (decode_payloads, include_decoded, hashtag
  channels, channel keys), neighbors publishing (interval, discover window,
  scope timeouts, max), log rotation, ble_pin, per-broker owner/email
- MQTT: neighbors and decoded topics, per-broker include_decoded/neighbors
- Deployment: --user-service install/uninstall flow, meshcore ==2.3.8 pin
- Source index: refresh commit/version, cover payload_decode.py and
  neighbors.py

Closes #304

Co-authored-by: Magnus Hedemark <magnus@users.noreply.github.com>
2026-08-09 13:39:39 -04:00

4.1 KiB

Source index

This skill was built from the public repository agessaman/meshcore-packet-capture, inspected at commit c011f4e on 2026-08-09. The checkout reported release v2.2.0, published 2026-07-30. Upstream is the source of truth when this skill conflicts with a newer release.

Coverage inventory

  • README.md: scope, install modes, configuration precedence, CLI, Docker, output, topics, troubleshooting
  • pyproject.toml, requirements.txt: Python/runtime dependency floor (meshcore pinned ==2.3.8 as of v2.2.0) and CLI entry point
  • src/meshcore_packet_capture/__main__.py: installed command dispatch
  • src/meshcore_packet_capture/packet_capture.py: transports, retries, health checks, MQTT, topics, stats, filters, output, shutdown, neighbors CLI flags (--neighbors-now, --neighbors-exit)
  • src/meshcore_packet_capture/config_loader.py: TOML loading, deep merge, named broker merge, environment flattening, decoding/neighbors/log-rotation keys
  • src/meshcore_packet_capture/auth_token.py: device/Python/decoder signing and key format
  • src/meshcore_packet_capture/enums.py: packet and route type vocabulary
  • src/meshcore_packet_capture/payload_decode.py: GRP_TXT decryption, ADVERT parsing, structured decode fields (v2.1.0+)
  • src/meshcore_packet_capture/neighbors.py: zero-hop neighbor discovery + region-scope collection for the neighbors topic (v2.1.0+)
  • config.toml.example, .env: configuration surface and legacy aliases (decode/neighbors/log-rotation blocks, ble_pin, per-broker include_decoded/neighbors/owner/email)
  • presets/*.toml: broker preset shape and sequential broker behavior
  • DOCKER.md, docker-compose.yml, Dockerfile: container deployment and hardware access
  • NIXOS.md, nix/: NixOS package/module deployment
  • install.sh, installer/: bootstrap, release resolution, interactive install, update, migrate, --user-service flow
  • packaging/systemd/, packaging/launchd/: service supervision and platform permissions
  • uninstall.sh: backup, --user-service removal, and destructive cleanup boundaries
  • devtools/: BLE/network diagnostic helpers, treated as optional development tools
  • tests/: configuration, installer, CLI, packet parsing, JWT, presets, and lifecycle behavior
  • .github/workflows/: Docker, Nix, pytest, and release automation

Reconciliation notes

  • The README says the recommended meshcore dependency is >=2.2.31; pyproject.toml at v2.2.0 pins ==2.3.8 and the contact-injection shim was removed. The skill follows the pin.
  • TOML is described as primary, but the actual precedence depends on whether a value came from the real process environment or a dotenv file. The skill documents the implementation's snapshot behavior.
  • The README says the installer installs the latest release by default; installer/__main__.py and install.sh confirm explicit --tag/--branch overrides, plus the v2.1.0+ --user-service local-checkout flow.
  • Older README examples mention docker-compose; current DOCKER.md uses docker compose. Prefer the Compose v2 form.
  • NIXOS.md documents a bounded broker example; config_loader.py and tests show the Python runtime supports more than four enabled brokers. The skill follows the runtime for the general rule and treats Nix option count as module-specific.
  • Upstream contains compatibility/development helpers and a large implementation file. This skill distills operation and diagnosis rather than copying source code.

Refresh procedure

  1. Fetch the current default branch and latest release with gh.
  2. Re-read README.md, pyproject.toml, config.toml.example, DOCKER.md, NIXOS.md, service templates, installer entry points, config loader, CLI parser, payload_decode.py, and neighbors.py.
  3. Run the upstream tests if dependencies and hardware-independent fixtures are available.
  4. Update this index's commit/date and reconcile every changed command, default, version, and environment variable before changing executable guidance.