Skip to main content

๐ŸŒ Supported SCM Providers

Early AI supports multiple source control platforms for test generation.
This page outlines which providers are supported and how to configure the --scm-provider flag for each one.


๐Ÿ› ๏ธ How It Worksโ€‹

All CLI-based agents accept the --scm-provider flag (or SCM_PROVIDER environment variable).
This tells the agent how to interpret commit metadata and which API to use for reading/writing data.

Example:

early generate-commit --scm-provider github
early generate-folder --scm-provider bitbucket

โœ… Supported Providersโ€‹

ProviderCLI ValueStatus
GitHubgithubโœ… Supported
Bitbucketbitbucketโœ… Supported
GitLabgitlab๐ŸŸก Planned

โš ๏ธ If you omit the --scm-provider flag, the default is github.


๐Ÿ” Feature Support Matrixโ€‹

FeatureGitHubBitbucketGitLab
โœ… Commit Detectionโœ… Yesโœ… Yes๐ŸŸก Soon
โœ… PR Metadataโœ… Yesโœ… Yes๐ŸŸก Soon
โœ… Repo Scanning (Folder CLI)โœ… Yesโœ… Yes๐ŸŸก Soon
โœ… Auto-Commitโœ… Yesโœ… Yes๐ŸŸก Soon
โŒ NPM Package AuthPATApp PWPAT

โš™๏ธ Example CLI Flagsโ€‹

# GitHub (default)
early generate-commit \
--scm-provider github \
--token $GITHUB_TOKEN \
--ref-name main \
--commit-hash abc123

# Bitbucket
early generate-folder \
--scm-provider bitbucket \
--token $BITBUCKET_APP_PASSWORD \
--folder src/ \
--ref-name develop

You can also pass the provider as an environment variable:

export SCM_PROVIDER=bitbucket
early generate-folder

๐Ÿงช CI Configuration Tipsโ€‹

  • Bitbucket Pipelines: Use an App Password and store it securely.
  • Jenkins / CircleCI: Make sure SCM_PROVIDER is set explicitly.
  • GitHub Actions: You can omit --scm-provider (defaults to github).