Emm documentation

Sharing

Sharing is explicit and separate from local work. On the desktop, signing in, accepting an invitation, and opening a project are three different actions.

Desktop sign-in

In the Emm Project List, under Authenticated accounts, click Sign in (or Sign in with another account). Choose Google or email/passkey and complete the sign-in. Google uses your browser; passkeys use macOS. Signing in saves verified account access on this Mac and resumes copies that selected that account. It does not accept invitations, download projects, or open one automatically.

Accept or reject an invitation

Under Pending invitations, each invitation names the project, the inviter's email, and the invitation time. Click Accept to add that account's membership to that project, or Reject to mark only that invitation rejected. A Google-required project still requires Google authentication.

Open a project

Click a project row to open it. An existing local copy opens directly; downloading a shared project asks for its account and local folder. Notes follows your choice in Settings › Notes. A local project requires no sign-in and works without cloud authentication.

Sharing Notes

Sharing Notes is an explicit action with scope and consequence. From a terminal inside that project's folder on each machine, enroll a dedicated Markdown folder:

emm sync notes set /absolute/path/to/shared-notes

Then keep delivery running:

emm sync --watch

Leave the watch terminal running (Ctrl-C stops it). Enrollment is local to that copy and bidirectional: existing shared files download, and local files upload. Only copies you configure participate — joining a project does not make every member's notes download automatically.

Choose a dedicated folder. Every .md file under the enrollment root — including hidden and Git-ignored files — is shared. Markdown documents must be UTF-8 and at most 4 MiB. Supported images inside the configured project Notes folder also share, up to 25 MiB each; PDFs, other unsupported files and symlinks do not travel. Personal notes and images outside that folder remain local. Check this copy's recorded delivery state offline with emm sync notes status. That status is evidence about this copy only; it is not proof that an offline peer has finished its edits.

Image delivery has a separate pause control. If it was paused earlier, enrolling Notes does not silently resume it. Read emm sync images --help to inspect or change that choice, and emm sync images status to inspect pending transfers or failures. Conflicting images are preserved for you to choose between; Emm does not merge their bytes.

CLI project join (headless)

To bring a shared project onto this machine from the terminal:

emm project join PROJECT_ID --email EMAIL --no-browser --in DIR

Replace PROJECT_ID, EMAIL, and DIR with your values. --in DIR is the folder for the copy; use an empty or new folder. --no-browser prints an approval link that you can open on another computer. Complete that approval while the server command waits; Google is the default method. After joining, change into DIR before running the Notes setup above. emm auth login EMAIL instead refreshes access for an already joined local project.

Conversations

Read/unread reminders and channel following are saved locally for each project and user. They do not sync to your other computers or change another member’s read state. Use the conversation header or Go ▸ Mark Read/Unread (Cmd+Shift+U); a deliberate unread reminder stays until you mark it read. Undo mark read restores attention without undoing text.