← back to Secrets Manager
secrets-manager: least-privilege scoping (TK-10045) — derive-manifests.js + regen command + manifest-aware fanOut guard (SCOPED_FANOUT-gated)
7795cb8f462f54fa66ecedb2d59add0e3558c22f · 2026-07-29 21:35:16 -0700 · Steve
Blast-radius fix: per-service secret manifests (values-free), regen writes each project a scoped .env = manifest INTERSECT master (remove-only default; --add-missing opt-in), and fanOut skips re-broadening a scoped .env when SCOPED_FANOUT=1. Master .env hard-excluded; review_required (dynamic env access) projects held for hand-review. Dry-run: 67 projects / 111 over-shared keys removable.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Files touched
M cli.jsA derive-manifests.jsA manifests.json
Diff
commit 7795cb8f462f54fa66ecedb2d59add0e3558c22f
Author: Steve <steve@designerwallcoverings.com>
Date: Wed Jul 29 21:35:16 2026 -0700
secrets-manager: least-privilege scoping (TK-10045) — derive-manifests.js + regen command + manifest-aware fanOut guard (SCOPED_FANOUT-gated)
Blast-radius fix: per-service secret manifests (values-free), regen writes each project a scoped .env = manifest INTERSECT master (remove-only default; --add-missing opt-in), and fanOut skips re-broadening a scoped .env when SCOPED_FANOUT=1. Master .env hard-excluded; review_required (dynamic env access) projects held for hand-review. Dry-run: 67 projects / 111 over-shared keys removable.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
cli.js | 104 +-
derive-manifests.js | 116 ++
manifests.json | 3272 +++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 3491 insertions(+), 1 deletion(-)
diff --git a/cli.js b/cli.js
index 306ec54..576bcb9 100755
--- a/cli.js
+++ b/cli.js
@@ -45,6 +45,38 @@ function expand(p) { return p.replace(/^~/, HOME); }
function digest(v) { return v.slice(-4) + ':' + crypto.createHash('sha256').update(v).digest('hex').slice(0, 8); }
function loadRegistry() { return fs.existsSync(REGISTRY) ? JSON.parse(fs.readFileSync(REGISTRY, 'utf8')) : { secrets: {} }; }
function saveRegistry(r) { fs.writeFileSync(REGISTRY, JSON.stringify(r, null, 2)); }
+
+// ─── least-privilege manifests (TK-10045) ────────────────────────────────
+// manifests.json (values-free, built by derive-manifests.js) maps each project
+// dir → the master-secret keys its CODE references. Used by `regen` to write a
+// scoped .env, and by the manifest-aware fanOut guard to stop a rotation from
+// silently re-broadening a scoped .env (the silent-decay trap).
+const MANIFESTS_PATH = path.join(ROOT, 'manifests.json');
+function loadManifests() {
+ if (!fs.existsSync(MANIFESTS_PATH)) return { base_keys: [], projects: {} };
+ return JSON.parse(fs.readFileSync(MANIFESTS_PATH, 'utf8'));
+}
+// Look up the manifest entry that owns a given .env file path (by its dir).
+function manifestForEnvPath(man, absEnvPath) {
+ const dirTilde = path.dirname(absEnvPath).replace(HOME, '~');
+ return man.projects[dirTilde] || null;
+}
+// Fan-out guard: should we SKIP writing `key` to the .env at `absPath`?
+// Only active when SCOPED_FANOUT=1 (default OFF → behavior unchanged until Steve
+// enables scoping fleet-wide). NEVER skips a review_required/dynamic project (its
+// manifest is known-incomplete) or an unknown path (fail-open — fan everything).
+// Skips only for a narrowable project whose manifest does not list the key.
+let _MAN_CACHE = null;
+function scopedSkip(absPath, key) {
+ if (process.env.SCOPED_FANOUT !== '1') return false;
+ if (!_MAN_CACHE) _MAN_CACHE = loadManifests();
+ const e = manifestForEnvPath(_MAN_CACHE, absPath);
+ if (!e || e.review_required || e.missing_dir) return false; // fail-open
+ const allow = new Set([...(e.derived || []), ...(_MAN_CACHE.base_keys || [])]);
+ if (allow.has(key)) return false;
+ console.error(` ⚠ scoped-skip ${key} → ${absPath.replace(HOME,'~')} (not in manifest)`);
+ return true;
+}
function loadEnvFile(p) {
if (!fs.existsSync(p)) return {};
const out = {};
@@ -240,6 +272,7 @@ function fanOut(key, value) {
}
} else {
const p = expand(d.path);
+ if (scopedSkip(p, key)) continue;
const cur = loadEnvFile(p); cur[key] = value;
writeEnvFile(p, cur, true); written.push(p);
}
@@ -252,6 +285,7 @@ function fanOut(key, value) {
// no env_file branch at all → these dests were silently skipped.)
const p = expand(d.path);
if (!fs.existsSync(p)) { console.error(` ⚠ env_file skip (missing): ${p}`); continue; }
+ if (scopedSkip(p, key)) continue;
let text = fs.readFileSync(p, 'utf8');
let note = '';
const dsnSpec = d.dsn ? { dsn: d.dsn, user: d.dsnUser || 'dw_admin' } : DSN_REWRITE[key];
@@ -270,11 +304,13 @@ function fanOut(key, value) {
written.push(p + note);
} else if (d.type === 'skill') {
const p = path.join(HOME, '.claude/skills', d.name, '.env');
+ if (scopedSkip(p, key)) continue;
const cur = loadEnvFile(p); cur[key] = value;
writeEnvFile(p, cur, true); written.push(p);
} else if (d.type === 'site_local') {
for (const dom of d.domains) {
const p = expand(`~/Projects/site-factory/sites/${dom}/app/.env.local`);
+ if (scopedSkip(p, key)) continue;
const cur = loadEnvFile(p); cur[key] = value;
writeEnvFile(p, cur, true); written.push(p);
}
@@ -416,6 +452,71 @@ function cmdAudit() {
for (const f of findings) console.log(` ${f.pattern.padEnd(24)} ${f.file}:${f.line} …${f.last4}`);
}
+// ─── regen (least-privilege scoping, TK-10045) ───────────────────────────
+// Writes each project a scoped .env = manifest ∩ master. Default --dry-run just
+// reports the diff. --apply backs up every .env, REMOVES only master-secret keys
+// the project's code doesn't reference (app-local non-secret vars are never
+// touched — they're not in master), and REFUSES review_required/dynamic projects
+// (their manifest is known-incomplete). --project=<~/Projects/x> scopes to one.
+function cmdRegen(args) {
+ const apply = args.includes('--apply');
+ const addMissing = args.includes('--add-missing'); // opt-in: provision keys the code refs but .env lacks
+ const projFilter = (args.find(a => a.startsWith('--project=')) || '').split('=')[1];
+ const man = loadManifests();
+ if (!Object.keys(man.projects || {}).length) { console.error('no manifests.json — run: node derive-manifests.js'); process.exit(2); }
+ const master = loadEnvFile(MASTER_ENV);
+ const masterKeys = new Set(Object.keys(master));
+ const base = new Set(man.base_keys || []);
+ const reg = loadRegistry(); reg.scoped = reg.scoped || {};
+ const t = { projects: 0, remove: 0, add: 0, applied: 0, gatedReview: 0 };
+ const rows = [];
+ for (const [name, e] of Object.entries(man.projects)) {
+ if (projFilter && name !== projFilter) continue;
+ if (e.missing_dir) continue;
+ const p = expand(e.env_path);
+ if (p === MASTER_ENV) continue; // NEVER scope the master .env (would strip all 196)
+ const current = loadEnvFile(p);
+ const curKeys = new Set(Object.keys(current));
+ const allow = new Set([...(e.derived || []), ...base]);
+ // REMOVE = the blast-radius win: master keys in the .env the code never references.
+ const removed = [...curKeys].filter(k => masterKeys.has(k) && !allow.has(k)).sort();
+ // MISSING = advisory: code refs these master keys but the .env lacks them (service maybe
+ // broken, or gets them elsewhere). NOT added unless --add-missing, because provisioning a
+ // live secret into a new .env EXPANDS blast radius — the opposite of this pass's purpose.
+ const missing = (e.derived || []).filter(k => masterKeys.has(k) && !curKeys.has(k)).sort();
+ const added = addMissing ? missing : [];
+ if (!removed.length && !added.length) continue;
+ rows.push({ name, review: e.review_required, removed, missing, added });
+ t.projects++; t.remove += removed.length; t.add += added.length;
+ if (apply) {
+ if (e.review_required) { t.gatedReview++; continue; }
+ if (fs.existsSync(p)) fs.copyFileSync(p, `${p}.pre-scope.${Date.now()}`);
+ const removeSet = new Set(removed);
+ let body = (fs.existsSync(p) ? fs.readFileSync(p, 'utf8') : '').split('\n')
+ .filter(l => { const m = l.match(/^([A-Z_][A-Z0-9_]*)=/); return !(m && removeSet.has(m[1])); })
+ .join('\n');
+ if (!body.endsWith('\n')) body += '\n';
+ for (const k of added) body += `${k}=${envEscape(master[k])}\n`;
+ fs.mkdirSync(path.dirname(p), { recursive: true });
+ fs.writeFileSync(p, body); try { fs.chmodSync(p, 0o600); } catch {}
+ const scopedKeys = [...allow].filter(k => masterKeys.has(k)).sort();
+ reg.scoped[name] = { env_path: e.env_path, scoped_digest: crypto.createHash('sha256').update(scopedKeys.join(',')).digest('hex').slice(0, 12), key_count: scopedKeys.length, applied: new Date().toISOString() };
+ t.applied++;
+ }
+ }
+ rows.sort((a, b) => b.removed.length - a.removed.length);
+ console.log(`regen ${apply ? 'APPLY' : 'DRY-RUN'}${addMissing ? ' +add-missing' : ' (remove-only)'} — ${t.projects} project(s), ${t.remove} over-shared keys removed${addMissing ? `, ${t.add} added` : ''}`);
+ for (const r of rows.slice(0, 40)) {
+ console.log(` ${r.review ? '⟲REVIEW ' : ' '}${r.name}`);
+ if (r.removed.length) console.log(` − ${r.removed.length} over-shared: ${r.removed.slice(0, 12).join(', ')}${r.removed.length > 12 ? ' …' : ''}`);
+ if (r.added.length) console.log(` + ${r.added.length} added: ${r.added.join(', ')}`);
+ else if (r.missing.length) console.log(` ? ${r.missing.length} code-refs-but-.env-lacks (advisory): ${r.missing.slice(0, 8).join(', ')}${r.missing.length > 8 ? ' …' : ''}`);
+ }
+ if (rows.length > 40) console.log(` … +${rows.length - 40} more`);
+ if (apply) { saveRegistry(reg); console.log(`applied to ${t.applied} project(s); ${t.gatedReview} review_required SKIPPED (gated — hand-review + migration runbook).`); }
+ else console.log(`\ndry-run only. ⟲REVIEW = dynamic env access, SKIPPED by --apply. '?' rows are advisory (not auto-added). Back up + reload + /healthz-verify per project before applying customer-facing ones.`);
+}
+
// ─── dispatch ───────────────────────────────────────────────────────────
const [, , cmd, ...rest] = process.argv;
(async () => {
@@ -426,8 +527,9 @@ const [, , cmd, ...rest] = process.argv;
case 'check': await cmdCheck(rest[0]); break;
case 'sync': cmdSync(); break;
case 'audit': cmdAudit(); break;
+ case 'regen': cmdRegen(rest); break;
default:
- console.error('usage: cli.js <add|import-paste|list|check|sync|audit> [args]');
+ console.error('usage: cli.js <add|import-paste|list|check|sync|audit|regen> [args]');
process.exit(2);
}
})().catch(e => { console.error('ERR:', e.message); process.exit(1); });
diff --git a/derive-manifests.js b/derive-manifests.js
new file mode 100644
index 0000000..6ee01ab
--- /dev/null
+++ b/derive-manifests.js
@@ -0,0 +1,116 @@
+#!/usr/bin/env node
+// derive-manifests.js — READ-ONLY. Builds a central, values-free per-project
+// secret manifest (manifests.json) for the least-privilege scoping (TK-10045).
+//
+// For each LOCAL destination path in routes.json, greps the owning project dir
+// for the secret keys its CODE actually references, so `cli.js regen` can write
+// each project a .env = manifest ∩ master instead of the broadcast fan-out that
+// put GEORGE_AUTH in 52 processes. Projects with dynamic `process.env[var]`
+// access are flagged review_required and NOT narrowed (a grep can't prove which
+// key a runtime lookup needs). Writes NO secret values — only key NAMES.
+//
+// Usage: node derive-manifests.js (writes manifests.json + prints summary)
+const fs = require('fs');
+const path = require('path');
+const os = require('os');
+const { execSync } = require('child_process');
+
+const ROOT = path.dirname(__filename);
+const HOME = os.homedir();
+const ROUTES = JSON.parse(fs.readFileSync(path.join(ROOT, 'routes.json'), 'utf8'));
+const MASTER = new Set(
+ fs.readFileSync(path.join(ROOT, '.env'), 'utf8').split('\n')
+ .map(l => (l.match(/^([A-Z_][A-Z0-9_]*)=/) || [])[1]).filter(Boolean)
+);
+const expand = p => p.replace(/^~/, HOME);
+
+// Non-secret operational vars — always allowed, never counted as secret exposure.
+const BASE_KEYS = new Set(['PORT','NODE_ENV','BIND','BIND_HOST','HOST','HOSTNAME',
+ 'PUBLIC_BASE_URL','PUBLIC_URL','BASE_URL','HTTPS','LOG_LEVEL','TZ','PM2_HOME','PATH','HOME']);
+
+// ── 1. collect every local destination path → owning project dir ────────────
+// key = project dir (for grep); value = the .env path regen will write.
+const projects = new Map(); // dir -> { envPath, dir }
+function addPath(envPath) {
+ const p = expand(envPath);
+ // project dir = the .env's directory (…/foo/.env → …/foo). For a nested
+ // …/foo/app/.env.local the grep root is that app dir.
+ const dir = path.dirname(p);
+ if (!projects.has(dir)) projects.set(dir, { envPath: p, dir });
+}
+function walkRoutes(obj) {
+ for (const k of Object.keys(obj)) {
+ const entry = obj[k];
+ if (!entry || !entry.destinations) continue;
+ for (const d of entry.destinations) {
+ if (d.host) continue; // remote → handled by push-remote, skip local derive
+ if (d.type === 'project' || d.type === 'env_file') addPath(d.path);
+ else if (d.type === 'skill') addPath(`~/.claude/skills/${d.name}/.env`);
+ else if (d.type === 'site_local') for (const dom of (d.domains||[])) addPath(`~/Projects/site-factory/sites/${dom}/app/.env.local`);
+ // mcp (~/.claude.json) is handled separately — not a project .env
+ }
+ }
+}
+walkRoutes(ROUTES.services || {});
+walkRoutes(ROUTES); // legacy top-level routes
+
+// ── 2. derive each project's referenced keys ────────────────────────────────
+const STATIC_RE = /process\.env\.[A-Z_][A-Z0-9_]*|process\.env\[['"][A-Z_][A-Z0-9_]*['"]\]/g;
+function deriveKeys(dir) {
+ if (!fs.existsSync(dir)) return { keys: [], dynamic: false, missing: true };
+ let out = '';
+ try {
+ out = execSync(
+ `grep -rhoE "process\\.env\\.[A-Z_][A-Z0-9_]*|process\\.env\\[['\\"][A-Z_][A-Z0-9_]*['\\"]\\]" ` +
+ `"${dir}" --include='*.js' --include='*.ts' --include='*.tsx' --include='*.mjs' --include='*.cjs' ` +
+ `--exclude-dir=node_modules --exclude-dir=.next --exclude-dir=dist --exclude-dir=.git --exclude-dir=build 2>/dev/null`,
+ { encoding: 'utf8', maxBuffer: 64 * 1024 * 1024 }
+ );
+ } catch { /* grep exit 1 = no matches */ }
+ const keys = new Set();
+ let m;
+ const re = new RegExp(STATIC_RE.source, 'g');
+ while ((m = re.exec(out)) !== null) {
+ const k = m[0].replace(/^process\.env\.?/, '').replace(/^\[['"]|['"]\]$/g, '');
+ if (/^[A-Z_][A-Z0-9_]*$/.test(k)) keys.add(k);
+ }
+ // dynamic access: process.env[ <not a quote> ...] — a runtime-computed key.
+ // Includes the manual-parse loader loops (process.env[k]=v); conservatively
+ // flags the whole project review_required so regen won't narrow it.
+ let dynamic = false;
+ try {
+ execSync(`grep -rlE "process\\.env\\[[^'\\"]" "${dir}" --include='*.js' --include='*.ts' --include='*.tsx' --include='*.mjs' --include='*.cjs' --exclude-dir=node_modules --exclude-dir=.next --exclude-dir=.git 2>/dev/null | head -1`,
+ { encoding: 'utf8' }).trim() && (dynamic = true);
+ } catch { /* none */ }
+ return { keys: [...keys], dynamic, missing: false };
+}
+
+// ── 3. build manifests ──────────────────────────────────────────────────────
+const manifests = {};
+let stat = { total: 0, dynamic: 0, missing: 0, narrowable: 0 };
+for (const { envPath, dir } of projects.values()) {
+ const { keys, dynamic, missing } = deriveKeys(dir);
+ const derivedSecrets = keys.filter(k => MASTER.has(k)).sort(); // master keys the code uses
+ const name = dir.replace(HOME, '~');
+ manifests[name] = {
+ env_path: envPath.replace(HOME, '~'),
+ derived: derivedSecrets, // master keys referenced in code
+ other_keys: keys.filter(k => !MASTER.has(k) && !BASE_KEYS.has(k)).sort(), // non-master refs (kept, informational)
+ dynamic,
+ review_required: dynamic || missing, // don't auto-narrow these
+ missing_dir: missing,
+ };
+ stat.total++;
+ if (missing) stat.missing++;
+ else if (dynamic) stat.dynamic++;
+ else stat.narrowable++;
+}
+
+fs.writeFileSync(path.join(ROOT, 'manifests.json'),
+ JSON.stringify({ _generated: 'derive-manifests.js', _note: 'values-free per-project secret allowlist; keys only', base_keys: [...BASE_KEYS], projects: manifests }, null, 2));
+
+console.log(`derive-manifests: ${stat.total} projects`);
+console.log(` narrowable (clean, static-only): ${stat.narrowable}`);
+console.log(` review_required (dynamic env access): ${stat.dynamic}`);
+console.log(` missing dir (routed but no code found): ${stat.missing}`);
+console.log(` wrote manifests.json (values-free)`);
diff --git a/manifests.json b/manifests.json
new file mode 100644
index 0000000..6a18e0b
--- /dev/null
+++ b/manifests.json
@@ -0,0 +1,3272 @@
+{
+ "_generated": "derive-manifests.js",
+ "_note": "values-free per-project secret allowlist; keys only",
+ "base_keys": [
+ "PORT",
+ "NODE_ENV",
+ "BIND",
+ "BIND_HOST",
+ "HOST",
+ "HOSTNAME",
+ "PUBLIC_BASE_URL",
+ "PUBLIC_URL",
+ "BASE_URL",
+ "HTTPS",
+ "LOG_LEVEL",
+ "TZ",
+ "PM2_HOME",
+ "PATH",
+ "HOME"
+ ],
+ "projects": {
+ "~/Projects/Norma": {
+ "env_path": "~/Projects/Norma/.env.local",
+ "derived": [
+ "CENSUS_API_KEY",
+ "GEMINI_API_KEY",
+ "GEORGE_AUTH",
+ "GOOGLE_OAUTH_CLIENT_ID",
+ "GOOGLE_OAUTH_CLIENT_SECRET",
+ "IG_ACCESS_TOKEN",
+ "IG_USER_ID",
+ "SLACK_VERIFICATION_TOKEN",
+ "X_BEARER_TOKEN"
+ ],
+ "other_keys": [
+ "ACTION_NETWORK_API_KEY",
+ "AUTH_PASSWORD",
+ "AUTH_USERNAME",
+ "BLS_API_KEY",
+ "BSKY_HANDLE",
+ "BSKY_PASSWORD",
+ "BSKY_SERVICE",
+ "CLICKUP_API_KEY",
+ "CONGRESS_API_KEY",
+ "CRON_SECRET",
+ "DATABASE_URL",
+ "DISCORD_BOT_TOKEN",
+ "EDGE_TTS_VOICE",
+ "FB_APP_ID",
+ "FB_APP_SECRET",
+ "FB_PAGE_ACCESS_TOKEN",
+ "FB_PAGE_ID",
+ "FRED_API_KEY",
+ "GEMINI_IMAGE_API_KEY",
+ "GEORGE_URL",
+ "GMAIL_CLIENT_ID",
+ "GMAIL_CLIENT_SECRET",
+ "GMAIL_REDIRECT_URI",
+ "GOOGLE_OAUTH_REDIRECT_URI",
+ "IG_GRAPH_HOST",
+ "IG_GRAPH_VERSION",
+ "NEXT_PUBLIC_APPLE_OAUTH_ENABLED",
+ "NORMA_PASS",
+ "NORMA_URL",
+ "NORMA_USER",
+ "PROPUBLICA_API_KEY",
+ "PULSE_API_PASS",
+ "PULSE_API_URL",
+ "PULSE_API_USER",
+ "REDDIT_CLIENT_ID",
+ "REDDIT_CLIENT_SECRET",
+ "REDDIT_PASSWORD",
+ "REDDIT_USERNAME",
+ "REDDIT_USER_AGENT",
+ "SCORECARD_API_KEY",
+ "SESSION_SECRET",
+ "SLACK_WEBHOOK_URL",
+ "SMTP_HOST",
+ "SMTP_PASS",
+ "SMTP_PORT",
+ "SMTP_USER",
+ "TEST_SEND_TO",
+ "TWITCH_BOT_USERNAME",
+ "TWITCH_CLIENT_ID",
+ "TWITCH_CLIENT_SECRET",
+ "TWITCH_OAUTH_TOKEN",
+ "TWITTER_ACCESS_SECRET",
+ "TWITTER_ACCESS_TOKEN",
+ "TWITTER_API_KEY",
+ "TWITTER_API_SECRET",
+ "TWITTER_BEARER_TOKEN",
+ "USE_HTTPS",
+ "WEBHOOK_SECRET"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/StudentLoanTracker": {
+ "env_path": "~/Projects/StudentLoanTracker/.env.local",
+ "derived": [
+ "SHOPIFY_ADMIN_TOKEN"
+ ],
+ "other_keys": [
+ "ADMIN_PASSWORD",
+ "DATABASE_URL"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/ClawCoder": {
+ "env_path": "~/Projects/ClawCoder/.env.local",
+ "derived": [],
+ "other_keys": [
+ "DATABASE_URL"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/Designer-Wallcoverings/DW-Programming/ImportNewSkufromURL": {
+ "env_path": "~/Projects/Designer-Wallcoverings/DW-Programming/ImportNewSkufromURL/.env.local",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "GEMINI_API_KEY",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_STORE_DOMAIN",
+ "SLACK_BOT_TOKEN",
+ "TWILIO_ACCOUNT_SID",
+ "TWILIO_AUTH_TOKEN",
+ "TWILIO_PHONE_NUMBER",
+ "YORKWALL_PASS",
+ "YORKWALL_USER"
+ ],
+ "other_keys": [
+ "ALERT_THRESHOLD_CPU",
+ "ALERT_THRESHOLD_MEMORY",
+ "APP_BASE",
+ "ARMANI_MAX_DETAIL_PAGES",
+ "ARMANI_MAX_RESULTS",
+ "BATCH",
+ "BATCH_DELAY",
+ "BB_DEBUG",
+ "BRIGHTDATA_API_KEY",
+ "BRIGHTDATA_ENDPOINT",
+ "BRIGHTDATA_PASSWORD",
+ "BRIGHTDATA_USERNAME",
+ "BRIGHTDATA_ZONE",
+ "CATALOG_DELAY_MS",
+ "CHECK_INTERVAL",
+ "CLAUDE_BIN",
+ "CUSTOM_PROXY_PASSWORD",
+ "CUSTOM_PROXY_SERVER",
+ "CUSTOM_PROXY_USERNAME",
+ "DASH_URL",
+ "DATABASE_URL",
+ "DRY_RUN",
+ "DW_BASIC_AUTH",
+ "ENDPOINTS_TO_CHECK",
+ "ENRICH_ON_IMPORT",
+ "EXTRACT_PREFER_LOCAL",
+ "GITHUB_REPOSITORY_NAME",
+ "GITHUB_REPOSITORY_OWNER",
+ "GITHUB_TOKEN",
+ "GOOGLE_API_KEY",
+ "HC_CONCURRENCY",
+ "HC_MAX",
+ "HC_TIMEOUT_MS",
+ "HUGGINGFACE_API_KEY",
+ "HUGGINGFACE_MODEL",
+ "INSKU_ENV_PATH",
+ "INSTAGRAM_ACCESS_TOKEN",
+ "INSTAGRAM_APP_ID",
+ "INSTAGRAM_APP_SECRET",
+ "INSTAGRAM_BUSINESS_ACCOUNT_ID",
+ "LIMIT_PRODUCTS_PER_VENDOR",
+ "LIMIT_ROWS",
+ "LIMIT_VENDORS",
+ "MAX_ISSUE_NUMBER",
+ "MAX_PUBLISH",
+ "MIN_ISSUE_NUMBER",
+ "MONITOR_INTERVAL",
+ "MONTHLY_ALL",
+ "MONTHLY_DAY",
+ "NEXT_PUBLIC_BASE_URL",
+ "NOTIFY_PHONE_NUMBER",
+ "OLLAMA_EXTRACT_MODEL",
+ "OLLAMA_URL",
+ "OLLAMA_VISION_MODEL",
+ "OXYLABS_ENDPOINT",
+ "OXYLABS_PASSWORD",
+ "OXYLABS_USERNAME",
+ "PARALLEL_LIMIT",
+ "PGPASSWORD",
+ "PG_PASSWORD",
+ "POSTGRES_DB",
+ "POSTGRES_HOST",
+ "POSTGRES_PASSWORD",
+ "POSTGRES_PORT",
+ "POSTGRES_USER",
+ "PROXY_ENABLED",
+ "PROXY_MAX_RETRIES",
+ "PROXY_ROTATION_ENABLED",
+ "PROXY_TYPE",
+ "PSQL_BIN",
+ "PUPPETEER_EXECUTABLE_PATH",
+ "QUEUE_DELAY_MS",
+ "QUEUE_MAX",
+ "REDIS_ENABLED",
+ "REDIS_HOST",
+ "REDIS_PASSWORD",
+ "REDIS_PORT",
+ "REFRESH_MODE",
+ "RETRY_FAILURES",
+ "SAMPLE_PER_VENDOR",
+ "SAVE_REPORTS",
+ "SCRAPER_BB_LAUNCH",
+ "SCRAPER_BROWSERBASE",
+ "SCRAPER_PAUSED",
+ "SHOPIFY_ACCESS_TOKEN",
+ "SHOPIFY_ADMIN_ACCESS_TOKEN",
+ "SHOPIFY_ADMIN_API_VERSION",
+ "SLACK_WEBHOOK_URL",
+ "SMARTPROXY_ENDPOINT",
+ "SMARTPROXY_PASSWORD",
+ "SMARTPROXY_USERNAME",
+ "SOCIALPILOT_API_BASE_URL",
+ "SOCIALPILOT_API_KEY",
+ "SOCIALPILOT_AUTH_URL",
+ "SOCIALPILOT_CLIENT_ID",
+ "SOCIALPILOT_CLIENT_SECRET",
+ "SOCIALPILOT_REDIRECT_URI",
+ "SOCIALPILOT_TOKEN_URL",
+ "STEVE_SLACK_ID",
+ "TO_PHONE_NUMBER",
+ "WPW",
+ "YW_PASS",
+ "YW_USER"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/wallco-ai": {
+ "env_path": "~/Projects/wallco-ai/.env",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "CLOUDFLARE_API_TOKEN",
+ "ELEVENLABS_API_KEY",
+ "GEMINI_API_KEY",
+ "JWT_SECRET",
+ "MAIL_FROM",
+ "MP_DESIGNER_SECRET",
+ "OPENAI_API_KEY",
+ "PURELYMAIL_API_TOKEN",
+ "REPLICATE_API_TOKEN",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_STORE",
+ "SHOPIFY_STORE_DOMAIN",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_TOKEN",
+ "AUDIT_CATEGORY",
+ "AUDIT_CONCURRENCY",
+ "AUDIT_INTENT",
+ "AUDIT_MAX",
+ "AUDIT_MODEL",
+ "AUDIT_SERVER",
+ "AUTH_DEV_SECRET",
+ "AUTH_MODE",
+ "AUTO_LABEL_MODEL",
+ "BASE",
+ "BB_MODE",
+ "BB_TARGET_URL",
+ "BUNDLE_EXPIRY_DAYS",
+ "BUNDLE_MAX_DOWNLOADS_PER_ORDER",
+ "BUTTERFLY_DREAM_SRC",
+ "BY_ID_DEBUG",
+ "CACTUS_SAMPLE_N",
+ "CATEGORY_REGEX",
+ "CLASSIFIER_CONCURRENCY",
+ "CLASSIFIER_MODEL",
+ "CLEAN_TRELLIS_SRC",
+ "CMP_SHARD",
+ "CMP_SHARDS",
+ "COLOR_CAP",
+ "COLOR_PCT",
+ "COMFY_HEIGHT",
+ "COMFY_MODEL",
+ "COMFY_POLL_TIMEOUT_SEC",
+ "COMFY_REFINER_MODEL",
+ "COMFY_SAMPLER",
+ "COMFY_SCHEDULER",
+ "COMFY_STEPS",
+ "COMFY_URL",
+ "COMFY_URL_OVERRIDE",
+ "COMFY_WIDTH",
+ "COMPOSITION_DETECTOR_MODEL",
+ "CONCEPT_Q",
+ "CONCURRENCY",
+ "COST_PER_ROLL",
+ "CULL_VIEWER_BIND",
+ "CULL_VIEWER_PORT",
+ "DATABASE_URL",
+ "DB_NAME",
+ "DENSITY_MAX",
+ "DESIGN_REFS_POOL_SIZE",
+ "DESIGN_REFS_TTL_SEC",
+ "DRUNK_ANIMALS_COOLDOWN",
+ "DRUNK_PALETTE",
+ "DRUNK_PALETTE_INDEX",
+ "DRUNK_TEXTURE",
+ "DRY_RUN",
+ "DW_UNIFIED_PG_PASSWORD",
+ "ELEVENLABS_VOICE_ID",
+ "ETSY_CLIENT_ID",
+ "ETSY_OAUTH_ACCESS_TOKEN",
+ "ETSY_OAUTH_REFRESH_TOKEN",
+ "ETSY_SHOP_ID",
+ "GA4_MEASUREMENT_ID",
+ "GEMINI_IMAGE_MODEL",
+ "GEMINI_VISION_MODEL",
+ "GENERATE_WIDTH_POOL",
+ "GENERATOR_COOLDOWN",
+ "GENERATOR_VARIATIONS",
+ "GEN_BACKEND",
+ "GHOST_DETECTOR_MODEL",
+ "GOOGLE_API_KEY",
+ "ID",
+ "IG_AGENT_AUTH",
+ "IG_AGENT_URL",
+ "INCLUDE_BLOCK_NULL",
+ "INSPIRATION_BUDGET_N",
+ "KEEP_SOURCE",
+ "LIMIT",
+ "MAC2_COMFY_URL",
+ "MARKETPLACE_DB_URL",
+ "MAX",
+ "MAX_ROLLS",
+ "MP_PUBLIC_BASE",
+ "MP_SAMPLE_PRICE",
+ "N",
+ "NEEDSTIF_URL",
+ "NEW_BADGE_HOURS",
+ "OLLAMA_BASE_URL",
+ "OLLAMA_HOST",
+ "OLLAMA_KEEP_ALIVE",
+ "OLLAMA_MODEL",
+ "OLLAMA_REVIEW_MODEL",
+ "OLLAMA_TIMEOUT_MS",
+ "OLLAMA_URL",
+ "OLLAMA_VISION_HOST",
+ "OLLAMA_VISION_MODEL",
+ "OLLAMA_VISION_URL",
+ "OPENAI_IMAGE_MODEL",
+ "PAIRS_UPSTREAM",
+ "PALM_Q",
+ "PANEL_Q",
+ "PGDATABASE",
+ "PGHOST",
+ "PGOPTIONS",
+ "PGPASSWORD",
+ "PGPORT",
+ "PGUSER",
+ "PILOT_SINCE_TS",
+ "PSQL_BIN",
+ "REGEN_PUBLISH",
+ "REPLICATE_HEIGHT",
+ "REPLICATE_WIDTH",
+ "RESEND_API_KEY",
+ "ROLLS",
+ "ROOM_API",
+ "SDXL_MODEL_VERSION",
+ "SEAMLESS_CADENCE_MS",
+ "SEAMLESS_ROUND_SIZE",
+ "SEAMLESS_TOLERANCE",
+ "SEAM_HEAL_MAX",
+ "SEAM_MAX",
+ "SEAM_PASS",
+ "SETTLEMENT_ALLOW_REVIEW",
+ "SETTLEMENT_OVERRIDE",
+ "SETTLEMENT_Q",
+ "SHOPIFY_API_VERSION",
+ "SHOPIFY_WEBHOOK_SECRET",
+ "SKIP_QUANTIZE_NO_GHOST",
+ "SMTP_HOST",
+ "SMTP_PASS",
+ "SMTP_PORT",
+ "SMTP_USER",
+ "STOP_HOUR",
+ "SUBJECT_DETECTOR_MODEL",
+ "TICK_MS",
+ "TRADE_ADMIN_EMAIL",
+ "TRADE_ADMIN_PASS",
+ "USER",
+ "WALLCO_ADMIN_EMAILS",
+ "WALLCO_BASE",
+ "WALLCO_BASE_URL",
+ "WALLCO_BATCH_PER_RENDER_MS",
+ "WALLCO_COMFY_FALLBACK",
+ "WALLCO_COMP_GATE",
+ "WALLCO_DB",
+ "WALLCO_EXTRA_NEGATIVE",
+ "WALLCO_FORCE_TILEABLE",
+ "WALLCO_FRAME_GATE",
+ "WALLCO_GHOST_GATE",
+ "WALLCO_HOST",
+ "WALLCO_JWT_SECRET",
+ "WALLCO_LICENSE_PRICE_CENTS",
+ "WALLCO_LOCK_TIMEOUT_MS",
+ "WALLCO_NO_CIRCULAR",
+ "WALLCO_NO_PALETTE_SUFFIX",
+ "WALLCO_PORT",
+ "WALLCO_REF_DENOISE",
+ "WALLCO_REF_IMG",
+ "WALLCO_REPLICATE_TILING",
+ "WALLCO_SEAMLESS_GATE",
+ "WALLCO_SEAMLESS_TOLERANCE",
+ "WALLCO_SEAM_HEAL",
+ "WALLCO_SERVER",
+ "WALLCO_TEST_REAL",
+ "WALLCO_TEST_SLUG",
+ "WALLCO_URL",
+ "WATERMARK_OWNER",
+ "WINNERS",
+ "WORKLIST"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/animate-museum-posts": {
+ "env_path": "~/Projects/animate-museum-posts/.env",
+ "derived": [
+ "REPLICATE_API_TOKEN"
+ ],
+ "other_keys": [
+ "CRON_SCHEDULE",
+ "DASHBOARD_PORT",
+ "EMAIL_FROM",
+ "EMAIL_HOST",
+ "EMAIL_PASS",
+ "EMAIL_PORT",
+ "EMAIL_SECURE",
+ "EMAIL_USER",
+ "GROK_API_KEY",
+ "HUGGINGFACE_TOKEN",
+ "POSTGRES_DB",
+ "POSTGRES_HOST",
+ "POSTGRES_PASSWORD",
+ "POSTGRES_PORT",
+ "POSTGRES_USER",
+ "RIJKSMUSEUM_API_KEY",
+ "RUNWAY_API_TOKEN",
+ "SLACK_WEBHOOK_URL",
+ "TWITTER_ACCESS_SECRET",
+ "TWITTER_ACCESS_TOKEN",
+ "TWITTER_API_KEY",
+ "TWITTER_API_SECRET"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/restaurant-directory": {
+ "env_path": "~/Projects/restaurant-directory/.env",
+ "derived": [],
+ "other_keys": [
+ "CRAWL_CONCURRENCY",
+ "CRAWL_STALE_DAYS",
+ "CRAWL_TIMEOUT_MS",
+ "DATABASE_URL",
+ "GEORGE_BASIC_AUTH",
+ "GEORGE_URL",
+ "OLLAMA_MODEL",
+ "OLLAMA_URL",
+ "PGDATABASE",
+ "PGHOST",
+ "PGUSER",
+ "USER"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/professional-directory": {
+ "env_path": "~/Projects/professional-directory/.env",
+ "derived": [
+ "GOOGLE_OAUTH_CLIENT_ID",
+ "GOOGLE_OAUTH_CLIENT_SECRET",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_LOOPBACK_TRUST",
+ "ADMIN_USER_ID",
+ "BASIC_AUTH",
+ "BUY_PUBLIC_BASE_URL",
+ "CATEGORY",
+ "CHAT_MODEL",
+ "CMS_DAC_URL",
+ "CMS_HOSP_URL",
+ "CONCURRENCY",
+ "CRAWLER_RUN_TOKEN",
+ "CRAWL_CONCURRENCY",
+ "CRAWL_LIMIT",
+ "DATABASE_URL",
+ "DATASET",
+ "DEFAULT_RATE_LIMIT_RPS",
+ "FORCE",
+ "GEORGE_BASE",
+ "GEORGE_DISABLE",
+ "GOOGLE_OAUTH_CALLBACK",
+ "HCAI_CSV_URL",
+ "HRSA_CSV_URL",
+ "INGEST_RUN_TOKEN",
+ "LIMIT",
+ "LLM_DEBUG",
+ "LLM_MOCKUP_FALLBACK",
+ "LLM_MOCKUP_MODEL",
+ "LLM_TIMEOUT_MS",
+ "MAX_PAGES",
+ "MAX_RETRIES",
+ "MBC_CSV",
+ "MODEL",
+ "MODEL_HOST",
+ "NPI_DEBUG",
+ "NUCC_URL",
+ "OLLAMA_BASE",
+ "OLLAMA_HOSTS",
+ "ONLY_DOCTORS",
+ "ORG_ID",
+ "OVERPASS_URL",
+ "PD_API_BASE",
+ "PD_PREVIEW_BASE",
+ "PD_PREVIEW_BIND",
+ "PD_PUBLIC_BASE",
+ "PORT_API",
+ "PORT_CRAWLER",
+ "PORT_DEDUPE",
+ "PORT_ENRICH",
+ "PORT_INGEST",
+ "PORT_PREVIEW",
+ "RDAP_RPS",
+ "SENTIMENT_MODEL",
+ "SESSION_INSECURE",
+ "SESSION_SECRET",
+ "SMOKE",
+ "STRICT",
+ "STRIPE_DATA_WEBHOOK_SECRET",
+ "STRIPE_PRICE_DOCTOR_PRO",
+ "STRIPE_PRICE_PATIENT_PLUS",
+ "USER_AGENT",
+ "VARIANTS"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/animals": {
+ "env_path": "~/Projects/animals/.env",
+ "derived": [
+ "GEORGE_AUTH",
+ "GODADDY_API_KEY",
+ "GODADDY_API_SECRET",
+ "GODADDY_PAT",
+ "MOONSHOT_API_KEY",
+ "OPENAI_API_KEY",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_EMAIL",
+ "AD_PROVIDER",
+ "BASIC_AUTH",
+ "DATABASE_URL",
+ "DEBUG",
+ "DRY",
+ "FLICKR_API_KEY",
+ "GEORGE_FROM_NAME",
+ "GEORGE_GMAIL_AUTH",
+ "GEORGE_GMAIL_URL",
+ "LIMIT",
+ "LLM_EXTRACT",
+ "LLM_KEEPALIVE",
+ "LLM_TRIAGE",
+ "MOONSHOT_ENDPOINT",
+ "MOONSHOT_VISION_MODEL",
+ "NEWSLETTER_MAILING_ADDRESS",
+ "OLLAMA_HOST",
+ "SLEEP_MS",
+ "STRIPE_WEBHOOK_SECRET",
+ "SUBREDDITS",
+ "USE_BROWSERBASE",
+ "YOLO_SLEEP_MS",
+ "YOLO_TASK_TIMEOUT_MS"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/lawyer-directory-builder": {
+ "env_path": "~/Projects/lawyer-directory-builder/.env",
+ "derived": [
+ "STRIPE_PRICE_LAWYER_PRO_MONTHLY",
+ "STRIPE_SECRET_KEY",
+ "STRIPE_TIER_WEBHOOK_SECRET"
+ ],
+ "other_keys": [
+ "ADMIN_PASSWORD",
+ "AUDIT_CONCURRENCY",
+ "CALBAR_CONCURRENCY",
+ "CALBAR_DELAY_MS",
+ "CLICK_ADMIN_EMAIL",
+ "CLICK_ADMIN_PASS",
+ "CLICK_BASE",
+ "CONCURRENCY",
+ "CREATE_ADMIN_PASSWORD",
+ "DISCOVERY_CONCURRENCY",
+ "HERE_API_KEY",
+ "HERE_DELAY_MS",
+ "LIMIT",
+ "LLM_MOCKUP_MODEL",
+ "LLM_TIMEOUT_MS",
+ "NOMINATIM_DELAY_MS",
+ "OLLAMA_URL",
+ "OVERPASS_URL",
+ "SITE_INTEL_MAX_AGE_DAYS",
+ "SITE_INTEL_TIMEOUT_MS",
+ "SKIP_DONE_DAYS",
+ "STATE_BAR_RPS",
+ "STRIPE_DATA_WEBHOOK_SECRET",
+ "STRIPE_WEBHOOK_SECRET",
+ "USER_AGENT",
+ "WEBSITE_DISCOVERY_DELAY_MS"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/_ventura-recon": {
+ "env_path": "~/Projects/_ventura-recon/.env",
+ "derived": [
+ "BRAVE_SEARCH_API_KEY",
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID"
+ ],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/claude-codex-meeting": {
+ "env_path": "~/Projects/claude-codex-meeting/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/claude-codex": {
+ "env_path": "~/.claude/skills/claude-codex/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/site-factory": {
+ "env_path": "~/Projects/site-factory/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "GOOGLE_CLIENT_SECRET",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_EMAILS",
+ "BASIC_AUTH",
+ "BUILD_ID",
+ "CNCP_OUT",
+ "DATABASE_URL",
+ "GOOGLE_CALLBACK_URL",
+ "GOOGLE_CLIENT_ID",
+ "NEXT_PUBLIC_GA4_ID",
+ "NEXT_PUBLIC_SITE_URL",
+ "ORCHESTRATOR_URL",
+ "ORCH_URL",
+ "SESSION_SECRET",
+ "SF_ADMIN_DEV",
+ "SF_BASIC_AUTH",
+ "SF_CRITIC_BIND",
+ "SF_ORCH_BIND",
+ "STRIPE_PRICE_BASIC",
+ "STRIPE_PRICE_PRO",
+ "STRIPE_WEBHOOK_SECRET",
+ "VERCEL_TOKEN"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/.claude/skills/cloudflare-manager": {
+ "env_path": "~/.claude/skills/cloudflare-manager/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/setup-domains": {
+ "env_path": "~/.claude/skills/setup-domains/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/domain-setup": {
+ "env_path": "~/.claude/skills/domain-setup/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/site-factory/sites/wholivedthere.com/app": {
+ "env_path": "~/Projects/site-factory/sites/wholivedthere.com/app/.env.local",
+ "derived": [
+ "GOOGLE_CLIENT_SECRET",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_EMAILS",
+ "BUILD_ID",
+ "DATABASE_URL",
+ "GOOGLE_CLIENT_ID",
+ "NEXT_PUBLIC_GA4_ID",
+ "NEXT_PUBLIC_SITE_URL",
+ "STRIPE_PRICE_BASIC",
+ "STRIPE_PRICE_PRO",
+ "STRIPE_WEBHOOK_SECRET"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/site-factory/sites/bubbesblock.com/app": {
+ "env_path": "~/Projects/site-factory/sites/bubbesblock.com/app/.env.local",
+ "derived": [
+ "GOOGLE_CLIENT_SECRET",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_EMAILS",
+ "BUILD_ID",
+ "DATABASE_URL",
+ "GOOGLE_CLIENT_ID",
+ "NEXT_PUBLIC_GA4_ID",
+ "NEXT_PUBLIC_SITE_URL",
+ "STRIPE_PRICE_BASIC",
+ "STRIPE_PRICE_PRO",
+ "STRIPE_WEBHOOK_SECRET"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/site-factory/sites/claimmyaddress.com/app": {
+ "env_path": "~/Projects/site-factory/sites/claimmyaddress.com/app/.env.local",
+ "derived": [
+ "GOOGLE_CLIENT_SECRET",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_EMAILS",
+ "BUILD_ID",
+ "DATABASE_URL",
+ "GOOGLE_CLIENT_ID",
+ "NEXT_PUBLIC_GA4_ID",
+ "NEXT_PUBLIC_SITE_URL",
+ "STRIPE_PRICE_BASIC",
+ "STRIPE_PRICE_PRO",
+ "STRIPE_WEBHOOK_SECRET"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/NationalPaperHangers": {
+ "env_path": "~/Projects/NationalPaperHangers/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "BUTLR_EXTERNAL_SECRET",
+ "INFO_NATIONALPAPERHANGERS_COM_PASSWORD",
+ "LINKEDIN_CLIENT_ID",
+ "LINKEDIN_CLIENT_SECRET",
+ "STRIPE_NPH_WEBHOOK_SECRET",
+ "STRIPE_PUBLISHABLE_KEY",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "BASE",
+ "BOOKING_SIGNING_SECRET",
+ "BUTLR_API_URL",
+ "CHROME_PATH",
+ "CLAIMED_SLUG",
+ "EMAIL",
+ "EMAIL_FROM",
+ "EMAIL_FROM_NAME",
+ "MAILING_ADDRESS",
+ "NPH_DEFAULT_DEPOSIT_CENTS",
+ "NPH_GOOGLE_OAUTH_CLIENT_ID",
+ "NPH_GOOGLE_OAUTH_CLIENT_SECRET",
+ "NPH_PLATFORM_ADMIN_INSTALLER_IDS",
+ "NPH_PLATFORM_FEE_BPS",
+ "NPH_PUBLIC_URL",
+ "NPH_SMTP_HOST",
+ "NPH_SMTP_PASS",
+ "NPH_SMTP_PORT",
+ "NPH_SMTP_USER",
+ "PGDATABASE",
+ "PGHOST",
+ "PGPASSWORD",
+ "PGPORT",
+ "PGUSER",
+ "PW",
+ "SESSION_SECRET",
+ "SLUG",
+ "STRIPE_BOOTSTRAP_ACCEPT_PROBES",
+ "STRIPE_DEV_ACCEPT_UNSIGNED",
+ "STRIPE_E2E_FULL",
+ "STRIPE_WEBHOOK_SECRET",
+ "TARGET_SLUG",
+ "UNCLAIMED_SLUG",
+ "UNSUBSCRIBE_SIGNING_SECRET",
+ "UPLOAD_FIXTURE",
+ "USER"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/ventura-claw-leads": {
+ "env_path": "~/Projects/ventura-claw-leads/.env",
+ "derived": [
+ "INFO_VENTURACLAW_COM_PASSWORD",
+ "STRIPE_PRICE_VCL_PREMIER_MONTH",
+ "STRIPE_PRICE_VCL_STANDARD_MONTH",
+ "STRIPE_PRICE_VCL_STARTER_MONTH",
+ "STRIPE_SECRET_KEY",
+ "STRIPE_VCL_WEBHOOK_SECRET"
+ ],
+ "other_keys": [
+ "CLAIM_SIGNING_SECRET",
+ "DATABASE_URL",
+ "EMAIL_FROM",
+ "EMAIL_FROM_NAME",
+ "MAILING_ADDRESS",
+ "NPH_SMTP_HOST",
+ "NPH_SMTP_PORT",
+ "PGDATABASE",
+ "PGHOST",
+ "PGPASSWORD",
+ "PGPORT",
+ "PGUSER",
+ "SESSION_SECRET",
+ "UNSUBSCRIBE_SIGNING_SECRET",
+ "USER",
+ "VCL_PUBLIC_URL",
+ "VCL_SMTP_HOST",
+ "VCL_SMTP_PASS",
+ "VCL_SMTP_PORT",
+ "VCL_SMTP_USER"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/.claude/skills/session-debrief": {
+ "env_path": "~/.claude/skills/session-debrief/.env",
+ "derived": [
+ "ELEVENLABS_API_KEY",
+ "HEYGEN_API_KEY"
+ ],
+ "other_keys": [
+ "CRITIC_GATE",
+ "ELEVENLABS_VOICE_ID",
+ "OLLAMA_URL",
+ "SESSION_DEBRIEF_VOICE",
+ "TTS_FALLBACK",
+ "VCL_BASE",
+ "VISION_MODEL"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/reviewed-demo-video": {
+ "env_path": "~/.claude/skills/reviewed-demo-video/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/heygen-video": {
+ "env_path": "~/.claude/skills/heygen-video/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/heygen-avatar": {
+ "env_path": "~/.claude/skills/heygen-avatar/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/crcp-pitch-video": {
+ "env_path": "~/Projects/crcp-pitch-video/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/ventura-claw": {
+ "env_path": "~/Projects/ventura-claw/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "CC_SECRET",
+ "ELEVENLABS_API_KEY",
+ "GEORGE_AUTH",
+ "PURELYMAIL_API_TOKEN",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_STORE",
+ "SLACK_BOT_TOKEN",
+ "STRIPE_SECRET_KEY",
+ "TWILIO_ACCOUNT_SID",
+ "TWILIO_AUTH_TOKEN"
+ ],
+ "other_keys": [
+ "AIRTABLE_BASE_ID",
+ "AIRTABLE_PAT",
+ "BC_PASS",
+ "BC_URL",
+ "BC_USER",
+ "CANVA_TOKEN",
+ "CC_KEY_ID",
+ "CF_API_TOKEN",
+ "ETSY_ACCESS_TOKEN",
+ "ETSY_KEYSTRING",
+ "ETSY_SHOP_ID",
+ "FIGMA_TOKEN",
+ "GEORGE_BASIC_AUTH",
+ "GEORGE_PASS",
+ "GEORGE_URL",
+ "GEORGE_USER",
+ "HUBSPOT_TOKEN",
+ "MAILCHIMP_API_KEY",
+ "NOTION_TOKEN",
+ "OLLAMA_FALLBACK_MODEL",
+ "OLLAMA_FALLBACK_URL",
+ "OLLAMA_MODEL",
+ "OLLAMA_URL",
+ "PUBLIC_BASE",
+ "PUBLIC_DOMAIN",
+ "SHOPIFY_ACCESS_TOKEN",
+ "SHOW_WAITING",
+ "SMART_ROUTER_ALLOW_ANTHROPIC",
+ "SUPPORT_EMAIL",
+ "TWILIO_FROM_NUMBER",
+ "VC_VAULT_PATH"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/ventura-corridor": {
+ "env_path": "~/Projects/ventura-corridor/.env",
+ "derived": [
+ "BRAVE_SEARCH_API_KEY",
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "GOOGLE_CLIENT_SECRET",
+ "GOOGLE_OAUTH_CLIENT_ID",
+ "GOOGLE_OAUTH_CLIENT_SECRET",
+ "PURELYMAIL_API_TOKEN"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "BASE",
+ "BASIC_AUTH_PASS",
+ "BASIC_AUTH_USER",
+ "CHROME_PATH",
+ "CRAWL_CONCURRENCY",
+ "CRAWL_TIMEOUT_MS",
+ "DATABASE_URL",
+ "DB_NAME",
+ "DDG_GAP_MS",
+ "DDG_TIMEOUT_MS",
+ "DIGEST_TO",
+ "EXA_API_KEY",
+ "FOURSQUARE_API_KEY",
+ "GEORGE_URL",
+ "GOOGLE_CLIENT_ID",
+ "GOOGLE_OAUTH_REDIRECT_URI",
+ "HERE_API_KEY",
+ "MIN_LEN",
+ "MORNING_TO",
+ "NEWS_CONCURRENCY",
+ "NEWS_HOST_GAP_MS",
+ "NEWS_MAX_PER_SITE",
+ "NEWS_TIMEOUT_MS",
+ "OLLAMA_HOST",
+ "OLLAMA_MODEL",
+ "OLLAMA_MODELS",
+ "OLLAMA_TIMEOUT_MS",
+ "OLLAMA_URL",
+ "PUBLIC_BASE",
+ "SAY_VOICE",
+ "USER",
+ "VC_URL",
+ "VENTURA_BBOX_EAST",
+ "VENTURA_BBOX_NORTH",
+ "VENTURA_BBOX_SOUTH",
+ "VENTURA_BBOX_WEST"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/purelymail-mcp": {
+ "env_path": "~/Projects/purelymail-mcp/.env",
+ "derived": [
+ "PURELYMAIL_API_TOKEN"
+ ],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/browserbase": {
+ "env_path": "~/.claude/skills/browserbase/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "OSBORNE_PASSWORD",
+ "OSBORNE_USERNAME"
+ ],
+ "other_keys": [
+ "BROWSERBASE_PROJECT",
+ "NEXTDOOR_PASS",
+ "NEXTDOOR_USER",
+ "OSBORNE_LOGIN_URL",
+ "OUT_DIR"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/abrams-report": {
+ "env_path": "~/Projects/abrams-report/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID"
+ ],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/all-designerwallcoverings": {
+ "env_path": "~/Projects/all-designerwallcoverings/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "CLOUDFLARE_API_TOKEN",
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "BASIC_AUTH",
+ "BASIC_AUTH_PASS",
+ "BASIC_AUTH_USER",
+ "BROWSERBASE_LIB",
+ "CF_ACCESS_ASTEK_ID",
+ "CF_ACCESS_ASTEK_SECRET",
+ "DAILY_LIVE_CAP_USD",
+ "DATABASE_URL",
+ "DESIGNTEX_PDP_HOST",
+ "DW_PRICE_STOCK_ENV",
+ "FM_BATCH",
+ "FM_LAYOUT",
+ "FM_LIMIT",
+ "FM_MCP_DIR",
+ "GEORGE_BASIC_AUTH_PASS",
+ "GEORGE_DRAFT_ACCOUNT",
+ "GEORGE_ENV_PATH",
+ "GEORGE_URL",
+ "LIVE_WORKER",
+ "MICROSITE_BASIC_AUTH",
+ "MICROSITE_CF_ZONE",
+ "MICROSITE_FEED_PORTS",
+ "OLLAMA_URL",
+ "PGDATABASE",
+ "PGPASSWORD",
+ "SECRETS_ENV_PATH",
+ "SHOPIFY_ADMIN_STORE",
+ "SHOPIFY_LIB",
+ "SHOPIFY_PUSH_ENABLED"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/Letsbegin": {
+ "env_path": "~/Projects/Letsbegin/.env.local",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "GEMINI_API_KEY",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_CONTENT_TOKEN",
+ "SHOPIFY_STORE"
+ ],
+ "other_keys": [
+ "ADMIN_PASSWORD",
+ "DATABASE_URL",
+ "GEMINI_API_KEY_RALPH",
+ "GOOGLE_SHEETS_ID",
+ "GOOGLE_SHEETS_WEBHOOK_URL",
+ "OLLAMA_MODEL",
+ "OLLAMA_URL",
+ "PGDATABASE",
+ "PGHOST",
+ "PGUSER",
+ "RALPH_LLM",
+ "SHOPIFY_PRODUCT_TOKEN"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/dear-bubbe-nextjs": {
+ "env_path": "~/Projects/dear-bubbe-nextjs/.env",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "CLOUDFLARE_ACCOUNT_ID",
+ "ELEVENLABS_API_KEY",
+ "GOOGLE_CLIENT_SECRET",
+ "META_ACCESS_TOKEN",
+ "OPENAI_API_KEY",
+ "TWILIO_ACCOUNT_SID",
+ "TWILIO_AUTH_TOKEN",
+ "TWILIO_PHONE_NUMBER"
+ ],
+ "other_keys": [
+ "BLUESKY_IDENTIFIER",
+ "BLUESKY_PASSWORD",
+ "CLOUDFLARE_DOMAIN",
+ "CLOUDFLARE_EMAIL",
+ "CLOUDFLARE_PASSWORD",
+ "FACEBOOK_PAGE_ID",
+ "GOOGLE_CLIENT_ID",
+ "INSTAGRAM_BUSINESS_ID",
+ "NEXTAUTH_SECRET",
+ "OLLAMA_MODEL",
+ "OLLAMA_URL",
+ "TWITTER_BEARER_TOKEN",
+ "USE_ANTHROPIC"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/Bertha/kalshi-dash": {
+ "env_path": "~/Projects/Bertha/kalshi-dash/.env",
+ "derived": [
+ "GEMINI_API_KEY"
+ ],
+ "other_keys": [
+ "ALLOWED_EMAILS",
+ "AUTH_PASSWORD",
+ "AUTH_USERNAME",
+ "DATABASE_URL",
+ "GOOGLE_CLIENT_ID",
+ "KALSHI_ENV"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/ai-analyzer": {
+ "env_path": "~/.claude/skills/ai-analyzer/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/enrich-ai-tags": {
+ "env_path": "~/.claude/skills/enrich-ai-tags/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/goodquestion-ai": {
+ "env_path": "~/Projects/goodquestion-ai/.env",
+ "derived": [
+ "GEMINI_API_KEY",
+ "YOUTUBE_CLIENT_ID",
+ "YOUTUBE_CLIENT_SECRET"
+ ],
+ "other_keys": [
+ "AUTH_PASS",
+ "BASIC_AUTH_PASS",
+ "BSKY_PASSWORD",
+ "GEMINI_IMAGE_API_KEY",
+ "GEMINI_KEY",
+ "SLACK_WEBHOOK_URL",
+ "TWITTER_ACCESS_TOKEN",
+ "TWITTER_ACCESS_TOKEN_SECRET",
+ "TWITTER_API_KEY",
+ "TWITTER_API_SECRET",
+ "YOUTUBE_REDIRECT_URI"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/model-arena": {
+ "env_path": "~/Projects/model-arena/.env",
+ "derived": [
+ "GEMINI_API_KEY",
+ "GEMINI_API_KEY_WALLCO"
+ ],
+ "other_keys": [
+ "ADOBE_CLIENT_ID",
+ "ADOBE_CLIENT_SECRET",
+ "ARENA_PUBLIC_URL",
+ "AUTH",
+ "BASE",
+ "BASIC_AUTH",
+ "CHROME_BIN",
+ "CLAUDE_BIN",
+ "CLAUDE_MODEL",
+ "FIGMA_ARENA_FILE",
+ "FIGMA_TOKEN",
+ "GEMINI_IMAGE_KEY",
+ "GEMINI_IMAGE_MODEL",
+ "GROK_MODEL",
+ "OLLAMA_MAC1",
+ "OPENAI_MODEL",
+ "PICK",
+ "VISION_HOST",
+ "VISION_MODELS"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/Designer-Wallcoverings/shopify": {
+ "env_path": "~/Projects/Designer-Wallcoverings/shopify/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "GOOGLE_CLIENT_SECRET",
+ "GOOGLE_OAUTH_CLIENT_ID",
+ "GOOGLE_OAUTH_CLIENT_SECRET",
+ "OSBORNE_PASSWORD",
+ "OSBORNE_USERNAME",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_ORDERS_TOKEN",
+ "SHOPIFY_STORE",
+ "SHOPIFY_STORE_DOMAIN",
+ "SLACK_BOT_TOKEN"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_PASSWORD",
+ "ADMIN_SECRET",
+ "ADMIN_USER",
+ "AF_REDIRECT_TOKEN",
+ "AF_REPAIR_TOKEN",
+ "APPLY",
+ "APPOINTMENTS_DATABASE_URL",
+ "APPROVAL_FILE",
+ "APPT_OWNER_EMAIL",
+ "APPT_PUBLIC_BASE",
+ "APPT_TYPE",
+ "BASIC_AUTH",
+ "BUCKETB_TSV",
+ "COLLECTIONS",
+ "CONC",
+ "COOLDOWN_MS",
+ "CORS_ORIGIN",
+ "DATABASE_URL",
+ "DEBUG",
+ "DELAY",
+ "DEV_THEME",
+ "DWBR_HOUSE_LINE_REMAP",
+ "DW_DB_URL",
+ "DW_DOUBLE_ROLL_MOQ",
+ "DW_SHOWROOM_LOCATION",
+ "FILTER_QS",
+ "GEORGE_BASIC_AUTH_PASS",
+ "GEORGE_BASIC_AUTH_USER",
+ "GEORGE_SEND_URL",
+ "GOOGLE_CLIENT_ID",
+ "GOOGLE_OAUTH_REDIRECT_URI",
+ "GUARD_ENV_FILE",
+ "ID",
+ "IDS",
+ "INFO_EMAIL",
+ "LIMIT",
+ "MAHARAM_DRIP",
+ "MAXID",
+ "MAX_PAGES",
+ "PGDATABASE",
+ "PGHOST",
+ "PGPASSWORD",
+ "PGUSER",
+ "PG_PASSWORD",
+ "PJ_DRAFT_DRIP",
+ "PREVIEW_API",
+ "PREVIEW_URL",
+ "QUADRILLE_SAMPLEONLY_DRIP",
+ "REGEN",
+ "ROOM",
+ "SCROLL_PASSES",
+ "SDG_PW_OVERRIDE",
+ "SHOPIFY_ADMIN_ACCESS_TOKEN",
+ "SHOPIFY_ADMIN_API_TOKEN",
+ "SHOPIFY_ADMIN_API_VERSION",
+ "SHOPIFY_API_VERSION",
+ "SHOPIFY_SHOP_URL",
+ "SKU",
+ "SLACK_WEBHOOK_URL",
+ "TSV",
+ "USER",
+ "VERIFY_HOST"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/Designer-Wallcoverings": {
+ "env_path": "~/Projects/Designer-Wallcoverings/.env",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID",
+ "GEMINI_API_KEY",
+ "GEORGE_AUTH",
+ "GOOGLE_CLIENT_SECRET",
+ "GOOGLE_OAUTH_CLIENT_ID",
+ "GOOGLE_OAUTH_CLIENT_SECRET",
+ "IG_USER_ID",
+ "JWT_SECRET",
+ "OPENAI_API_KEY",
+ "OSBORNE_PASSWORD",
+ "OSBORNE_USERNAME",
+ "REPLICATE_API_TOKEN",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_DRAFT_TOKEN",
+ "SHOPIFY_ORDERS_TOKEN",
+ "SHOPIFY_STORE",
+ "SHOPIFY_STORE_DOMAIN",
+ "SHOPIFY_THEME_TOKEN",
+ "SLACK_APP_TOKEN",
+ "SLACK_BOT_TOKEN",
+ "SLACK_SIGNING_SECRET",
+ "TWILIO_ACCOUNT_SID",
+ "TWILIO_AUTH_TOKEN",
+ "TWILIO_PHONE_NUMBER",
+ "VCC_ADMIN_PASS",
+ "YORKWALL_PASS",
+ "YORKWALL_USER"
+ ],
+ "other_keys": [
+ "ACCESS_CODE",
+ "ADMIN_EMAILS",
+ "ADMIN_PASS",
+ "ADMIN_PASSWORD",
+ "ADMIN_SECRET",
+ "ADMIN_USER",
+ "ADMIN_USERNAME",
+ "AF_REDIRECT_TOKEN",
+ "AF_REPAIR_TOKEN",
+ "AGENT_MONITOR_CHANNEL",
+ "ALERT_THRESHOLD_CPU",
+ "ALERT_THRESHOLD_MEMORY",
+ "API_KEY_ADMIN",
+ "APPLY",
+ "APPOINTMENTS_DATABASE_URL",
+ "APPROVAL_FILE",
+ "APPT_OWNER_EMAIL",
+ "APPT_PUBLIC_BASE",
+ "APPT_TYPE",
+ "APP_BASE",
+ "APP_PASSWORD",
+ "APP_PASSWORD_2",
+ "APP_PASSWORD_ADVANCED",
+ "ARCHIVE_ROOT",
+ "ARCHIVE_SCAN_MINUTES",
+ "ARCH_UPDATER_PORT",
+ "ARMANI_MAX_DETAIL_PAGES",
+ "ARMANI_MAX_RESULTS",
+ "AUTHORIZED_PHONE",
+ "AUTH_PASSWORD_HASH",
+ "AUTH_PORT",
+ "AUTH_SECRET",
+ "AUTH_USERNAME",
+ "AUTO_SCALING",
+ "BASE_ROOM",
+ "BASIC_AUTH",
+ "BASIC_AUTH_PASS",
+ "BATCH",
+ "BATCH_DELAY",
+ "BATCH_SIZE",
+ "BB_DEBUG",
+ "BLOCKED_USERS",
+ "BOOK",
+ "BRAND",
+ "BRAND_ROUTER_GEMINI_API_KEY",
+ "BRAND_ROUTER_PAGE_ID",
+ "BRAND_ROUTER_PASSWORD",
+ "BRAND_ROUTER_SHOPIFY_TOKEN",
+ "BRIGHTDATA_API_KEY",
+ "BRIGHTDATA_ENDPOINT",
+ "BRIGHTDATA_PASSWORD",
+ "BRIGHTDATA_USERNAME",
+ "BRIGHTDATA_ZONE",
+ "BUCKETB_TSV",
+ "CALENDAR_API_URL",
+ "CATALOG",
+ "CATALOG_DELAY_MS",
+ "CC_LIVE",
+ "CC_REDIRECT_URI",
+ "CC_SCOPE",
+ "CHAT_API_URL",
+ "CHAT_DASHBOARD_PORT",
+ "CHAT_PORT",
+ "CHAT_SERVER_URL",
+ "CHECK_INTERVAL",
+ "CHROME_PATH",
+ "CHUNK",
+ "CLAUDE_BIN",
+ "CLAUDE_BOT_PORT",
+ "COLLECTION",
+ "COLLECTIONS",
+ "COLOR_INDEX_MAX",
+ "COLOR_INDEX_PORT",
+ "CONC",
+ "CONFIRM",
+ "CONSTANT_CONTACT_ACCESS_TOKEN",
+ "CONSTANT_CONTACT_API_KEY",
+ "CONSTANT_CONTACT_EMAIL",
+ "CONSTANT_CONTACT_PASSWORD",
+ "COOLDOWN_MS",
+ "COPYGEN_MODEL",
+ "COPYGEN_PROMPT_PREFIX",
+ "CORS_ORIGIN",
+ "CRASH_LOOP_THRESHOLD",
+ "CRASH_LOOP_WINDOW",
+ "CRITICAL_EMAIL_RECIPIENTS",
+ "CUSTOM_PROXY_PASSWORD",
+ "CUSTOM_PROXY_SERVER",
+ "CUSTOM_PROXY_USERNAME",
+ "DAILY_CAP",
+ "DASH_URL",
+ "DATABASE_URL",
+ "DB_HOST",
+ "DB_NAME",
+ "DB_PASSWORD",
+ "DB_PORT",
+ "DB_PROXY_URL",
+ "DB_URL",
+ "DB_USER",
+ "DEBUG",
+ "DELAY",
+ "DELTA_E_10PCT",
+ "DESIGNTEX_SESSION_COOKIE",
+ "DEV_THEME",
+ "DISPLAY",
+ "DRAFTS",
+ "DRY",
+ "DRYRUN",
+ "DRY_RUN",
+ "DWBR_HOUSE_LINE_REMAP",
+ "DW_BASIC_AUTH",
+ "DW_DB_URL",
+ "DW_DOUBLE_ROLL_MOQ",
+ "DW_ENV_PATH",
+ "DW_PG_URL",
+ "DW_SHOWROOM_LOCATION",
+ "DW_TZ",
+ "EMAIL_ALERTS",
+ "ENABLE_ORDER_ANALYTICS",
+ "ENABLE_SMS_ALERTS",
+ "ENDPOINTS_TO_CHECK",
+ "ENR",
+ "ENRICH_ON_IMPORT",
+ "ERROR_EMAIL_RECIPIENTS",
+ "EXPO_OS",
+ "EXTRACT_PREFER_LOCAL",
+ "EXTRA_IDS",
+ "FILTER_QS",
+ "FRAUD_RISK_THRESHOLD",
+ "GB_CSV",
+ "GEMINI_KEY",
+ "GEMINI_MODEL",
+ "GEMINI_MODEL_CHAIN",
+ "GEORGE_BASIC_AUTH",
+ "GEORGE_BASIC_AUTH_PASS",
+ "GEORGE_BASIC_AUTH_USER",
+ "GEORGE_PORT",
+ "GEORGE_SEND_URL",
+ "GITHUB_REPOSITORY_NAME",
+ "GITHUB_REPOSITORY_OWNER",
+ "GITHUB_TOKEN",
+ "GMAIL_CLIENT_ID",
+ "GMAIL_CLIENT_SECRET",
+ "GMAIL_REDIRECT_URI",
+ "GMAIL_REFRESH_TOKEN",
+ "GOOGLE_API_KEY",
+ "GOOGLE_APPLICATION_CREDENTIALS",
+ "GOOGLE_CALENDAR_CLIENT_ID",
+ "GOOGLE_CALENDAR_CLIENT_SECRET",
+ "GOOGLE_CALENDAR_REDIRECT_URI",
+ "GOOGLE_CALENDAR_REFRESH_TOKEN",
+ "GOOGLE_CALLBACK_URL",
+ "GOOGLE_CLIENT_ID",
+ "GOOGLE_CLOUD_PROJECT",
+ "GOOGLE_OAUTH_REDIRECT_URI",
+ "GOOGLE_REFRESH_TOKEN",
+ "GUARD_ENV_FILE",
+ "HC_CONCURRENCY",
+ "HC_MAX",
+ "HC_TIMEOUT_MS",
+ "HEALTH_CHECK_INTERVAL",
+ "HEALTH_PORT",
+ "HF_DEEPSEEK_ENDPOINT",
+ "HF_LLAVA_ENDPOINT",
+ "HF_QWEN_ENDPOINT",
+ "HIGH_VALUE_ORDER_THRESHOLD",
+ "HUGGINGFACE_API_KEY",
+ "HUGGINGFACE_MODEL",
+ "ID",
+ "IDS",
+ "IG_LONG_LIVED_TOKEN",
+ "IG_PASSWORD",
+ "IG_USERNAME",
+ "IMG_DIR",
+ "IMPORT_ROOT_1",
+ "IMPORT_ROOT_2",
+ "IMPORT_SKU_URL",
+ "IN",
+ "INC",
+ "INFO_EMAIL",
+ "INS",
+ "INSKU_ENV_PATH",
+ "INSTAGRAM_ACCESS_TOKEN",
+ "INSTAGRAM_ACCOUNT",
+ "INSTAGRAM_APP_ID",
+ "INSTAGRAM_APP_SECRET",
+ "INSTAGRAM_BUSINESS_ACCOUNT_ID",
+ "KRAVET_EXCLUDE_SKUS",
+ "LEGAL_TEAM_URL",
+ "LIMIT",
+ "LIMIT_PRODUCTS_PER_VENDOR",
+ "LIMIT_ROWS",
+ "LIMIT_VENDORS",
+ "LOG_COMPRESSION",
+ "LOG_PORT",
+ "LOG_RETENTION_DAYS",
+ "MAHARAM_DRIP",
+ "MAIL_CC",
+ "MAIL_TO",
+ "MANAGEMENT_EMAILS",
+ "MARKETING_AGENT_URL",
+ "MASTER_HUB_PORT",
+ "MAT_PREFIXES",
+ "MAXID",
+ "MAX_CONCURRENT_JOBS",
+ "MAX_ISSUE_NUMBER",
+ "MAX_PAGES",
+ "MAX_PRODUCTS",
+ "MAX_PUBLISH",
+ "MIN_COUNT",
+ "MIN_ISSUE_NUMBER",
+ "MODE",
+ "MONGODB_URI",
+ "MONITOR_INTERVAL",
+ "MONTHLY_ALL",
+ "MONTHLY_DAY",
+ "NEXTAUTH_SECRET",
+ "NEXT_PUBLIC_BASE_URL",
+ "NEXT_PUBLIC_BASIC_AUTH",
+ "NEXT_SKU_NUMBER",
+ "NORM",
+ "NOTIFY_PHONE_NUMBER",
+ "OLLAMA_EXTRACT_MODEL",
+ "OLLAMA_HOST",
+ "OLLAMA_URL",
+ "OLLAMA_VISION_MODEL",
+ "ONLY",
+ "OPENWEATHER_API_KEY",
+ "ORCHESTRATOR_PORT",
+ "ORDER_ANALYTICS_LOG",
+ "ORDER_EMAIL_RECIPIENTS",
+ "OUT",
+ "OUTF",
+ "OUTPUT_DIR",
+ "OXYLABS_ENDPOINT",
+ "OXYLABS_PASSWORD",
+ "OXYLABS_USERNAME",
+ "PAAPI_ACCESS_KEY",
+ "PAAPI_HOST",
+ "PAAPI_PARTNER_TAG",
+ "PAAPI_REGION",
+ "PAAPI_SECRET_KEY",
+ "PARALLEL_LIMIT",
+ "PGDATABASE",
+ "PGHOST",
+ "PGPASSWORD",
+ "PGUSER",
+ "PG_PASSWORD",
+ "PJ_DRAFT_DRIP",
+ "POSTGRES_DB",
+ "POSTGRES_HOST",
+ "POSTGRES_PASSWORD",
+ "POSTGRES_PORT",
+ "POSTGRES_USER",
+ "PREFIX",
+ "PREVIEW_API",
+ "PREVIEW_URL",
+ "PRODUCT_IMPORT_CHANNEL",
+ "PRODUCT_TYPE",
+ "PROXY_ENABLED",
+ "PROXY_MAX_RETRIES",
+ "PROXY_ROTATION_ENABLED",
+ "PROXY_TYPE",
+ "PSQL_BIN",
+ "PUPPETEER_EXECUTABLE_PATH",
+ "QUADRILLE_SAMPLEONLY_DRIP",
+ "QUEUE_DELAY_MS",
+ "QUEUE_MAX",
+ "RATE_LIMIT_MAX_REQUESTS",
+ "RATE_LIMIT_WINDOW_MS",
+ "RC_ACCESS_TOKEN",
+ "RC_BASE_URL",
+ "RC_CLIENT_ID",
+ "RC_CLIENT_SECRET",
+ "RC_EXTENSION",
+ "RC_PASSWORD",
+ "RC_REFRESH_TOKEN",
+ "RC_USERNAME",
+ "REDIS_ENABLED",
+ "REDIS_HOST",
+ "REDIS_PASSWORD",
+ "REDIS_PORT",
+ "REDIS_URL",
+ "REFRESH_MODE",
+ "REGEN",
+ "RENUM_DAY",
+ "RETRY_ATTEMPTS",
+ "RETRY_DELAY_MS",
+ "RETRY_FAILURES",
+ "RINGCENTRAL_CLIENT_ID",
+ "RINGCENTRAL_CLIENT_SECRET",
+ "RINGCENTRAL_EXTENSION",
+ "RINGCENTRAL_PASSWORD",
+ "RINGCENTRAL_USERNAME",
+ "ROOM",
+ "SALES_SUMMARY_CHANNEL",
+ "SALES_TEAM_EMAILS",
+ "SAMPLE_PER_VENDOR",
+ "SAMPLE_RECIPIENT",
+ "SAVE_REPORTS",
+ "SCHEDULE_ENABLED",
+ "SCOPE",
+ "SCRAPER_BB_LAUNCH",
+ "SCRAPER_BROWSERBASE",
+ "SCRAPER_PAUSED",
+ "SCRAPE_INTERVAL",
+ "SCROLL_PASSES",
+ "SDG_PW_OVERRIDE",
+ "SESSION_SECRET",
+ "SHOPIFY_ACCESS_TOKEN",
+ "SHOPIFY_ADMIN_ACCESS_TOKEN",
+ "SHOPIFY_ADMIN_API_KEY",
+ "SHOPIFY_ADMIN_API_TOKEN",
+ "SHOPIFY_ADMIN_API_VERSION",
+ "SHOPIFY_AGENT_URL",
+ "SHOPIFY_API_KEY",
+ "SHOPIFY_API_SECRET",
+ "SHOPIFY_API_VERSION",
+ "SHOPIFY_CLIENT_ID",
+ "SHOPIFY_CLIENT_SECRET",
+ "SHOPIFY_CUSTOMER_ACCESS_TOKEN",
+ "SHOPIFY_PRODUCTS_TOKEN",
+ "SHOPIFY_SHOP",
+ "SHOPIFY_SHOP_NAME",
+ "SHOPIFY_SHOP_URL",
+ "SHOPIFY_STORE_NAME",
+ "SHOPIFY_STORE_URL",
+ "SHOPIFY_TOKEN",
+ "SHOP_BY_COLOR_SHOPIFY_TOKEN",
+ "SIGNING_SECRET",
+ "SKILLS_AUTH_PASS",
+ "SKILLS_AUTH_USER",
+ "SKU",
+ "SKUS",
+ "SKU_PREFIX",
+ "SLACK_ALERTS_CHANNEL",
+ "SLACK_CHANNEL",
+ "SLACK_CRITICAL_CHANNEL",
+ "SLACK_ERROR_CHANNEL",
+ "SLACK_HIGH_VALUE_CHANNEL",
+ "SLACK_ORDER_CHANNEL",
+ "SLACK_WARNING_CHANNEL",
+ "SLACK_WEBHOOK",
+ "SLACK_WEBHOOK_URL",
+ "SLUG",
+ "SLUGGUARD",
+ "SLUGRE",
+ "SMARTPROXY_ENDPOINT",
+ "SMARTPROXY_PASSWORD",
+ "SMARTPROXY_USERNAME",
+ "SMS_ALERT_RECIPIENTS",
+ "SOCIALPILOT_API_BASE_URL",
+ "SOCIALPILOT_API_KEY",
+ "SOCIALPILOT_AUTH_URL",
+ "SOCIALPILOT_CLIENT_ID",
+ "SOCIALPILOT_CLIENT_SECRET",
+ "SOCIALPILOT_REDIRECT_URI",
+ "SOCIALPILOT_TOKEN_URL",
+ "SOURCE_TABLE",
+ "SRC",
+ "STEVE_SLACK_ID",
+ "SUPABASE_ANON_KEY",
+ "SUPABASE_SERVICE_KEY",
+ "SUPABASE_SERVICE_ROLE_KEY",
+ "SUPABASE_URL",
+ "TABLE",
+ "TASK_ORCHESTRATOR_URL",
+ "TODO_DB_URL",
+ "TO_PHONE_NUMBER",
+ "TSV",
+ "TWILIO_MESSAGING_SERVICE_SID",
+ "ULTRATHINK_YOLO_MODE",
+ "USER",
+ "VENDOR",
+ "VERIFY_HOST",
+ "VIEW",
+ "VISION_SCAN_CAP",
+ "WAITMS",
+ "WEBHOOK_TIMEOUT_MS",
+ "WHERE",
+ "WPW",
+ "WQ_ALLOW_2CAPTCHA",
+ "WQ_APPEND",
+ "WQ_CHUNK",
+ "WQ_FRESH",
+ "WQ_INFILE",
+ "WQ_LIMIT",
+ "WQ_ONLY_PRICED",
+ "WQ_OUTFILE",
+ "WQ_PASS",
+ "WQ_POLL",
+ "WQ_PWAIT",
+ "YW_PASS",
+ "YW_USER",
+ "ZENDESK_EMAIL",
+ "ZENDESK_PASSWORD"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/Designer-Wallcoverings/DW-Websites/LosAngelesFabrics": {
+ "env_path": "~/Projects/Designer-Wallcoverings/DW-Websites/LosAngelesFabrics/.env",
+ "derived": [
+ "GEORGE_AUTH",
+ "REPLICATE_API_TOKEN",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_STORE_DOMAIN"
+ ],
+ "other_keys": [
+ "MAIL_CC",
+ "MAIL_TO",
+ "PRODUCT_TYPE",
+ "SHOPIFY_ACCESS_TOKEN",
+ "SHOPIFY_API_VERSION",
+ "SHOPIFY_STORE_NAME",
+ "SKU_PREFIX",
+ "SLACK_WEBHOOK_URL",
+ "SUPABASE_SERVICE_ROLE_KEY",
+ "SUPABASE_URL",
+ "VENDOR"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/wholivedthere": {
+ "env_path": "~/Projects/wholivedthere/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/claimmyaddress": {
+ "env_path": "~/Projects/claimmyaddress/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/bubbesblock": {
+ "env_path": "~/Projects/bubbesblock/.env",
+ "derived": [],
+ "other_keys": [
+ "DATABASE_URL",
+ "SESSION_SECRET"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/la-research-agent": {
+ "env_path": "~/.claude/skills/la-research-agent/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/stayclaim": {
+ "env_path": "~/Projects/stayclaim/.env.local",
+ "derived": [
+ "DPLA_API_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_SECRET",
+ "DATABASE_URL",
+ "DATA_GOV_API_KEY",
+ "FLICKR_API_KEY",
+ "FREE_FOREVER",
+ "NEXT_PHASE",
+ "NEXT_PUBLIC_BASE_URL",
+ "NEXT_PUBLIC_GA_CLAIM",
+ "NEXT_PUBLIC_GA_COMMUNITY",
+ "NEXT_PUBLIC_GA_FLAGSHIP",
+ "NEXT_PUBLIC_GOOGLE_MAPS_API_KEY",
+ "NYPL_API_TOKEN",
+ "PGDATABASE",
+ "PGHOST",
+ "PGPASSWORD",
+ "PGPORT",
+ "PGUSER",
+ "RATE_LIMIT_ENABLED",
+ "SOCRATA_APP_TOKEN",
+ "USER"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/jill-website": {
+ "env_path": "~/Projects/jill-website/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASSWORD",
+ "DB_HOST",
+ "DB_NAME",
+ "DB_PASSWORD",
+ "DB_PORT",
+ "DB_USER",
+ "GOOGLE_MAPS_API_KEY",
+ "SMTP_FROM",
+ "SMTP_HOST",
+ "SMTP_PASS",
+ "SMTP_PORT",
+ "SMTP_SECURE",
+ "SMTP_USER",
+ "TEST_DB_HOST",
+ "TEST_DB_NAME",
+ "TEST_DB_PASSWORD",
+ "TEST_DB_PORT",
+ "TEST_DB_USER"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/ventura-bus-3d": {
+ "env_path": "~/Projects/ventura-bus-3d/.env",
+ "derived": [],
+ "other_keys": [
+ "GOOGLE_MAPS_API_KEY"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/dw-activation-calendar": {
+ "env_path": "~/Projects/dw-activation-calendar/.env",
+ "derived": [
+ "GOOGLE_CLIENT_SECRET",
+ "GOOGLE_OAUTH_CLIENT_ID",
+ "GOOGLE_OAUTH_CLIENT_SECRET"
+ ],
+ "other_keys": [
+ "DATABASE_URL",
+ "GOOGLE_CAL_TOKEN_FILE",
+ "GOOGLE_CLIENT_ID",
+ "GOOGLE_DW_CALENDAR_ID",
+ "GOOGLE_OAUTH_REDIRECT_URI",
+ "PGDATABASE",
+ "PGHOST",
+ "PGUSER",
+ "SCHED_PER_DAY",
+ "SCHED_STALE_MS",
+ "USER"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1800swallpaper": {
+ "env_path": "~/Projects/1800swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1890swallpaper": {
+ "env_path": "~/Projects/1890swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1900swallpaper": {
+ "env_path": "~/Projects/1900swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1920swallpaper": {
+ "env_path": "~/Projects/1920swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1930swallpaper": {
+ "env_path": "~/Projects/1930swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1940swallpaper": {
+ "env_path": "~/Projects/1940swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1950swallpaper": {
+ "env_path": "~/Projects/1950swallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1960swallpaper": {
+ "env_path": "~/Projects/1960swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "PGHOST",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1970swallpaper": {
+ "env_path": "~/Projects/1970swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/1980swallpaper": {
+ "env_path": "~/Projects/1980swallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "DW_UNIFIED_URL",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/agedwallpaper": {
+ "env_path": "~/Projects/agedwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/apartmentwallpaper": {
+ "env_path": "~/Projects/apartmentwallpaper/.env",
+ "derived": [
+ "GODADDY_PAT",
+ "SHOPIFY_STORE_DOMAIN"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "GODADDY_API_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SHOPIFY_STOREFRONT_TOKEN"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/architecturalwallcoverings": {
+ "env_path": "~/Projects/architecturalwallcoverings/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/blockprintedwallpaper": {
+ "env_path": "~/Projects/blockprintedwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/contractwallpaper": {
+ "env_path": "~/Projects/contractwallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/corkwallcovering": {
+ "env_path": "~/Projects/corkwallcovering/.env",
+ "derived": [
+ "GEMINI_API_KEY",
+ "GEORGE_AUTH",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_STORE",
+ "SHOPIFY_STORE_DOMAIN"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "BEFORE_PRODUCTS_JSON",
+ "COMPLIANCE_KEY",
+ "DW_PROD_SHOPIFY_TOKEN",
+ "DW_PROD_STORE_DOMAIN",
+ "DW_UNIFIED_DSN",
+ "ENRICH_GEMINI_ONLY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "OLLAMA_VISION_MODEL",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/embroideredwallpaper": {
+ "env_path": "~/Projects/embroideredwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/fabricwallpaper": {
+ "env_path": "~/Projects/fabricwallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/glitterwalls": {
+ "env_path": "~/Projects/glitterwalls/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/greenwallcoverings": {
+ "env_path": "~/Projects/greenwallcoverings/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/handcraftedwallpaper": {
+ "env_path": "~/Projects/handcraftedwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/healthcarewallpaper": {
+ "env_path": "~/Projects/healthcarewallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/hospitalitywallcoverings": {
+ "env_path": "~/Projects/hospitalitywallcoverings/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/hospitalitywallpaper": {
+ "env_path": "~/Projects/hospitalitywallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/hotelwallcoverings": {
+ "env_path": "~/Projects/hotelwallcoverings/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/jutewallpaper": {
+ "env_path": "~/Projects/jutewallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/linenwallpaper": {
+ "env_path": "~/Projects/linenwallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/madagascarwallpaper": {
+ "env_path": "~/Projects/madagascarwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/metallicwallpaper": {
+ "env_path": "~/Projects/metallicwallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/micawallpaper": {
+ "env_path": "~/Projects/micawallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/museumwallpaper": {
+ "env_path": "~/Projects/museumwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/mylarwallpaper": {
+ "env_path": "~/Projects/mylarwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/naturalwallcoverings": {
+ "env_path": "~/Projects/naturalwallcoverings/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/pastelwallpaper": {
+ "env_path": "~/Projects/pastelwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/raffiawallcoverings": {
+ "env_path": "~/Projects/raffiawallcoverings/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/raffiawalls": {
+ "env_path": "~/Projects/raffiawalls/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/recycledwallpaper": {
+ "env_path": "~/Projects/recycledwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/restaurantwallpaper": {
+ "env_path": "~/Projects/restaurantwallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/restorationwallpaper": {
+ "env_path": "~/Projects/restorationwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/retrowalls": {
+ "env_path": "~/Projects/retrowalls/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/saloonwallpaper": {
+ "env_path": "~/Projects/saloonwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/screenprintedwallpaper": {
+ "env_path": "~/Projects/screenprintedwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/selfadhesivewallpaper": {
+ "env_path": "~/Projects/selfadhesivewallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/silkwallcoverings": {
+ "env_path": "~/Projects/silkwallcoverings/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/silkwallpaper": {
+ "env_path": "~/Projects/silkwallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/silverleafwallpaper": {
+ "env_path": "~/Projects/silverleafwallpaper/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "GEORGE_EXTERNAL_SEND_TOKEN",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/stringwallpaper": {
+ "env_path": "~/Projects/stringwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/suedewallpaper": {
+ "env_path": "~/Projects/suedewallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/textilewallpaper": {
+ "env_path": "~/Projects/textilewallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/vinylwallpaper": {
+ "env_path": "~/Projects/vinylwallpaper/.env",
+ "derived": [],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "MICROSITE_ADMIN_ENABLED"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/wallpapersback": {
+ "env_path": "~/Projects/wallpapersback/.env",
+ "derived": [
+ "ELEVENLABS_API_KEY",
+ "GEMINI_API_KEY",
+ "GEORGE_AUTH",
+ "JWT_SECRET",
+ "MAIL_FROM",
+ "MP_DESIGNER_SECRET",
+ "REPLICATE_API_TOKEN",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_DRAFT_TOKEN",
+ "SHOPIFY_STORE",
+ "SHOPIFY_STORE_DOMAIN",
+ "STRIPE_SECRET_KEY"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_TOKEN",
+ "ADMIN_USER",
+ "AUTH_DEV_SECRET",
+ "AUTH_MODE",
+ "BASE",
+ "BB_MODE",
+ "BB_TARGET_URL",
+ "BUNDLE_EXPIRY_DAYS",
+ "BUNDLE_MAX_DOWNLOADS_PER_ORDER",
+ "BY_ID_DEBUG",
+ "COMPLIANCE_KEY",
+ "COMPOSITION_DETECTOR_MODEL",
+ "DATABASE_URL",
+ "DESIGN_REFS_POOL_SIZE",
+ "DESIGN_REFS_TTL_SEC",
+ "DW_UNIFIED_DB",
+ "DW_UNIFIED_PG_PASSWORD",
+ "ELEVENLABS_VOICE_ID",
+ "GA4_MEASUREMENT_ID",
+ "GENERATOR_COOLDOWN",
+ "GEN_BACKEND",
+ "GEORGE_BASE",
+ "GHOST_DETECTOR_MODEL",
+ "GOOGLE_API_KEY",
+ "IG_AGENT_AUTH",
+ "IG_AGENT_URL",
+ "MARKETPLACE_DB_URL",
+ "MICROSITE_ADMIN_ENABLED",
+ "MP_PUBLIC_BASE",
+ "MP_SAMPLE_PRICE",
+ "NEW_BADGE_HOURS",
+ "OLLAMA_HOST",
+ "OLLAMA_MODEL",
+ "OLLAMA_REVIEW_MODEL",
+ "OLLAMA_TIMEOUT_MS",
+ "OLLAMA_URL",
+ "OLLAMA_VISION_MODEL",
+ "OLLAMA_VISION_URL",
+ "PAIRS_UPSTREAM",
+ "PGDATABASE",
+ "PGHOST",
+ "PGOPTIONS",
+ "PGPASSWORD",
+ "PGPORT",
+ "PGUSER",
+ "RESEND_API_KEY",
+ "ROOM_API",
+ "SDXL_MODEL_VERSION",
+ "SHOPIFY_ADMIN_API_TOKEN",
+ "SHOPIFY_API_VERSION",
+ "SHOPIFY_SHOP_URL",
+ "SHOPIFY_STOREFRONT_TOKEN",
+ "SHOPIFY_WEBHOOK_SECRET",
+ "SHOPIFY_WRITE_TOKEN",
+ "SITE",
+ "SITE_EMAIL",
+ "SMTP_HOST",
+ "SMTP_PASS",
+ "SMTP_PORT",
+ "SMTP_USER",
+ "SUBJECT_DETECTOR_MODEL",
+ "SV_VENDOR",
+ "TRADE_ADMIN_EMAIL",
+ "TRADE_ADMIN_PASS",
+ "USER",
+ "WALLCO_ADMIN_EMAILS",
+ "WALLCO_BASE_URL",
+ "WALLCO_BATCH_PER_RENDER_MS",
+ "WALLCO_COMP_GATE",
+ "WALLCO_DB",
+ "WALLCO_HOST",
+ "WALLCO_JWT_SECRET",
+ "WALLCO_LICENSE_PRICE_CENTS",
+ "WALLCO_LOCK_TIMEOUT_MS",
+ "WALLCO_PORT",
+ "WALLCO_TEST_REAL",
+ "WALLCO_TEST_SLUG",
+ "WATERMARK_OWNER",
+ "WPB_BUYABLE_VENDORS",
+ "WPB_COLLECTION_ID",
+ "WPB_PDP_BASE",
+ "WPB_SHOPIFY",
+ "WPB_SHOPIFY_REFRESH_MIN",
+ "WPB_SHOP_DEFAULT",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/wallsandfabrics": {
+ "env_path": "~/Projects/wallsandfabrics/.env",
+ "derived": [
+ "GEORGE_AUTH"
+ ],
+ "other_keys": [
+ "ADMIN_PASS",
+ "ADMIN_USER",
+ "COMPLIANCE_KEY",
+ "GEORGE_BASE",
+ "MICROSITE_ADMIN_ENABLED",
+ "SITE_EMAIL",
+ "ZD_WIDGET_KEY"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/coming-soon-template": {
+ "env_path": "~/Projects/coming-soon-template/.env",
+ "derived": [],
+ "other_keys": [
+ "DATA_FILE"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/Designer-Wallcoverings/DW-Agents/dw-agents": {
+ "env_path": "~/Projects/Designer-Wallcoverings/DW-Agents/dw-agents/.env",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "GEMINI_API_KEY",
+ "GOOGLE_CLIENT_SECRET",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_STORE_DOMAIN",
+ "SHOPIFY_THEME_TOKEN",
+ "SLACK_APP_TOKEN",
+ "SLACK_BOT_TOKEN",
+ "SLACK_SIGNING_SECRET",
+ "TWILIO_ACCOUNT_SID",
+ "TWILIO_AUTH_TOKEN",
+ "TWILIO_PHONE_NUMBER"
+ ],
+ "other_keys": [
+ "ADMIN_EMAILS",
+ "ADMIN_PASSWORD",
+ "AUTH_PORT",
+ "BASIC_AUTH",
+ "BLOCKED_USERS",
+ "CHAT_PORT",
+ "CONSTANT_CONTACT_ACCESS_TOKEN",
+ "CONSTANT_CONTACT_API_KEY",
+ "DATABASE_URL",
+ "GOOGLE_CALLBACK_URL",
+ "GOOGLE_CLIENT_ID",
+ "GOOGLE_CLOUD_PROJECT",
+ "GOOGLE_REFRESH_TOKEN",
+ "OUTPUT_DIR",
+ "PAAPI_ACCESS_KEY",
+ "PAAPI_HOST",
+ "PAAPI_PARTNER_TAG",
+ "PAAPI_REGION",
+ "PAAPI_SECRET_KEY",
+ "PGPASSWORD",
+ "RC_ACCESS_TOKEN",
+ "RC_BASE_URL",
+ "RC_CLIENT_ID",
+ "RC_CLIENT_SECRET",
+ "RC_EXTENSION",
+ "RC_PASSWORD",
+ "RC_REFRESH_TOKEN",
+ "RC_USERNAME",
+ "RINGCENTRAL_CLIENT_ID",
+ "RINGCENTRAL_CLIENT_SECRET",
+ "RINGCENTRAL_EXTENSION",
+ "RINGCENTRAL_PASSWORD",
+ "RINGCENTRAL_USERNAME",
+ "SESSION_SECRET",
+ "SHOPIFY_ACCESS_TOKEN",
+ "SHOPIFY_ADMIN_ACCESS_TOKEN",
+ "SHOPIFY_ADMIN_API_VERSION",
+ "SHOPIFY_PRODUCTS_TOKEN",
+ "SIGNING_SECRET",
+ "SKILLS_AUTH_PASS",
+ "SKILLS_AUTH_USER",
+ "SLACK_CHANNEL",
+ "SLACK_WEBHOOK",
+ "SLACK_WEBHOOK_URL",
+ "ZENDESK_EMAIL",
+ "ZENDESK_PASSWORD"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/Designer-Wallcoverings/DW-Agents/dw-agents/agent-task-orchestrator": {
+ "env_path": "~/Projects/Designer-Wallcoverings/DW-Agents/dw-agents/agent-task-orchestrator/.env",
+ "derived": [
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_THEME_TOKEN"
+ ],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/claude-slack": {
+ "env_path": "~/Projects/claude-slack/.env",
+ "derived": [
+ "SLACK_BOT_TOKEN"
+ ],
+ "other_keys": [
+ "ALLOWED_SLACK_USERS",
+ "CLAUDE_BIN",
+ "CLAUDE_PERMISSION_MODE",
+ "CLAUDE_TIMEOUT_MS",
+ "CLAUDE_WORKDIR",
+ "CNCP_URL",
+ "GEORGE_URL",
+ "HEALTH_ALERT_EMAIL",
+ "HEALTH_FAIL_THRESHOLD",
+ "HEALTH_REALERT_MS",
+ "MENTION_PATTERN",
+ "SLACK_BOT_USER_ID",
+ "SLACK_CHANNELS",
+ "SLACK_MAX_REPLY_CHARS"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/commercialrealestate": {
+ "env_path": "~/Projects/commercialrealestate/.env",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "BRAVE_SEARCH_API_KEY",
+ "GEORGE_AUTH",
+ "GMAIL_BASIC_AUTH_B64"
+ ],
+ "other_keys": [
+ "CC_ALL",
+ "CC_ALL_YEARS",
+ "CC_BUDGET",
+ "CC_CITIES",
+ "CC_CITY",
+ "CC_FIRMS",
+ "CC_FRESH",
+ "CC_HOODS",
+ "CC_LIMIT",
+ "CC_LOCAL",
+ "CC_MAXP",
+ "CC_MAXREGIONS",
+ "CC_MAX_COST",
+ "CC_MAX_SESSIONS",
+ "CC_MINP",
+ "CC_NAV",
+ "CC_PER_SESSION",
+ "CC_PER_SESSION_REGIONS",
+ "CC_PRIOR_SPEND",
+ "CC_PROBE",
+ "CC_REDO",
+ "CC_REGION",
+ "CC_ROLL_YEAR",
+ "CC_START_OFFSET",
+ "CC_TIER3_MAX",
+ "CC_TYPE",
+ "CHROME_PATH",
+ "CLAUDE_BIN",
+ "CLAUDE_CHAT_BACKEND",
+ "CRCP_PASS",
+ "CRCP_USER",
+ "CRE_LIMIT",
+ "CRE_PGDATABASE",
+ "CRE_PGHOST",
+ "CRE_PGPORT",
+ "CRE_PGUSER",
+ "CRE_TYPES",
+ "DRY_RUN",
+ "GEN_TS",
+ "GEORGE_BASIC_AUTH",
+ "GEORGE_EXTERNAL_SEND_TOKEN",
+ "GEORGE_URL",
+ "GSHEET_ID",
+ "MARK_SAFETY_FRACTION",
+ "MARK_SINCE",
+ "OFFMKT_DAYS",
+ "OUT",
+ "REPORT_DATE",
+ "REPORT_DAYS",
+ "USER",
+ "WLT_PGDATABASE",
+ "WLT_PGHOST",
+ "WLT_PGPORT",
+ "WLT_PGUSER"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/dw-slideshow-gen": {
+ "env_path": "~/Projects/dw-slideshow-gen/.env",
+ "derived": [
+ "POSTIZ_API_KEY"
+ ],
+ "other_keys": [
+ "POSTIZ_URL"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/.claude/skills/kartiseira": {
+ "env_path": "~/.claude/skills/kartiseira/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/small-business-builder": {
+ "env_path": "~/Projects/small-business-builder/.env",
+ "derived": [
+ "BROWSERBASE_API_KEY",
+ "BROWSERBASE_PROJECT_ID"
+ ],
+ "other_keys": [
+ "ADMIN_TOKEN",
+ "BASIC_AUTH",
+ "COUNTY",
+ "DATABASE_URL",
+ "DEBUG",
+ "DRY",
+ "HOSTS",
+ "LIMIT",
+ "OLLAMA_DRAFT_MODEL",
+ "OLLAMA_FALLBACK_URL",
+ "OLLAMA_URL",
+ "OVERPASS_URL",
+ "SITE_URL"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/undefined": {
+ "env_path": "~/.claude/skills/undefined/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": true,
+ "missing_dir": true
+ },
+ "~/Projects/marketing-command-center": {
+ "env_path": "~/Projects/marketing-command-center/.env",
+ "derived": [
+ "ANTHROPIC_API_KEY",
+ "GEMINI_API_KEY",
+ "META_ACCESS_TOKEN"
+ ],
+ "other_keys": [
+ "AYRSHARE_API_KEY",
+ "CC_AGENT_BASE",
+ "CC_AGENT_PASS",
+ "CC_AGENT_USER",
+ "CRCP_BROKERS",
+ "CTCT_ACCESS_TOKEN",
+ "CTCT_API_KEY",
+ "DATABASE_URL",
+ "ENGINE_MODEL",
+ "ENGINE_SCHEDULER",
+ "ENGINE_VISION_MODEL",
+ "GA4_ACCESS_TOKEN",
+ "GA4_PROPERTY_ID",
+ "GDRIVE_REMOTE",
+ "GEMINI_KEY",
+ "GEMINI_MODEL",
+ "GEORGE_URL",
+ "GOOGLE_GENERATIVE_AI_API_KEY",
+ "LI_CLICKLIST",
+ "MCC_BASE",
+ "MCC_PASS",
+ "MCC_USER",
+ "META_FB_PAGE_ID",
+ "META_GRAPH_VERSION",
+ "META_IG_USER_ID",
+ "NORMA_IG_BASE",
+ "NORMA_IG_PASS",
+ "NORMA_IG_USER",
+ "OLLAMA_FALLBACK",
+ "OLLAMA_PRIMARY",
+ "PGDATABASE",
+ "PGHOST",
+ "PGUSER",
+ "REELS_BASE",
+ "REELS_MANIFEST",
+ "REELS_PASS",
+ "REELS_PUBLIC_BASE",
+ "REELS_USER",
+ "SCHED_PER_DAY",
+ "SCHED_STALE_MS",
+ "SOCIAL_SCHEDULER_LIVE",
+ "USER"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/designerwallcoverings": {
+ "env_path": "~/Projects/designerwallcoverings/.env",
+ "derived": [
+ "GEMINI_API_KEY",
+ "SHOPIFY_ADMIN_TOKEN",
+ "SHOPIFY_DW_ADMIN_TOKEN_CONTENT",
+ "SHOPIFY_STORE",
+ "STOUT_PASSWORD",
+ "STOUT_USERNAME"
+ ],
+ "other_keys": [
+ "ACK_SEED",
+ "AKEY",
+ "APPLY",
+ "BRAND",
+ "C34_CONFIRM",
+ "CAP",
+ "CATALOG",
+ "CNCP_URL",
+ "CODE",
+ "COMMIT",
+ "CONFIRM_DELAY_MS",
+ "CRATER_PCT",
+ "DAILY_CAP",
+ "DATABASE_URL",
+ "DB_URL",
+ "DRY_RUN",
+ "DW_BACKLOG_CAP",
+ "DW_BACKLOG_RECLAIM_HOUR",
+ "DW_KNOLL_BUDGET",
+ "DW_MAHARAM_BUDGET",
+ "DW_MAHARAM_CAP",
+ "DW_MAHARAM_FLOOR",
+ "DW_MURALSOURCE_BUDGET",
+ "DW_OSBORNE_CAP",
+ "DW_OSBORNE_FLOOR",
+ "DW_ROLL_CAP",
+ "DW_STOUT_BUDGET",
+ "DW_STOUT_CAP",
+ "DW_STOUT_FLOOR",
+ "DW_STROHEIM_BUDGET",
+ "DW_STROHEIM_CAP",
+ "DW_STROHEIM_FLOOR",
+ "DW_UNIFIED_URL",
+ "DW_UPLOAD_CAP",
+ "DW_VARIANT_BUDGET",
+ "ENRICH_GEMINI_ONLY",
+ "GEMINI_MODEL",
+ "GEORGE_HOST",
+ "GEORGE_PORT",
+ "GMC_SELFCLEAN",
+ "GQL",
+ "JD_CSV",
+ "JD_ENRICH",
+ "JOIN",
+ "LIMIT",
+ "MAC2_DB_URL",
+ "MAP_FILE",
+ "MIN_ACTIVE_SCAN",
+ "MIN_YARDS",
+ "MURAL_ENV_FILE",
+ "OLLAMA_VISION_MODEL",
+ "ONLY",
+ "OSBORNE_CANARY_TO",
+ "PRICE_CAP",
+ "PRICE_CEIL",
+ "PUBLISH_CAP",
+ "REPRICE_LIMIT",
+ "ROLL_CAP",
+ "ROLL_PRICE_CAP",
+ "SAMPLE_PRICE",
+ "SCRUB_CONFIRM",
+ "SELFTEST",
+ "SHOPIFY_API_VERSION",
+ "SHOPIFY_PRODUCT_TOKEN",
+ "SRC",
+ "STALE_HOURS",
+ "START",
+ "STATUS",
+ "T",
+ "THRESH",
+ "TOK"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/dw-vendor-microsites": {
+ "env_path": "~/Projects/dw-vendor-microsites/.env",
+ "derived": [
+ "SHOPIFY_SAMPLE_VARIANT_ID",
+ "SHOPIFY_STORE_DOMAIN"
+ ],
+ "other_keys": [
+ "PG",
+ "SHOPIFY_STOREFRONT_TOKEN",
+ "VENDOR_FIELDMAP",
+ "VENDOR_JSONL",
+ "VENDOR_TITLE"
+ ],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/.claude/skills/2captcha": {
+ "env_path": "~/.claude/skills/2captcha/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ },
+ "~/Projects/secrets-manager": {
+ "env_path": "~/Projects/secrets-manager/.env",
+ "derived": [],
+ "other_keys": [
+ "BB_STAGE_FILE",
+ "DRY",
+ "INFILE",
+ "LIMIT",
+ "OUTFILE",
+ "VERIFY_SKU"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/Projects/Norma/agents/instagram-agent": {
+ "env_path": "~/Projects/Norma/agents/instagram-agent/.env",
+ "derived": [
+ "IG_ACCESS_TOKEN",
+ "IG_USER_ID"
+ ],
+ "other_keys": [
+ "IG_GRAPH_HOST",
+ "IG_GRAPH_VERSION"
+ ],
+ "dynamic": true,
+ "review_required": true,
+ "missing_dir": false
+ },
+ "~/.claude/skills/osborne-scraper-manager": {
+ "env_path": "~/.claude/skills/osborne-scraper-manager/.env",
+ "derived": [],
+ "other_keys": [],
+ "dynamic": false,
+ "review_required": false,
+ "missing_dir": false
+ }
+ }
+}
\ No newline at end of file
← 9c94c8a auto-save: 2026-07-27T09:19:22 (2 files) — registry.json rou
·
back to Secrets Manager
·
secrets-manager scoping: fix 3 contrarian-found defects (TK- a124191 →