Setup

Repositories

Add GitLab or GitHub repositories so Bilbis has a codebase to work on.

What this means

A repository is a codebase Bilbis can work in. Each pipeline targets one repository, even when the product contains many repositories.

Repositories belong to products. The product stores shared defaults, while each repository stores provider-specific details like path, default branch, commands, and structure hints.

When to use it

Add or edit repositories when:

  • You are completing the setup checklist.
  • A new codebase should be available for pipelines.
  • The default branch, commands, or repo path changed.
  • You want to give Bilbis better hints about how the codebase is organized.

Before you start

You need:

  • Owner or admin access.
  • A product.
  • A GitLab or GitHub credential for the provider where the repo lives.
  • Provider-side access to the repo.

Field reference

FieldWhat it meansDefault
Repo pathFull path on GitLab or GitHub, such as acme/api or acme-org/acme-api.Required
Repo idStable lowercase identifier users see in Bilbis. It cannot be changed after creation.Derived from repo path
ProviderGitLab or GitHub.GitLab
Default branchBase branch Bilbis starts from and usually targets.master or discovered provider default
Stack hintsComma-separated language and framework tags.Empty
DescriptionShort explanation of what the repository does.Empty
Structure hintsNotes about where routes, tests, modules, or conventions live.Empty
Test commandCommand Bilbis should run after changes.Empty
Lint commandCommand Bilbis should run for linting.Empty
Build commandCommand Bilbis should run to build the project.Empty
Skip CITells Bilbis not to rely on CI for this repo.Off

Steps

  1. Open Products.
  2. Choose the product that should contain the repository.
  3. Select Add repo.
  4. Pick a discovered repository if available, or enter the repo details manually.
  5. Confirm the provider and default branch.
  6. Add stack, command, or structure hints if they will help Bilbis work safely.
  7. Save the repository.

What happens next

The repository becomes available in pipeline creation. Users can choose it directly, or use auto-route workflows where Bilbis chooses from multiple candidate repositories.

Better repository hints usually make pipelines easier to interpret and recover. They tell Bilbis what the service does, where important files live, and which commands prove that the change works.

Languages

Each repository row on the product detail page shows a language breakdown when one is available. Bilbis fetches the breakdown from the Git provider's languages API using the org's BYOK token.

ElementWhat it means
Stacked barHorizontal bar (GitHub style) where each segment's width matches the language's percentage. Hover a segment for the exact percent.
LegendEach language with a colored dot and percent, sorted by percent descending.
Updated timeRelative timestamp showing when the breakdown was last fetched, for example Updated 3 days ago.
Stale badgeAmber badge that appears when the breakdown is older than 30 days. Refresh to clear it.
Refresh languages buttonAdmin or owner only. Re-fetches the breakdown from the provider.

If the repository has no breakdown yet, the section shows a small prompt instead. Click Refresh languages to populate it.

Refresh languages

The button calls the provider's languages API with the BYOK token for that provider and writes the result to the repository row.

OutcomeWhat it means
Languages refreshedProvider returned a breakdown and Bilbis stored it. The bar updates immediately.
Couldn't fetch — check BYOK token has repo read scopeProvider rejected the call. Open Settings -> Integrations and confirm the GitLab or GitHub credential has read access to the repo. Validating the credential there can help isolate the cause.

Refresh is admin or owner only. Developers and viewers see the breakdown but no button.

When to refresh

  • After a major language migration in the repo.
  • After fixing or rotating the BYOK Git credential.
  • When the Stale badge has been showing for a while and you want a current value.

Bilbis does not auto-refresh the breakdown. It updates only when an admin clicks the button.

Problems and fixes

ProblemWhat to check
Provider option is disabledAdd the matching GitLab or GitHub credential in Settings -> Integrations.
Repo path already existsThe same provider/path is already connected in this organization.
Repo id already existsChoose a different repo id. It must be unique inside the organization.
Pipeline cannot find the default branchCheck the default branch field and provider-side branch name.
Pipeline changes the wrong areaAdd description and structure hints so Bilbis has more context.
Tests are not runningAdd or fix the test, lint, and build commands for the repository.
Refresh languages returned an errorThe BYOK Git credential lacks repo read scope, or the token is invalid. Re-check the credential in Settings -> Integrations.
Languages section shows a stale badgeClick Refresh languages to fetch the current breakdown. The badge clears once the fetch succeeds.
Refresh languages button is missingRefresh is admin or owner only. Developers and viewers see the breakdown but cannot refresh.

On this page