---
type: project
name: msp-tools
display_name: MSP Tools (umbrella)
last_compiled: 2026-06-12
compiled_by: GURU-5070/claude-main
sources:
  - projects/msp-tools/session-logs/2026-06-02-recovered-build-self-diagnosis-skill-for-claudetools-setup.md
  - projects/msp-tools/session-logs/2026-06-02-recovered-build-self-diagnosis-skill-for-claudetools-setup-25f5d8b9.md
  - projects/msp-tools/README.md
  - .claude/memory/project_gururmm.md
  - .claude/memory/project_guruconnect.md
  - .claude/memory/reference_msp_audit_scripts.md
backlinks:
  - projects/gururmm
  - projects/guruconnect
---

# MSP Tools (Umbrella)

## Summary

`projects/msp-tools/` is the umbrella directory for ACG's MSP tooling under ClaudeTools. It hosts two active product submodules ([[gururmm]] and GuruConnect), plus supporting PowerShell modules, audit scripts, and operational utilities. The directory was originally populated in January 2026 by importing conversation archives from prior Claude projects; active development now lives in the submodules and supporting directories with their own session-log trees.

This article covers the umbrella scope only. For the full capability record of each product, see the dedicated articles linked below.

---

## Sub-Projects

| Directory | Type | Purpose | Wiki Article |
|---|---|---|---|
| `guru-rmm/` | git submodule | Full-stack RMM: agent fleet, monitoring, remote execution, dashboard | [[gururmm]] |
| `guru-connect/` | git submodule | Remote access / screen sharing product (Rust; native-first, WebRTC fallback) | no article yet (verify) |
| `guru-scan/` | PowerShell module | Multi-engine malware scan orchestrator; runs RKill + scanner chain, outputs JSON for GuruRMM agent | — |
| `msp-audit-scripts/` | PowerShell scripts | On-demand server and workstation audit scripts; run via ScreenConnect Toolbox as SYSTEM | — |
| `quote-wizard/` | PHP/web app | MSP quoting tool (PHP API + frontend + admin panel) — maturity/status (verify) |  — |
| `scripts/` | Misc scripts | M365 onboarding (CIPP templates, tenant onboarding, permission manifests), Datto SmartBadge diagnostics, RMM status check | — |
| `utilities/` | Standalone PS1 | Printer port cleanup, Win11 upgrade script, saved ScreenConnect Toolbox one-liners | — |
| `toolkit/` | (empty README) | Purpose (verify) | — |

**Archived conversation imports (not active code):**
- `guru-rmm-conversation-logs/` — 54 JSONL transcripts from the original GuruRMM Claude project, imported 2026-01-17
- `guru-connect-conversation-logs/` — 40 JSONL transcripts from the original GuruConnect Claude project, imported 2026-01-17

---

## Architecture

### Components
| Component | Location | Tech | State |
|---|---|---|---|
| GuruRMM | `projects/msp-tools/guru-rmm/` (submodule) | Rust (server + agent), TypeScript (dashboard), PostgreSQL | Active — see [[gururmm]] |
| GuruConnect | `projects/msp-tools/guru-connect/` (submodule) | Rust (server + Windows agent), TypeScript (dashboard), PostgreSQL | Active — v2 in dev |
| GuruScan | `projects/msp-tools/guru-scan/` | PowerShell module | Active |
| MSP Audit Scripts | `projects/msp-tools/msp-audit-scripts/` | PowerShell | Active; mirrored on `Howweird/msp-audit-scripts` (GitHub) |
| Quote Wizard | `projects/msp-tools/quote-wizard/` | PHP + frontend | Status (verify) |

### Key Files & Repos
- **GuruRMM repo:** `azcomputerguru/gururmm` on Gitea (172.16.3.20)
- **GuruConnect repo:** `azcomputerguru/guru-connect` on Gitea (172.16.3.20) — separate repo, NOT a submodule of ClaudeTools
- **MSP Audit Scripts remote:** `https://raw.githubusercontent.com/Howweird/msp-audit-scripts/master/`
- **GuruScan config:** `projects/msp-tools/guru-scan/scanners.json`

---

## Development

### Current Focus

Active development is in the submodules. See [[gururmm]] for GuruRMM's current sprint. GuruConnect is undergoing v2 architecture (native-first remote access, Rust relay/auth rebuild, bidirectional clipboard file transfer). The other tools (GuruScan, audit scripts, utilities) are maintained but not under active sprint.

### Patterns & Anti-Patterns

- GuruRMM and GuruConnect are each versioned products with their own CI/CD pipelines, changelogs, and session-log trees. Do not conflate umbrella session logs with product session logs.
- The `README.md` at the umbrella root is stale (dated 2026-01-17; describes the directory as a conversation-import archive — that framing is obsolete). Do not rely on it for current state.
- `guru-rmm-conversation-logs/` and `guru-connect-conversation-logs/` are read-only import archives. Development context lives in the submodule repos and root `session-logs/`.

### Build & Deploy

Each product has its own build and deploy procedure. See [[gururmm]] for GuruRMM. For GuruConnect, see the deploy procedure in `.claude/memory/project_guruconnect.md` (manual build on server `172.16.3.30`, login shell required for cargo/protoc on PATH).

---

## Own Session Logs — Work Captured

The `projects/msp-tools/session-logs/` directory holds two recovered log files, both reconstructed from the same transcript (`25f5d8b9`, 2026-06-02T21:14–22:06 UTC). They cover building the `/self-check` ClaudeTools harness diagnostic skill — this is ClaudeTools infrastructure work, not an MSP tool feature. The logs were saved here rather than root `session-logs/`; the reason is unclear (verify if misclassified).

**Work done in those sessions (2026-06-02):**

- Assessed existing ClaudeTools diagnostic infrastructure; determined a new harness self-check skill was needed.
- Created `manifest.json` (baseline, v1.0.0 provisional) as the single source of truth for all machines — required tools vs capability-gated tools, per-tier rules.
- Created `self-check.sh` (cross-platform bash; runs probes, grades machine, publishes census to coord API).
- Created command wrapper at `.claude/commands/self-check.md` and skill docs at `.claude/skills/self-check/`.
- First run on GURU-5070 (windows/amd64): **Grade AMBER** — PASS 71, WARN 2, FAIL 0.
- Resolved: `jq` (winget build) emitting `\r\n` line endings causing false negatives in hook/path resolution; patched with a `jq` wrapper.
- Found: `post-commit` hooks not installed despite `HOOKS.md` mandate; found `autotask.md` missing on Linux machine.

**Pending from those sessions (unresolved as of log date):**
- Manifest to be moved from provisional to ratified status.
- Validate `--json` output and graceful `aggregate` degradation.
- Mandatory code review for the self-check engine before committing.

---

## Active State

See [[gururmm]] for GuruRMM's live state. GuruConnect v2 in development; v1 prod at `connect.azcomputerguru.com` (172.16.3.30:3002 behind NPM). Self-check skill status: AMBER on GURU-5070 as of 2026-06-02; fleet aggregate status (verify current via coord API `selfcheck_*` components under `claudetools` project key).

---

## History Highlights

- **2026-01-17** — Original import of guru-rmm (54 files, 14 MB) and guru-connect (40 files, 6.1 MB) conversation archives into `projects/msp-tools/`
- **2026-05-30** — GuruConnect v2 deployed to production at `connect.azcomputerguru.com`
- **2026-06-02** — `/self-check` harness skill built; GURU-5070 grades AMBER on first run

---

## Backlinks

- [[gururmm]] — GuruRMM product article (full capability record)
- GuruConnect wiki article not yet created (verify — slug would be `guruconnect`)
