From 416f2a3d91493543b674508820c4d32ae344c8c4 Mon Sep 17 00:00:00 2001 From: Mike Swanson Date: Fri, 19 Jun 2026 08:28:09 -0700 Subject: [PATCH] sync: auto-sync from GURU-KALI at 2026-06-19 08:28:07 Author: Mike Swanson Machine: GURU-KALI Timestamp: 2026-06-19 08:28:07 --- .claude/memory/MEMORY.md | 1 + .claude/skills/self-check/baseline/manifest.json | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/.claude/memory/MEMORY.md b/.claude/memory/MEMORY.md index 9f4d5ed8..3798ef5d 100644 --- a/.claude/memory/MEMORY.md +++ b/.claude/memory/MEMORY.md @@ -41,6 +41,7 @@ - [Mike — font preference](user_font_preference.md) — Mike prefers Lucida Console for monospace UI. ## Feedback +- [Prefer SSH over RMM](feedback_prefer_ssh_over_rmm.md) — When a target has SSH (key auth) and the task is easier over it, default to `scp script + ssh run` (system OpenSSH); RMM runs as SYSTEM + hits the server-side timeout reaper. Reserve RMM as fallback when SSH/VPN is down. - [Re-clone submodule creds](reclone-submodule-creds.md) — Re-cloning the restructured claudetools (projects now submodules): set `credential.helper=store` GLOBALLY before `git submodule update --init --recursive` or every Gitea submodule fails "could not read Username". Steps in RECLONE.md. - [Bot alerts need a ticket link](feedback_bot_alert_ticket_link.md) — Syncro ticket bot-alerts MUST include a clickable link: https://computerguru.syncromsp.com/tickets/ (internal id, not ticket number). post-bot-alert.sh posts raw text; put the URL in the message. - [Mac RMM authentication fixed](feedback_mac_rmm_auth_fixed.md) — Use `.claude/scripts/rmm-auth.sh` helper instead of heredoc pattern. Heredoc with `--data-binary @-` fails on macOS. Helper uses `jq -n --arg` to build JSON safely. Usage: `eval "$(bash .claude/scripts/rmm-auth.sh)"` sets $TOKEN, $RMM, $REPO_ROOT. Updated in /rmm Phase 0. diff --git a/.claude/skills/self-check/baseline/manifest.json b/.claude/skills/self-check/baseline/manifest.json index 8ee7b00b..fdce0e19 100644 --- a/.claude/skills/self-check/baseline/manifest.json +++ b/.claude/skills/self-check/baseline/manifest.json @@ -107,6 +107,11 @@ "syncro", "wiki-compile", "wiki-lint", "self-check" ], + "capability_commands": [ + { "name": "autotask", "capability": "psa_autotask", "why": "Autotask PSA command. Syncro is the fleet-default PSA (feedback_psa_default_syncro.md), so /autotask is intentionally NOT in the shared repo and is absent on Syncro machines. Capability-gated, not required-everywhere; absence is INFO, never a FAIL. Present only on machines whose PSA is Autotask." } + ], + "capability_commands_note": "Per-machine/per-capability slash commands that must NOT be required fleet-wide. The probe iterates only .commands[] for required conformance; entries here are documentary so a gated command is not silently dropped. Move a command here (and out of .commands[]) when it is intentionally machine-specific.", + "connectivity": [ { "name": "coord_api", "url": "http://172.16.3.30:8001/api/coord/status", "required": true, "why": "live coordination source of truth" }, { "name": "claudetools_api","url": "http://172.16.3.30:8001/health", "required": false, "why": "main API health" },