Skip to main content

Overview

The Omnara GitHub Actions integration allows you to trigger Claude Code to run in your GitHub Actions workflows, while monitoring and interacting with it through the Omnara dashboard.

Key Features

Remote Launch

Start GitHub Actions from your phone or web dashboard

Automatic PR Creation

Claude creates branches, commits changes, and opens PRs

Real-time Monitoring

Track progress and provide guidance through Omnara

Two-way Communication

Respond to Claude’s questions from anywhere

Quick Start

1

Add GitHub Action

Create .github/workflows/omnara.yml:
name: Omnara Claude Code
on:
  repository_dispatch:
    types: [omnara-trigger]

jobs:
  claude:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Run Claude Code
        uses: omnara-ai/claude-code-action@v1
        with:
          api-key: ${{ secrets.OMNARA_API_KEY }}
          prompt: ${{ github.event.client_payload.prompt }}
          permission-mode: acceptEdits
2

Configure Dashboard

  1. Go to Settings → Integrations in your dashboard
  2. Add GitHub Actions integration
  3. Enter repository name (e.g., owner/repo)
  4. Add GitHub token with repo scope
3

Trigger from Dashboard

Click “Launch Agent” and select GitHub Actions to trigger Claude Code in your repository

Configuration

Action Inputs

api-key
string
required
Omnara API key for authentication
prompt
string
Initial prompt for Claude Code
permission-mode
string
Permission handling: acceptEdits, bypassPermissions, plan, default
allowed-tools
string
Comma-separated list of allowed tools
branch
string
Branch to work on (default: creates new branch)

Required Secrets

Add these to your repository secrets:
OMNARA_API_KEY  # From omnara.com/dashboard
GITHUB_TOKEN    # Automatically provided by GitHub Actions

Use Cases

Automated Code Reviews

Trigger Claude to review PRs and suggest improvements

Bug Fixes

Have Claude investigate and fix reported issues

Refactoring

Request code refactoring or modernization

Documentation

Generate or update documentation automatically

Example Workflows

On Issue Comment

name: Claude Code on Demand
on:
  issue_comment:
    types: [created]

jobs:
  claude:
    if: contains(github.event.comment.body, '/claude')
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Extract Command
        id: command
        run: |
          COMMAND=$(echo "${{ github.event.comment.body }}" | sed 's/\/claude //')
          echo "prompt=$COMMAND" >> $GITHUB_OUTPUT

      - name: Run Claude
        uses: omnara-ai/claude-code-action@v1
        with:
          api-key: ${{ secrets.OMNARA_API_KEY }}
          prompt: ${{ steps.command.outputs.prompt }}

Scheduled Code Maintenance

name: Weekly Maintenance
on:
  schedule:
    - cron: '0 0 * * 0'  # Every Sunday

jobs:
  maintenance:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Run Maintenance
        uses: omnara-ai/claude-code-action@v1
        with:
          api-key: ${{ secrets.OMNARA_API_KEY }}
          prompt: "Update dependencies and fix any linting issues"
          permission-mode: acceptEdits

Documentation

For complete setup instructions and advanced configuration, see the GitHub Actions integration guide in the repository:

View GitHub Actions Integration Guide

Detailed setup, examples, and troubleshooting