← back to Beverlyhillsvideos
adsense-approval-watch: resolve George auth from ~/.claude.json (3rd source) so the launchd job runs without a keychain item — TK-10570
6766aa12aa5c380b283e56f83b73799a86979539 · 2026-08-14 09:59:03 -0700 · Steve
Files touched
M scripts/adsense-approval-watch.mjs
Diff
commit 6766aa12aa5c380b283e56f83b73799a86979539
Author: Steve <steve@designerwallcoverings.com>
Date: Fri Aug 14 09:59:03 2026 -0700
adsense-approval-watch: resolve George auth from ~/.claude.json (3rd source) so the launchd job runs without a keychain item — TK-10570
---
scripts/adsense-approval-watch.mjs | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/scripts/adsense-approval-watch.mjs b/scripts/adsense-approval-watch.mjs
index 5a2150b..28228f4 100644
--- a/scripts/adsense-approval-watch.mjs
+++ b/scripts/adsense-approval-watch.mjs
@@ -68,6 +68,13 @@ function loadAuth() {
const pw = execSync('security find-generic-password -s dw-agents -a admin -w', { encoding: 'utf-8' }).trim();
if (pw) return Buffer.from(`admin:${pw}`).toString('base64');
} catch { /* fall through */ }
+ // Third source (TK-10570): the value the george MCP itself uses, already in ~/.claude.json —
+ // so a launchd job resolves auth with no keychain item and no secret in the plist.
+ try {
+ const raw = execSync('cat "$HOME/.claude.json"', { encoding: 'utf-8' });
+ const v = JSON.parse(raw)?.mcpServers?.george?.env?.GEORGE_BASIC_AUTH;
+ if (v) return v;
+ } catch { /* fall through */ }
return null;
}
← 7ff802a auto-data-snapshot: 2026-08-14T08:19:45 (1 data files) — soc
·
back to Beverlyhillsvideos
·
auto-data-snapshot: 2026-08-14T12:24:03 (1 data files) — soc 4846776 →