> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tensorlake.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Run GitHub Actions on Tensorlake

> Connect your GitHub account and run workflow jobs on Tensorlake.

Run your GitHub Actions jobs on Tensorlake by connecting a GitHub account to your project and changing `runs-on`. Each job gets an isolated Linux runner, with persistent repository caches available across runs.

## Connect your repositories

You need a Tensorlake project you can administer and permission to install a GitHub App for your personal account or organization.

<Steps>
  <Step title="Open your project">
    Open the [Tensorlake dashboard](https://cloud.tensorlake.ai), select your project, and open **GitHub Actions**.
  </Step>

  <Step title="Connect GitHub">
    Click **Connect GitHub**, choose your personal account or organization, and select the repositories that can use Tensorlake runners. Install the **Tensorlake GitHub Actions** App and approve any requested permissions.

    GitHub returns you to your project and connects the installation automatically. If your organization requires approval, ask an owner to approve the installation, then choose **Use existing installation** in your project’s connections view.
  </Step>

  <Step title="Choose a runner">
    Set `runs-on` in an existing job to a [Tensorlake runner label](/github-actions/runners):

    ```yaml theme={null}
    runs-on: tensorlake-medium
    ```

    You don’t need the `self-hosted` label or a Tensorlake API key in your workflow.
  </Step>
</Steps>

Each GitHub installation connects to one Tensorlake project. You can connect multiple installations to the same project.

## Run your first job

Save this workflow as `.github/workflows/tensorlake.yml` on your repository’s default branch. In GitHub’s **Actions** tab, select **Tensorlake runner** and click **Run workflow**.

```yaml theme={null}
name: Tensorlake runner
on:
  workflow_dispatch:
permissions:
  contents: read
jobs:
  build:
    runs-on: tensorlake-small
    timeout-minutes: 10
    steps:
      - uses: actions/checkout@v6
      - run: |
          uname -m
          docker version
```

Open **Jobs** in your project’s **GitHub Actions** view to inspect status, runner resources, timings, and cache activity. Open a job in GitHub for its workflow logs and artifacts.

Use the [language workflow examples](/github-actions/workflows) to build your project and [configure persistent caches](/github-actions/caching).
