Imports:
  - Types:
      - sync AS sync_logic
    From: goga/sync

Usages:
  click: .goga/usages/cooks/click.md
  conventions: .goga/usages/conventions.md

Annotations: |
  The `conventions` practice is used for:
  - working with the codebase
  - organizing the REPL development cycle
  - debugging and testing
  - organizing test infrastructure
  - understanding general development and testing principles/rules in the project
  Use the `click` practice to create the command.
  The command delegates business logic through `sync_logic`.

---

"sync(source: str, token: str | None = None, branch: str | None = None)":
  location: sync.py
  annotations: |
    CLI wrapper for the synchronization command. Delegates business logic to `sync_logic`.

    `source`: path to directory or git repository URL
    `token`: authorization token for git
    `branch`: branch or tag for checkout

    Algorithm:
    1. Call `sync_logic`(`source`, `token`, `branch`)
    2. Return exit_code

---

Author: Goga
CreatedAt: 20/05/26

Description: |
  CLI wrapper for the .usages/ synchronization command