diff --git a/cmd/olliesrv/main.go b/cmd/olliesrv/main.go index 4f41779..a9e7dd1 100644 --- a/cmd/olliesrv/main.go +++ b/cmd/olliesrv/main.go @@ -90,7 +90,8 @@ func (c *ModelCache) Invalidate() { func main() { flag.CommandLine.Parse(os.Args[1:]) //nolint:errcheck - // Handle mount subcommand (kept as a convenience) + // Handle mount subcommand — FUSE-mounts a remote 9P server over TCP + // for network-transparent session access (distinct from local 9pfuse) if flag.NArg() > 0 && flag.Arg(0) == "mount" { cmdMount() return diff --git a/mount/README.md b/mount/README.md new file mode 100644 index 0000000..95868a7 --- /dev/null +++ b/mount/README.md @@ -0,0 +1,23 @@ +# mount/ + +FUSE-based 9P mount for network-transparent session access. + +## Why this exists + +The local workflow uses `9pfuse` (via `ollie-remount`) to mount the unix +socket at `~/mnt/ollie`. That only works locally. + +This package enables **remote** access: `olliesrv mount host:9564 ~/mnt/remote` +FUSE-mounts a remote 9P server over TCP so sessions on another machine appear +as local files. No SSH tunneling, no port forwarding, no API gateway — just +mount and interact. + +This is the network transparency layer that makes ollie a distributed system +rather than a local daemon. + +## Not dead code + +Nothing in the repo *calls* this package at runtime automatically — it's +invoked manually via `olliesrv mount`. If you're grepping for callers and +find only one, that's correct. The value is in the capability, not the +call count.