Skip to content

fullsend repos

Declarative management of fullsend per-repo installations using a repos.yaml manifest. Currently supports manifest generation via repos init; additional commands are planned per ADR-0057.

Commands

CommandDescription
fullsend repos init <org|owner/repo>Generate a repos.yaml manifest by discovering existing installations

repos init

Discovers existing fullsend installations (per-repo and per-org) and generates a repos.yaml manifest reflecting their current state. Supports greenfield onboarding and migration from existing installations.

bash
fullsend repos init <org> --all --mint-project <PROJECT> --inference-project <PROJECT>

Single-repo mode:

bash
fullsend repos init <owner/repo> --mint-project <PROJECT>

Flags

FlagDefaultDescription
--output, -orepos.yamlOutput path (use - for stdout)
--reposComma-separated list of repos to include
--allfalseInclude all eligible repos without prompting
--mint-projectGCP project for the mint
--mint-regionus-central1GCP region for the mint
--inference-projectDefault GCP project for inference
--concurrency8Max parallel API calls

Discovery

The command discovers repos by checking:

  1. Per-repo guard variable (FULLSEND_PER_REPO_INSTALL) — identifies per-repo installations
  2. Per-org config enrollment (config.yaml in .fullsend repo) — identifies per-org installations
  3. Workflow ref — extracts the @ref from scaffold shim workflow files

Defaults computation

Default values for fullsend_ref and inference_region are computed using the mode (most common value) across discovered repos. Per-repo overrides are generated only for fields that differ from defaults.

Selection modes

For org targets, one of --all or --repos is required:

  • --all: include all discovered repos
  • --repos: include only the specified repos (comma-separated owner/repo names)