> Documentation index: https://rift.sh/llms.txt

# Files

Rift keeps your files in one folder, `~/rift`. Make folders and files in it with the tools you already use. Every file is encrypted before it leaves your machine.

## Folders

```
$ mkdir ~/rift/team
$ cp notes.md ~/rift/team/
$ ls ~/rift
team
```

A folder is private until you share it.

## Add, list, read

```
$ cp -r src ~/rift/team/
$ ls ~/rift/team
notes.md  src
$ cat ~/rift/team/notes.md
ship friday
```

Your own machines download every file as it arrives, except a file offloaded to Rift Cloud, which downloads when it is opened. A machine a folder was shared with can list a file before it has the contents, and downloads it the first time something opens it.

`rift add`, `rift cat` and `rift get` do the same jobs for a script that works outside the folder.

## Move

```
$ mv ~/rift/team/notes.md ~/rift/team/archive/
$ rift mv team/draft.md public/launch.md
! readers change
  - bob      write
  + carol    read
? move team/draft.md to public/launch.md? y/N
```

Moving a file within a shared folder renames it for everyone. Moving it to a folder with different members changes who can read it. `rift mv` lists those changes and asks you to confirm.

A plain `mv` between two such folders makes the same change without asking. Neither move uploads the file again.

## Copy

```
$ rift cp team/weights/run-14.safetensors experiments/run-14.safetensors
✓ copied to experiments/run-14.safetensors 41.8 GB, 0 B uploaded
```

`rift cp` makes a new file without uploading its contents again. Editing one copy afterwards does not change the other.
