list_source_repositories
List all public and private repositories from connected GitHub and GitLab accounts in one call, showing full names, URLs, and source accounts. Select the correct repository for migration or hosting without extra user input.
Instructions
List all public and private repositories accessible through the organization's connected Staticbot source-control integrations — GitHub and GitLab. Call this whenever a workflow needs a repository, with NO arguments: it covers every connected account in one call. An organization can connect several accounts on the same provider, and passing one instance ID narrows the listing to that account, which hides the others' repositories — only do that when the user has already chosen an account. The response is { sources[], repositories[] }. Each repository has fullName, webUrl, private, description, defaultBranch, plus provider, integrationInstanceId and sourceLabel — the account it is hosted in, e.g. "GitHub · octocat". Match the current client/project context against fullName or webUrl. If there is one unambiguous match, use its webUrl directly without asking the user to repeat it. When several are plausible — including the same name in two accounts — present the candidates WITH their sourceLabel and ask the user to choose, because the repositories are different. Listing repositories is not itself a decision to migrate: carry the chosen repository into whichever path get_account_status reported (start_hosting or start_migration), and ask the user which if they have not said. Whichever it is, pass the repository's integrationInstanceId back as sourceControlIntegrationInstanceId when calling create_template, so it is read with the account that can actually see it. A sources[] entry with an unavailableReason means that account's repositories are missing from the list and the user has to act — report it rather than concluding the repository does not exist. If there are no sources at all, direct the user to https://app.staticbot.dev/integrations to connect an account and then retry. Never claim that Staticbot requires a public repository.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| integrationInstanceId | No | Optional: restrict the listing to ONE connected account (from list_integration_instances or a previous sources[] entry). Omit to list every connected account, which is almost always what you want. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes | Parsed JSON response from the Staticbot public API |