GitHub Integration
Connect Otto to GitHub to create pull requests and respond to code reviews.
Installing the GitHub App
- Go to Settings → Integrations in Otto
- Click Connect GitHub
- Click Install GitHub App
- Select your organization
- Choose which repositories Otto can access
- All repositories — Otto can work on any repo
- Selected repositories — Limit to specific repos
Required Permissions
The Otto GitHub App requests these permissions:
| Permission | Purpose |
|---|---|
| Contents (read/write) | Read code, create branches, push commits |
| Pull requests (read/write) | Create and update PRs |
| Issues (read/write) | Link PRs to issues |
| Metadata (read) | Access repo information |
How Otto Uses GitHub
Creating Branches
When Otto starts work on a ticket, it:
- Creates a new branch from your default branch
- Branch name:
otto/[ticket-id]-[slug] - Example:
otto/EBS-123-add-user-avatar
Making Commits
Otto commits changes with:
- Clear commit messages describing the change
- Co-authored attribution when responding to feedback
- Signed commits (if configured)
Opening Pull Requests
Otto's PRs include:
- Descriptive title matching the ticket
- Summary of changes
- Link to the Linear ticket
- Implementation notes
- Test instructions (if applicable)
Responding to Reviews
When you leave review comments, Otto:
- Reads the feedback
- Makes the requested changes
- Pushes a new commit
- Responds to the comment
Repository Settings
Default Branch
Otto creates branches from and targets PRs to your default branch (usually main or master).
Branch Protection
Otto respects branch protection rules:
- If PRs require reviews, Otto won't merge automatically
- If status checks are required, Otto waits for CI
Code Owners
If you use CODEOWNERS, the appropriate reviewers are automatically requested.
Best Practices
Start with Limited Access
Initially, give Otto access to a test repository to validate your configuration before expanding.
Use Branch Protection
Always require PR reviews before merging Otto's code.
Enable CI
Set up automated tests that run on Otto's PRs to catch issues early.
