[object Object]

← back to Claude Email Responder

chore: macstudio3 migration — reconcile from mac2 + repoint paths (stevestudio2→macstudio3, node/npm/npx→/opt/homebrew)

0a3b8f4ead253720c4ffba65088a12fbc4c99d3c · 2026-07-03 08:07:53 -0700 · Steve

Files touched

Diff

commit 0a3b8f4ead253720c4ffba65088a12fbc4c99d3c
Author: Steve <steve@designerwallcoverings.com>
Date:   Fri Jul 3 08:07:53 2026 -0700

    chore: macstudio3 migration — reconcile from mac2 + repoint paths (stevestudio2→macstudio3, node/npm/npx→/opt/homebrew)
---
 config.js | 2 +-
 server.js | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/config.js b/config.js
index b974164..7372ff3 100644
--- a/config.js
+++ b/config.js
@@ -38,7 +38,7 @@ module.exports = {
   },
 
   // Idempotency + cursor state.
-  stateFile: '/Users/stevestudio2/Projects/claude-email-responder/state/state.json',
+  stateFile: '/Users/macstudio3/Projects/claude-email-responder/state/state.json',
 
   // No Anthropic API key — Max-plan CLI subprocess only.
   // See feedback_never_anthropic_api_key.md.
diff --git a/server.js b/server.js
index fdae68a..2763ae8 100644
--- a/server.js
+++ b/server.js
@@ -8,7 +8,7 @@ const { spawn } = require('node:child_process');
 const cfg = require('./config');
 
 const georgeAuthB64 = Buffer.from(cfg.george.basicAuth).toString('base64');
-const CLAUDE_BIN = process.env.CLAUDE_BIN || '/Users/stevestudio2/.local/bin/claude';
+const CLAUDE_BIN = process.env.CLAUDE_BIN || '/Users/macstudio3/.local/bin/claude';
 const CLAUDE_TIMEOUT_MS = parseInt(process.env.CLAUDE_TIMEOUT_MS || '90000', 10);
 
 // ─── State (replied msgIds + last-seen-internalDate cursor per account) ─────
@@ -193,7 +193,7 @@ async function pollOnce() {
               thread_id: full.threadId || id,
             };
             const fname = `${Date.now()}-${verb}.json`;
-            const dirQueue = '/Users/stevestudio2/Projects/_dw-batch/directives';
+            const dirQueue = '/Users/macstudio3/Projects/_dw-batch/directives';
             try {
               fs.mkdirSync(dirQueue, { recursive: true });
               fs.writeFileSync(`${dirQueue}/${fname}`, JSON.stringify(directive, null, 2));
@@ -201,7 +201,7 @@ async function pollOnce() {
               if (verb === 'status') {
                 // Quick status reply — read ledger tail
                 let tail = '';
-                try { tail = require('child_process').execSync(`/Users/stevestudio2/.claude/data/ledger-tail.sh 15`, { encoding: 'utf8' }); } catch {}
+                try { tail = require('child_process').execSync(`/Users/macstudio3/.claude/data/ledger-tail.sh 15`, { encoding: 'utf8' }); } catch {}
                 answer = `<p>Directive queued: <code>${fname}</code></p><pre style="font-family:monospace;font-size:11px;background:#f5f5f5;padding:10px">${tail.replace(/[<>]/g, c => c === '<' ? '&lt;' : '&gt;')}</pre>`;
               } else {
                 answer = `<p>Directive queued for next yolo tick: <code>${verb}</code> · target: <code>${target || '(none)'}</code></p><p style="color:#888;font-size:11px">file: ${fname}</p>`;

← d987ca9 auto-save: 2026-06-21T18:53:00 (1 files) — package-lock.json  ·  back to Claude Email Responder  ·  (newest)