You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
New users install Mnemonic and immediately get flooded with filesystem events from whatever desktop apps they have running. We ship default exclusions for known noisy paths (Chrome, VS Code, GNOME, etc. — see PR #26), but there are hundreds of apps that write to ~/.config/ and ~/.local/share/ that we can't all anticipate.
A user on KDE with Brave and Obsidian would get noise from paths we never thought to exclude.
Proposal
On first startup (or when a new config.yaml is generated), scan the user's system for known noisy application directories and auto-populate exclusion patterns.
Detection approach
Scan these base directories:
~/.config/ (Linux XDG config)
~/.local/share/ (Linux XDG data)
~/Library/ (macOS — already excluded wholesale, but could be more granular)
~/.cache/ (already excluded, but good to confirm)
For each subdirectory found, check against a known-noisy registry:
For unrecognized directories, optionally log them at DEBUG level so the adaptive learning system (#TBD) can observe whether they generate noise.
Where this runs
In cmd/mnemonic/main.go during the serve startup sequence, before the watcher starts. Only runs if a marker file (e.g., ~/.mnemonic/.autodetect-done) doesn't exist yet, so it's a one-time operation.
Problem
New users install Mnemonic and immediately get flooded with filesystem events from whatever desktop apps they have running. We ship default exclusions for known noisy paths (Chrome, VS Code, GNOME, etc. — see PR #26), but there are hundreds of apps that write to
~/.config/and~/.local/share/that we can't all anticipate.A user on KDE with Brave and Obsidian would get noise from paths we never thought to exclude.
Proposal
On first startup (or when a new
config.yamlis generated), scan the user's system for known noisy application directories and auto-populate exclusion patterns.Detection approach
Scan these base directories:
~/.config/(Linux XDG config)~/.local/share/(Linux XDG data)~/Library/(macOS — already excluded wholesale, but could be more granular)~/.cache/(already excluded, but good to confirm)For each subdirectory found, check against a known-noisy registry:
For unrecognized directories, optionally log them at DEBUG level so the adaptive learning system (#TBD) can observe whether they generate noise.
Where this runs
In
cmd/mnemonic/main.goduring theservestartup sequence, before the watcher starts. Only runs if a marker file (e.g.,~/.mnemonic/.autodetect-done) doesn't exist yet, so it's a one-time operation.Output
Detected exclusions are logged at INFO level:
Exclusions are applied in-memory for the current session. Optionally written back to
config.yamlwith a comment so the user can review and adjust.Doesn't replace defaults
This supplements the static defaults from config.yaml — it catches apps that are installed but not in the default list. The layered approach:
Related