mani vault

A vault is a synced root folder and its history — the unit of sharing and keying. Share a vault with someone in your organization and any of their devices can read it; a shared member sees the vault's real name and can clone it by name. unshare removes a member and rotates the key so they lose access to anything saved afterwards (forward secrecy). Sharing is admin-only, and the recipient must be in your org (see mani org) and have run mani once so their sharing key is published.

Usage

mani vault [OPTIONS] <COMMAND>

Commands

  • create — Create a vault from a directory and do the first sync
  • ls — List your vaults
  • rebind — Re-point this folder at a vault without re-downloading it
  • rm — Delete a vault (by name or id) and everything stored in it
  • share — Share a vault with another person in your organization
  • members — List the people a vault is shared with
  • unshare — Stop sharing a vault with someone — remove them and rotate the key
  • log — Show the access + sharing history for a vault (who shared/pulled/revoked)
  • help — Print this message or the help of the given subcommand(s)

Options

mani vault --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault --help

Print help (alias: -h)

mani vault create

Create a vault from a directory and do the first sync

Usage

mani vault create [OPTIONS] <NAME> <PATH>

Arguments

  • <NAME> — A name for the vault
  • <PATH> — The directory to sync

Options

mani vault create --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault create --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault create --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault create --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault create --help

Print help (alias: -h)

mani vault ls

List your vaults

Usage

mani vault ls [OPTIONS]

Options

mani vault ls --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault ls --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault ls --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault ls --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault ls --help

Print help (alias: -h)

mani vault rebind

Re-point this folder at a vault without re-downloading it.

Use this when a folder's binding (the gitignored manifa.toml) was deleted and mani sync says "no vault binding" — e.g. you cleared the folder to stage new files and removed manifa.toml with them. Rebind rewrites the binding for the CURRENT directory and leaves your local files untouched, so you can then mani sync your changes up. Unlike clone --force, it never overwrites local files. Refuses if the folder is already bound to a different vault.

Usage

mani vault rebind [OPTIONS] <VAULT>

Arguments

  • <VAULT> — The vault this folder belongs to (name or id)

Options

mani vault rebind --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault rebind --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault rebind --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault rebind --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault rebind --help

Print help (see a summary with '-h') (alias: -h)

mani vault rm

Delete a vault (by name or id) and everything stored in it

Usage

mani vault rm [OPTIONS] <VAULT>

Arguments

  • <VAULT> — The vault to delete — its name or id

Options

mani vault rm --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault rm --yes

Skip the confirmation prompt (required when not running interactively) (alias: -y)

mani vault rm --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault rm --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault rm --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault rm --help

Print help (alias: -h)

mani vault share

Share a vault with another person in your organization

They must already be a member of your org (invite them from the web first) and have run mani at least once so their sharing key is published. The Vault Key is sealed to their key on THIS machine — the server only ever sees ciphertext. Any of their devices can then open the vault.

Usage

mani vault share [OPTIONS] <VAULT> <EMAIL>

Arguments

  • <VAULT> — The vault to share — its name or id
  • <EMAIL> — The email of the person to share it with (must be in your org)

Options

mani vault share --role <ROLE>

Their access level

mani vault share --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault share --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault share --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault share --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault share --help

Print help (see a summary with '-h') (alias: -h)

mani vault members

List the people a vault is shared with

Usage

mani vault members [OPTIONS] <VAULT>

Arguments

  • <VAULT> — The vault — its name or id

Options

mani vault members --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault members --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault members --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault members --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault members --help

Print help (alias: -h)

mani vault unshare

Stop sharing a vault with someone — remove them and rotate the key

Removes the person's access and rotates the Vault Key so they cannot read any content saved AFTER this point (forward secrecy). The remaining members are re-sealed to the new key automatically. Admin-only, like share.

Usage

mani vault unshare [OPTIONS] <VAULT> <EMAIL>

Arguments

  • <VAULT> — The vault to stop sharing — its name or id
  • <EMAIL> — The email of the person to remove (must currently be a member)

Options

mani vault unshare --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault unshare --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault unshare --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault unshare --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault unshare --help

Print help (see a summary with '-h') (alias: -h)

mani vault log

Show the access + sharing history for a vault (who shared/pulled/revoked)

The append-only accountability trail: share / unshare (revoke) / role changes, plus content access (pulls, pushes). Newest first. Owner/admin only. Use --json for machine-readable output.

Usage

mani vault log [OPTIONS] <VAULT>

Arguments

  • <VAULT> — The vault — its name or id

Options

mani vault log --limit <LIMIT>

Maximum number of events to show (newest first)

mani vault log --timing

Print a per-phase timing breakdown to stderr (same as MANIFA_TIMING=1). Useful for diagnosing a slow sync / clone

mani vault log --json

Emit a machine-readable result envelope instead of human text (works on every command). Success prints {"ok":true,"value":…}; failure prints {"ok":false,"error":{"code":…,"message":…}} with a differentiated exit code. Stable field names for scripting/agents

mani vault log --quiet

Suppress progress and chatter — print only results and errors (alias: -q)

mani vault log --no-color

Never colorize output (also honored: the NO_COLOR env var). Color is off automatically when output isn't an interactive terminal

mani vault log --help

Print help (see a summary with '-h') (alias: -h)