Skip to content

Multi-Repo Sessions

Multi-repo sessions allow Bucky to work across multiple repositories simultaneously. This is useful for tasks that span services — like updating a shared API contract, coordinating a migration, or investigating a cross-service issue.

  1. The agent’s run_multi_repo_session tool dispatches a repository_dispatch event with type bucky-multi-repo-session to the buck-bronson repo itself
  2. The bucky-multi-repo.yml workflow clones all specified repos into repos/<name>/ subdirectories
  3. Claude runs with multi-repo-specific prompts that are aware of the multi-repo layout
  4. Results are reported back via the same callback pattern as single-repo sessions

The bucky-multi-repo.yml workflow:

  • Clones repos from client_payload.repos (an array of owner/repo strings)
  • Sets up Node.js and Go toolchains without running package installation
  • Registers all plugins (common, web, golang, LSPs) but only injects SOURCEGRAPH_TOKEN
  • Uses prompts from .github/actions/bucky-execute/prompts/ with additional placeholders:
PlaceholderValue
{{ISSUE_REPO}}The repo where the GitHub issue lives (always buck-bronson)
{{REPO_LIST}}Comma-separated list of repos
{{REPO_PATHS}}Paths where repos are cloned (repos/<name>/)
AspectSingle-repoMulti-repo
Runs inTarget repobuck-bronson
GitHub issuesIn target repoIn buck-bronson
Package installYes (per preset)No
SecretsPer-preset tokensOnly SOURCEGRAPH_TOKEN
Dispatch typebucky-sessionbucky-multi-repo-session