From fceb7c60750bc8067190e90a0c27d5a8939ffb51 Mon Sep 17 00:00:00 2001 From: Mike Swanson Date: Fri, 3 Jul 2026 21:22:13 -0700 Subject: [PATCH] memory + rmm: agy-headless correction, gemini errorlog, bump guru-rmm (Syncro recon + spec plan) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - memory: agy.exe NOW works headless (v1.0.6+ --print/-p, --add-dir) — corrected reference_antigravity_agy_not_headless + MEMORY.md index; supersedes the old "DOA headless" note. - errorlog: gemini-cli OAuth eligibility failure on this machine (agy/ask-gemini). - bump projects/msp-tools/guru-rmm -> a7ecb9f (RMM_THOUGHTS Feature 11 OS Updates + RMM Fixes batch; docs/recon + docs/specs: Syncro policy/device recon + policy-redesign spec plan). Co-Authored-By: Claude Opus 4.8 (1M context) --- .claude/memory/MEMORY.md | 2 +- .../reference_antigravity_agy_not_headless.md | 22 ++++++++++++++----- errorlog.md | 3 +++ projects/msp-tools/guru-rmm | 2 +- 4 files changed, 22 insertions(+), 7 deletions(-) diff --git a/.claude/memory/MEMORY.md b/.claude/memory/MEMORY.md index 0d3b6675..bebfbe25 100644 --- a/.claude/memory/MEMORY.md +++ b/.claude/memory/MEMORY.md @@ -90,7 +90,7 @@ - [Windows bash command mapping](feedback_windows_bash_mapping.md) — `bash` often resolves to WSL stub instead of Git/MSYS bash required by the harness. Fix by prepending `C:\Program Files\Git\bin` (and usr\bin) to PATH, or source `.claude/scripts/ensure-git-bash.ps1`. Profile has the logic; use plain `bash .claude/scripts/...` after remap. See the helper and this memory file for details. - [Git must authenticate non-interactively](feedback_git_noninteractive_auth.md) — Mike's gripe with Git for Windows is the constant password prompts (GCM) that hang automation, NOT the tool itself. D:\ClaudeTools is set to `credential.helper=store` primed with the azcomputerguru Gitea API token (host 172.16.3.20:3000); always set `GIT_TERMINAL_PROMPT=0`. Any never-prompts solution is acceptable. - [Vault git auth — GCM shadows store token](feedback_vault_gcm_shadow_auth.md) — vault sync "Failed to authenticate user" on git.azcomputerguru.com: GCM is first in the helper chain and shadows the valid store token. Fix (machine-local): store-only credential.helper reset + pin `azcomputerguru@` in the vault remote URL so store returns the durable PAT (not the volatile OAUTH_USER JWT). Applied GURU-5070 2026-06-07. -- [Antigravity agy.exe is not a headless CLI](reference_antigravity_agy_not_headless.md) — the `agy` skill's real backend is `@google/gemini-cli`, not the Antigravity `agy.exe` (IDE agent, no stdout, hangs). Don't reinstall agy.exe expecting headless output. Mike has a paid Gemini account, so stay on gemini-cli past the June 18 free-tier sunset (prefer `GEMINI_API_KEY`). +- [agy.exe NOW works headless (2026-07-03)](reference_antigravity_agy_not_headless.md) — Antigravity `agy.exe` v1.0.6+ has a working `-p/--print` headless mode (clean stdout, `--add-dir` to read files); use it as the Gemini/Antigravity second-model path, esp. when gemini-cli OAuth is ineligible. Call by full path until PATH refresh. (Supersedes the old "agy is DOA headless" note.) - [SQL instance role — verify by connections, not name](feedback_sql_instance_role_by_connection.md) — Standard installed under default `SQLEXPRESS` instance name is real. Prove role with `sys.dm_exec_sessions` + `Get-NetTCPConnection -OwningProcess` before recommending stop/uninstall. - [RMM password setting limitation](feedback_rmm_password_limitation.md) — `net user ` via GuruRMM fails silently (exit 0 but password doesn't set). Tested PowerShell AND CMD - both fail. ScreenConnect CMD works (also as SYSTEM). GuruRMM agent bug in process spawning. Use ScreenConnect for password ops. HIGH priority to fix. - [Clear-RecycleBin fails silently as SYSTEM](feedback_clear_recyclebin_system_context.md) — RMM-dispatched cleanup scripts cannot use `Clear-RecycleBin -Force`; the cmdlet uses Shell COM and silently no-ops without an interactive desktop. Enumerate `C:\$Recycle.Bin\\*` directly. diff --git a/.claude/memory/reference_antigravity_agy_not_headless.md b/.claude/memory/reference_antigravity_agy_not_headless.md index 699ccf20..5074c313 100644 --- a/.claude/memory/reference_antigravity_agy_not_headless.md +++ b/.claude/memory/reference_antigravity_agy_not_headless.md @@ -1,12 +1,24 @@ --- name: reference_antigravity_agy_not_headless -description: Antigravity CLI agy.exe is the IDE embedded agent (no stdout, SQLite store) — NOT a headless CLI. The agy skill uses @google/gemini-cli, not agy.exe. Don't reinstall agy.exe expecting a headless tool. +description: UPDATE 2026-07-03 — agy.exe NOW works headless (v1.0.6+ --print/-p returns clean stdout). Use it as the Antigravity/Gemini second-model path. Older claim (DOA headless) is obsolete. metadata: type: reference --- -The `agy.exe` installed by Google's Antigravity CLI (`%LOCALAPPDATA%\agy\bin\agy.exe`, installer `https://antigravity.google/cli/install.ps1`) is the IDE's embedded agent, **NOT a usable headless CLI** on this fleet. Even v1.0.6's advertised `-p/--print` produces ZERO stdout and hangs when invoked non-interactively from the Bash/PowerShell tool harness — it writes only to a SQLite conversation store. First found 2026-06-05 (`session-logs/2026-06-05-mike-gururmm-platform-day.md` line 35); **re-confirmed 2026-06-06** after the GURU-5070 reinstall (reinstalled agy.exe and walked straight back into the same no-output/hang symptom). +**CORRECTION 2026-07-03 (GURU-BEAST-ROG):** `agy.exe` (Google Antigravity CLI, +`%LOCALAPPDATA%\agy\bin\agy.exe`) **now has a working headless print mode.** `agy -p "" +--dangerously-skip-permissions` returns clean stdout and exits 0 (smoke-tested: returned "READY"; +also drove a full multi-file spec critique reading files via `--add-dir `). Flags: `-p/--print` +(single non-interactive prompt), `--print-timeout` (default 5m), `--add-dir` (add a workspace dir so +it can read files), `--model`, `--dangerously-skip-permissions` (auto-approve tools). Subcommands: +`models`, `install`, `update`, `plugin`. Re-wire came from GURU-5070 fleet sync + a newer agy build. +So agy IS now a usable Antigravity/**Gemini second-model** path, especially when `gemini-cli` OAuth +fails (e.g. BEAST-ROG's `throwIneligibleOrProjectIdError`). NOTE: after install the binary is added to +User PATH registry but NOT the active shell PATH until terminal restart — call it by full path +`/c/Users/guru/AppData/Local/agy/bin/agy.exe` from the Bash tool. -The `agy` SKILL (despite the name) routes to the official **`@google/gemini-cli`** (`gemini`, npm global) — that IS the real headless second-opinion tool (Google OAuth, no API key), resolved via `identity.json .gemini.binary`. Grok (`ask-grok.sh`) is the other working second model. Both were verified returning `OK` on 2026-06-06. - -**June 18 sunset — likely a non-issue for ACG.** Google is sunsetting gemini-cli's free/unpaid OAuth quota on **2026-06-18**, but Mike has a **paid Gemini account**, so the plan is to **stay on gemini-cli** (do NOT migrate to Antigravity). The bulletproof form is to auth gemini-cli with a paid **Gemini API key** (`GEMINI_API_KEY`) rather than the free OAuth quota — that path is unaffected by the OAuth-CLI sunset regardless of how the consumer tiers shake out, and is more stable for headless use. (Sources disagree on whether paid Pro/Ultra OAuth is also cut, so the API-key path is the safe bet.) **Do NOT reinstall agy.exe expecting it to work headless.** Related: [[feedback_agy_review_not_readonly]]. +**Historical (pre-2026-07-03, now OBSOLETE):** earlier agy.exe builds (~June 2026) produced ZERO +stdout in `-p` mode and hung when driven headless (wrote only to a SQLite conversation store), so the +`agy` SKILL was pointed at `@google/gemini-cli` instead. The gemini-cli path still exists +(`ask-gemini.sh`) but on machines where its OAuth is ineligible, prefer **agy -p** now. Related: +[[reference_cdp_chrome_driver]], [[feedback_agy_review_not_readonly]]. diff --git a/errorlog.md b/errorlog.md index 444ba04a..d6eee8e8 100644 --- a/errorlog.md +++ b/errorlog.md @@ -44,6 +44,9 @@ Categories (the `[type]` tag): _(none)_ = skill/command execution failure · 2026-07-03 | Howard-Home | rmm/onboarding-diagnostic | probe timed out (240s, exit -1) on slow VM endpoint DESKTOP-5JK4EGI; fell back to lean targeted recon [ctx: host=DESKTOP-5JK4EGI kind=VM] 2026-07-03 | Howard-Home | rmm-diagnose | could not extract valid diagnostic JSON from probe output [ctx: host=DESKTOP-5JK4EGI status=failed exit=-1] +2026-07-04 | GURU-BEAST-ROG | agy/ask-gemini | gemini review returned empty: throwIneligibleOrProjectIdError in _doSetupUser (OAuth eligibility/project not set) after 3 attempts [ctx: task=syncro-recon-multiai model=gemini-cli-0.45.2] + +2026-07-04 | GURU-BEAST-ROG | agy | gemini returned no response (empty after 3 attempts) [ctx: mode=review err= at process.processTicksAndRejections (node:internal/process/task_queues:104:] 2026-07-03 | Howard-Home | remediation-tool/graph | [friction] auditLogs/signIns $filter (userId/UPN) hangs HTTP000 on Cascades tenant; large $top also hangs. Fix: small unfiltered $top=50, filter client-side diff --git a/projects/msp-tools/guru-rmm b/projects/msp-tools/guru-rmm index 3b3f0697..a7ecb9f1 160000 --- a/projects/msp-tools/guru-rmm +++ b/projects/msp-tools/guru-rmm @@ -1 +1 @@ -Subproject commit 3b3f06976c6469e3eb3c006eb6f3d6c1384be435 +Subproject commit a7ecb9f116f37f45b16cd7ef0248801e868a37fd