import os files = ['meta_growth.py', 'macro_context_collector.py', 'divergence_detector.py', 'memory_guardian.py', 'fix_gateway_port.py'] d = '/home/hmo/.hermes/profiles/position-analyst/scripts/' for f in files: p = os.path.join(d, f) if os.path.islink(p): target = os.readlink(p) ok = os.path.exists(p) print(f"{f} -> symlink -> {target} [{'OK' if ok else 'BROKEN'}]") elif os.path.exists(p): print(f"{f} -> real file") else: print(f"{f} -> MISSING") print() print('=== deploy/profile-scripts candidates ===') deploy = '/home/hmo/MoFin/deploy/profile-scripts/' for f in os.listdir(deploy): if any(k in f for k in ['meta_growth', 'macro_context', 'divergence', 'memory_guardian', 'fix_gateway']): print(' ', f) print() print('=== search whole MoFin for the 5 scripts ===') import subprocess for f in files: r = subprocess.run(['find', '/home/hmo/MoFin', '/home/hmo/projects', '-name', f, '-not', '-path', '*/venv/*'], capture_output=True, text=True, timeout=30) found = [l for l in r.stdout.splitlines() if l.strip()] print(f"{f}: {found if found else 'NOT FOUND'}")