Skip to main content

GitHub App

Autodock turns your GitHub PR page into a command center for a preview environment. From spinning up environments to automated testing to leaving artifacts, the GitHub App makes sure your PR is on-spec and bug-free while giving you full SSH access to the dev boxes that back these environments.
No configuration required. Install the app, and Autodock posts a comment on every PR with options to spin up a preview. Claude analyzes your changes and handles the rest.

Quick Start

  1. Install the GitHub App at github.com/apps/autodock-preview
  2. Link your account - You’ll be redirected to Autodock to connect the installation
  3. Open a PR - Autodock automatically posts a comment with preview options
That’s it. No YAML files, no secrets, no workflow configuration.

How It Works

When you open a pull request:
  1. Autodock analyzes your PR to determine if a preview environment would be helpful
  2. If recommended, you click to spin up a preview environment
  3. Claude Code clones your repo, installs dependencies, builds, and runs setup
  4. The PR comment updates in real-time with progress and connection details
  5. Push more commits and changes sync automatically
  6. Close the PR and the environment is destroyed

PR Comment States

The Autodock PR comment acts as a live dashboard for your preview environment. Here are all the possible states you’ll encounter:

Setup Required

When: The GitHub App is installed but hasn’t been linked to an Autodock account yet. What you see: A message prompting you to complete setup by linking the installation to your Autodock account. Once linked, preview environments will be created automatically for future PRs. Action: Click the setup link and sign in or create an Autodock account.

Analyzing

When: A PR is opened and Autodock is analyzing the changes. What you see: Claude is reviewing the PR to determine if a preview environment would be helpful. This typically takes a few seconds. Action: Wait for analysis to complete.
When: Claude analyzed the PR and determined a preview isn’t needed. What you see: An explanation of why a preview isn’t recommended (e.g., documentation-only changes, config tweaks). A button to spin up a preview anyway if you want one. Action: Click “Spin up environment” if you still want a preview.

Trigger Posted

When: Claude recommends a preview and is waiting for you to trigger it. What you see: A button to spin up the preview environment. Options for different setup modes. Action: Click the button to start provisioning.

Claiming Environment

When: Autodock is claiming a VM from the warm pool. What you see: Progress indicators showing the setup stage. Once claimed, MCP and SSH connection commands appear (you can connect immediately even while setup continues). Action: Optionally connect early via MCP or SSH to watch setup in real-time.

Cloning Repository

When: The environment is cloning your PR branch. What you see: Progress indicator updated to show cloning is in progress. Connection info available. Action: Wait for cloning to complete, or connect to watch.

Installing Dependencies

When: Claude is installing dependencies (npm install, pip install, etc.). What you see: Progress indicator showing installation step. Connection info available. Action: Wait for installation to complete.

Building Project

When: Claude is building your project (next build, webpack, etc.). What you see: Progress indicator showing build step. Connection info available. Action: Wait for build to complete.

Running Setup

When: Claude is running final setup (starting dev servers, exposing ports, etc.). What you see: Progress indicator showing setup step. Connection info available. Action: Wait for setup to complete.

Ready

When: Your preview environment is fully operational. What you see:
  • Preview URL (if a web server is exposed)
  • MCP connection command
  • SSH access details
  • Setup summary from Claude
  • Instructions for running tests via /autodock-test comments
Action: Click the preview URL, connect via MCP, or run tests.

Waiting for Secrets

When: Your project requires environment variables that weren’t provided. What you see:
  • List of missing environment variables
  • A curl command to upload your local .env files securely
  • Instructions for running the upload command
Action: Run the provided curl command in your project directory. Setup continues automatically after upload.

Syncing

When: You pushed new commits and changes are syncing to the environment. What you see: Progress indicator showing sync is in progress. Environment remains accessible. Action: Wait for sync to complete. You can keep using the environment.

Running Automated Tests

When: Automated tests are running against your preview. What you see: A table with test checks (page load, console errors, network, auth test) showing pending status. Action: Wait for tests to complete.

Automated Tests Complete

When: Automated tests have finished. What you see:
  • Test results table with pass/fail status
  • Page load time
  • Console error count
  • Network failure count
  • Auth test result
  • Screenshots (if captured)
  • Button to re-run tests
Action: Review results. Click re-run if needed.

Running User Test

When: You triggered a test via /autodock-test <prompt> comment. What you see:
  • The test prompt you provided
  • Live progress of test steps
  • Status for each step (pending, running, passed, failed)
Action: Wait for the test to complete.

User Test Complete

When: A user-triggered test has finished. What you see:
  • Test results with step-by-step breakdown
  • Screenshots captured during the test
  • Summary of what happened
  • Previous test results (up to 3 runs)
  • Button to re-run the last test
Action: Review results. Run additional tests as needed.

Failed

When: Setup encountered an error and couldn’t complete. What you see:
  • Error message explaining what went wrong
  • Exit code (if applicable)
  • Link to full session log
Action: Review the error and session log. Fix the issue and push a new commit, or use MCP/SSH to debug manually.

Destroyed

When: The environment has been destroyed (typically when PR is closed). What you see: Confirmation that the environment is destroyed. Action: No action needed. Open a new PR to get a new preview.

Running Tests

Once your environment is ready, you can run tests by commenting on the PR:
/autodock-test Navigate to the homepage and verify it loads correctly
Claude will:
  1. Open a browser in the environment
  2. Execute the test steps you described
  3. Capture screenshots at each step
  4. Report results back in the PR comment

Example Test Prompts

  • /autodock-test Test the login flow with valid credentials
  • /autodock-test Click the sign up button and fill out the registration form
  • /autodock-test Navigate to /dashboard and verify user data displays
  • /autodock-test Add an item to the cart and proceed to checkout

Troubleshooting

Environment is stuck provisioning Check the session log link in the PR comment. You can also connect via MCP or SSH to see what’s happening in real-time. Secrets aren’t being recognized Make sure your .env files are in the project directory when you run the upload command. The script searches for all .env* files. Preview URL returns 502 Your dev server might not be running or might be bound to localhost. Autodock exposes ports bound to 0.0.0.0. Check if the server is running via SSH. GitHub App not posting comments Verify the app is installed for your repository and linked to an Autodock account. Check the installation settings at github.com/settings/installations.