universelab SCI · CLI · BIO

The Wizard

Running ghscaff (or ghscaff new) starts a conversational wizard with 7 steps:

  1. Repository basics — name, description, topics.
  2. Visibility & ownership — public/private, personal or organization.
  3. Team access (org only) — select teams and assign permissions (pull, triage, push, admin).
  4. Language / template — choose a boilerplate (Rust today; more languages coming).
  5. Branches — default branch, optional develop branch.
  6. Features — LICENSE, standard labels.
  7. Review & confirm — verify all settings before creation.

What happens after confirm

Ghscaff then performs the full setup automatically:

  • Creates the repository.
  • Commits all boilerplate files in a single atomic commit (chore: init repository) — no noisy per-file commits.
  • Applies branch protection to main (and develop if created).
  • Adds the selected teams with their assigned permissions.
  • Enforces the standard label set — creates missing, updates changed, removes non-standard.
  • Configures required GitHub Actions secrets from the vault, environment, or an interactive prompt.

Every one of these operations is idempotent — if something already matches, it is skipped, which is what makes Apply Mode safe.