Skip to content

folder_sysmon · folder_proc · bookmark_sync

Three tools for the machine and the browser, not just the filesystem. All are standalone and cross-platform (Windows / macOS / Linux).

folder_sysmon — CPU / memory / GPU monitor

folder_sysmon                     # one-shot snapshot
folder_sysmon --watch [--interval 2]
folder_sysmon --json              # machine-readable one-shot
folder_sysmon --stream --interval 1   # one JSON line per tick, for front ends

Reports CPU% (aggregate), memory used/total, and a best-effort GPU line (NVIDIA via nvidia-smi if present; macOS also tries ioreg/system_profiler for the GPU name). GPU utilization is not always available — absence is reported, never fatal.

folder_proc — process list / kill / priority

folder_proc [--sort cpu|mem|pid|name] [--top N] [--filter <substr>]
folder_proc --watch [--interval 1]
folder_proc --kill <pid> [--force]                # SIGTERM, or SIGKILL with --force
folder_proc --priority <pid> low|normal|high
folder_proc --json

cpuPercent is normalized so 100 means one full core saturated (top-style — multi-threaded processes can exceed 100). --kill targets exactly one PID (no globbing), matching the suite's "destructive actions are deliberate" rule.

Both tools' core (CPU sampling, process enumeration, kill/priority) lives in include/sysinfo.hpp and is also used in-process by mullion-fileman's System Monitor panel (m key) — no subprocess involved there.

bookmark_sync — sync bookmarks across browsers

bookmark_sync                       # sync every pair of browsers found on this machine
bookmark_sync --dry-run             # preview only
bookmark_sync --to chrome           # only write INTO Chrome
bookmark_sync --from firefox        # only pull FROM Firefox (into the others)
bookmark_sync --from safari --to chrome   # one-directional
bookmark_sync --only firefox,chrome # restrict to just these two
bookmark_sync --no-backup           # skip the automatic .bak copies

Syncs Chrome, Firefox, and (macOS only) Safari — bidirectionally, across every pair actually found on disk. New bookmarks land in an "Imported from <Source>" folder in the destination browser; matching is by URL (case-insensitive); nothing is ever deleted or overwritten. Every write is preceded by a timestamped .bak copy (unless --no-backup).

Firefox bookmarks live in a SQLite database (places.sqlite); this tool vendors SQLite (third_party/sqlite3, public domain) to read and write it directly rather than shelling out, so it works even if the sqlite3 CLI isn't installed.

Warning

Close Firefox before running — an open profile can lock places.sqlite. A locked/unreadable browser is skipped with a warning, never treated as "empty" (which would otherwise risk flooding it with duplicate imports). Safari requires Full Disk Access for Terminal (System Settings -> Privacy & Security -> Full Disk Access).