Skip to main content
Ona Agent includes built-in Source Control Management (SCM) tools that enable direct interaction with GitHub and GitLab. These tools allow agents to create pull requests, manage issues, add code review comments, and search across your repositories—all without additional configuration.

Supported providers

Ona Agent SCM tools currently support:
  • GitHub (github.com and GitHub Enterprise)
  • GitLab (gitlab.com and self-hosted instances)
Bitbucket and Azure DevOps are supported for repository access configuration, but agent SCM tools are not yet available for these providers.

What agents can do

With SCM tools, Ona Agent can:
  • Create, update, and read pull requests (GitHub) or merge requests (GitLab)
  • Add general and inline code review comments
  • Create and manage issues
  • Search for issues and pull requests
  • List available issue types

Organization controls

SCM tools are enabled by default for all organizations. Organization administrators can disable them if needed.

Configuring SCM tools access

  1. Navigate to Settings > Agents
  2. Locate the SCM Tools controls
  3. Toggle SCM tools on or off
  4. Changes apply to new Ona Agent conversations

When SCM tools are disabled

  • Ona Agent cannot create or update pull requests
  • Issue management tools are unavailable
  • Code review commenting is blocked
  • Search tools for issues and PRs are disabled
  • Agents can still use Git commands directly (clone, commit, push)
This control helps organizations that need to restrict agent interactions with their source control platforms for compliance or security reasons. For more details on organization-wide agent controls, see Organization policies.

Common workflows

Creating a pull request

Ask Ona Agent to create a pull request after making changes:
Create a pull request for my changes. Title it "Add input validation" 
and describe the changes in the body.

Code review comments

Request inline feedback on specific code:
Review the changes in PR #42 and add inline comments for any 
issues you find.

Issue management

Create or update issues directly:
Create an issue titled "Refactor authentication module" with a 
description of the proposed changes.

Searching for context

Find related issues or pull requests:
Search for any open issues related to "authentication timeout".

Provider differences

While SCM tools work consistently across providers, some platform-specific behaviors exist:
FeatureGitHubGitLab
Inline commentsDirect comment creationCreates discussion threads
Draft PRsSupportedNot supported
AssigneesUsername-basedRequires user IDs
GitLab inline comments create discussion threads rather than simple comments. This is a GitLab platform behavior, not a limitation of Ona Agent.

Prerequisites

Before using SCM tools:
  1. Configure source control on your runner—see GitHub, GitLab
  2. Authorize access via OAuth or PAT when creating your first environment
  3. Verify permissions—ensure your token has appropriate scopes for the operations you need

Required scopes

GitHub:
  • repo — Repository access for PR and issue operations
  • read:user — User information for git author
  • workflow — GitHub Actions file editing (if needed)
GitLab:
  • api — Full API access
  • read_repository — Repository cloning
  • read_user — User information

Limitations

Current limitations:
  • No merge capability — Agents cannot merge pull requests
  • No branch sync — Cannot update PR branches with base branch changes
  • No approval submission — Cannot approve or request changes on PRs
  • GitHub and GitLab only — Other providers not yet supported

Troubleshooting

Tool not available

If SCM tools aren’t appearing:
  1. Verify source control is configured on your runner
  2. Check that you’ve authorized access (OAuth or PAT)
  3. Restart your environment to reload tools

Permission denied

If operations fail with permission errors:
  1. Verify your token has the required scopes
  2. Check repository access permissions
  3. For organization repositories, ensure OAuth app access is granted (see GitHub organization access)

Rate limiting

For high-volume operations:
  • GitHub and GitLab enforce API rate limits
  • Space out bulk operations when working across many repositories
  • Consider using Automations for large-scale changes

Next steps