Product and project are BearDrive; the CLI binary is bdrive (bdrive mnt, bdrive sync, ...), the web viewer is bdrive-web. All conventions follow the full name: .beardrive settings file, .beardriveignore, ~/.beardrive home, BEARDRIVE_HOME, .beardrive-conflict-* / .beardrive-tmp-* files. Plugin/skill/marketplace renamed to beardrive (/beardrive:mount). Module path is now github.com/runbear-io/beardrive — merge only after renaming the GitHub repo, or go install breaks. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HHEUaYfFHhmDvqLYw74Ehz
2.1 KiB
description: Mount a folder as a synced beardrive volume — one command sets up the sync daemon, the .beardrive project config, and (via this plugin's hooks) automatic sync at every turn boundary argument-hint: [folder] [remote e.g. s3://bucket/prefix]
Mount a folder as a synced beardrive volume. Arguments: $ARGUMENTS (optional folder, optional remote URL).
Follow these steps:
-
Check the bdrive CLI is installed: run
command -v bdrive. If missing, offer to install it (brew install runbear-io/tap/beardrive, orgo install github.com/runbear-io/beardrive/cmd/bdrive@latest) and wait for the user's choice before installing. -
Determine the folder: first argument if given, otherwise the current directory. If the folder already contains a
.beardrivefile, the volume and remote are already configured — just runbdrive mnt <folder>and skip step 3. -
Determine the remote: second argument if given. If not given, ask the user which backend they want:
s3://bucket/prefix— Amazon S3 or any S3-compatible store (R2/MinIO viaAWS_ENDPOINT_URL)gs://bucket/prefix— Google Cloud Storagefile:///abs/path— a plain shared directory (NAS, external drive)- none — local-only for now (
bdrive remote setcan add one later)
-
Mount: run
bdrive mnt <folder> [--remote <url>]. This registers the background sync daemon and writes the folder's settings to<folder>/.beardrive. -
Verify: run
bdrive status <folder>and show the result. If the remote errored, consult the beardrive skill's troubleshooting table (credentials are the usual cause). -
Tell the user what's now active (briefly):
- the daemon syncs continuously (every few seconds);
- this plugin's hooks also sync at every turn boundary — a blocking pull when they send a message, an async push when the turn ends — so Claude always works on fresh files;
.beardriveignorein the folder root excludes files (gitignore-style); an"include"list in.beardrivenarrows what syncs;bdrive logshows who changed what,bdrive umntstops syncing.