Releases: prime-radiant-inc/automatic-sshfs
Releases · prime-radiant-inc/automatic-sshfs
Release list
v0.2.0 — reliable mounting + known_hosts + symlinks
asshfs v0.2.0
Early build. This software was developed by an AI agent and has not been audited. Use at your own risk.
What's new since v0.1.0
Reliability fixes (critical):
- Dropped -o reconnect — was causing 100% CPU spin on long-lived mounts
- Fixed launchd PATH — sshfs at /usr/local/bin wasn't in launchd's default PATH
- Fixed sshfs process survival — Setsid detaches sshfs so it survives when reconcile exits
- Switched from WatchPaths (doesn't fire on Unix sockets) to KeepAlive + watch daemon that polls every 15s
- Resolved sshfs to absolute path in mount command as belt-and-suspenders
Features:
- known_hosts enumeration — hosts you ssh to without explicit config entries are now detected and mounted
- Symlinks for shared sockets — when multiple hostnames resolve to the same control socket, the config host gets the real mount and aliases get symlinks
- Prereq check — install checks for FUSE-T and sshfs, prints correct install commands if missing
- Automatic SSH config — install writes ~/.ssh/asshfs.conf and adds Include to ~/.ssh/config (no manual editing)
Install
brew install macos-fuse-t/homebrew-cask/fuse-t
brew install macos-fuse-t/homebrew-cask/fuse-t-sshfs
go install github.com/prime-radiant-inc/automatic-sshfs/cmd/asshfs@latest
asshfs install
License
MIT
v0.1.0 — early build
asshfs v0.1.0
Automatically mount remote filesystems over SSH on macOS. When you ssh to a host, its filesystem appears at ~/sshfs/<host>/. When the last session closes, the mount disappears.
Early build. This software was developed by an AI agent and has not been audited. Use at your own risk.
Features
- Automatic mounting via OpenSSH
ControlMaster+launchd WatchPaths - Zero config editing —
asshfs installwrites~/.ssh/asshfs.confand adds anIncludedirective to~/.ssh/configautomatically - Ref-count per host — mount once, share across concurrent sessions, unmount on last disconnect
- Self-healing — reconcile is idempotent; crashes or missed events are corrected on the next trigger
- ssh -G oracle — delegates all token expansion (including
%C) to ssh itself
Install
brew install macos-fuse-t/homebrew-cask/fuse-t
brew install macos-fuse-t/homebrew-cask/fuse-t-sshfs
go install github.com/prime-radiant-inc/automatic-sshfs/cmd/asshfs@latest
asshfs installCommands
| Command | Description |
|---|---|
asshfs install |
Set up launchd agent, write SSH config, create directories |
asshfs uninstall |
Remove the agent, unmount everything, clean up config |
asshfs reconcile |
Run a mount/unmount cycle manually |
asshfs list |
Show per-host status |
Known limitations
- No
CanonicalizeHostnameorMatch execresolution - Remote root (
/) mounted to~/sshfs/<host>/ - SSHFS ControlPath passthrough depends on sshfs build (degrades gracefully)
- No formal integration test suite (unit tests only)
License
MIT