---
source: src/main.rs
expression: sub.render_long_help().to_string()
---
Set up pond (idempotent: safe to re-run).

Walks through storage, adapters, MCP registration, and an optional sync schedule, then writes config.toml in one pass at the end. Re-running repairs or updates an existing setup; flags answer sections non-interactively.

Usage: pond init [OPTIONS]

Options:
      --adapters <NAMES>
          Comma-separated adapter names to enable (skips the adapter picker)

      --every <EVERY>
          Register `pond sync` on a schedule. Opt-in: `--yes` alone never schedules
          
          [possible values: 5m, 15m, 1h, 6h, 1d]

      --skip-mcp
          Skip MCP registration

  -y, --yes
          Accept defaults for everything not covered by a flag (non-interactive)

      --force
          Ignore existing config values and start from built-in defaults

  -h, --help
          Print help (see a summary with '-h')

Global options:
      --storage-path <URL>
          Storage destination: a local path or remote URL.
          
          Accepts a bare path, `~/path`, `file://`, `s3://bucket/prefix`, `s3+https://host/bucket/prefix`, `gs://`, `az://`, or the keyword `local` (the platform default local data dir). Default: `[storage].path` from config, then the platform data dir (`~/.local/share/pond`).
          
          [env: POND_STORAGE_PATH]

      --config-file <PATH>
          Config file to read (default: `~/.config/pond/config.toml`)
          
          [env: POND_CONFIG_FILE]

  -v, --verbose...
          Increase logging verbosity

  -q, --quiet...
          Decrease logging verbosity

Examples:
  pond init                                   interactive setup (or repair)
  pond init --yes                             accept defaults, no prompts
  pond init --storage-path s3://bucket/pond   preset storage, prompt for the rest
  pond init --adapters claude-code,codex-cli --yes
  pond init --every 1h --yes                  also register an hourly sync
