.brutpack & portability
Brut is local-first, so "collaboration" means moving work between machines — not syncing it through a cloud. Two mechanisms cover it: .brutpack files and NAS-rooted projects.
.brutpack — a project in one file
File ▾ → Export project as pack… writes a single .brutpack file containing everything: outputs, graphs, the generation ledger, and the portability marker — with warm caches included, so the person who opens it can re-run the graph for free.
- Import with File ▾ → Import pack… → it becomes a new project, ready to run.
- It's a zip under the hood (stored entries), and importing is zip-slip-guarded into a fresh project folder.
- Legacy
.forgepackfiles (from before the rename) import fine.
A .brutpack never contains keys — those stay in each machine's keychain.
NAS-rooted projects — shared live work
Instead of passing files around, point a project at a shared folder on your NAS (File ▾ → New project…, then choose the NAS path as its root). The project's data lives there; the local folder is just the registration.
A project.json marker inside the root lets a second seat adopt the same project — File ▾ → Open project… on that folder, and both machines work against the same outputs, graphs and ledger.
This is how a studio collaborates: one project on the NAS, every seat opening it.
How paths stay portable
Anything inside a project's outputs directory is stored on disk as a portable scheme (brut-out://<rel>) and resolved back to a local absolute path on load. This is what makes a project machine-independent — the same graph opens correctly whether the outputs live on your C: drive or a NAS share, on your machine or a colleague's. Paths outside the project root intentionally stay absolute (cross-project references can't be relativized).
The same discipline is what
.brutpackreuses — it's why a packed project's warm caches still resolve after you import it on a different computer.
Export vs pack
- Export project to folder — a live copy into an empty folder; the copy is itself openable and shareable (great for a NAS).
- Export project as pack — the same content as one
.brutpackarchive.
Both ask whether to include the Marcel studio journal (conversations + narration): on by default for a folder export (it's a backup), off by default for a pack (packs leave the studio). A checkbox lets you override either way.