Documentation
Documentation
Everything you need to install RecordLoop, configure it, and understand what's happening under the hood.
Open source, MIT licensed. View source on GitHub.
Quick start
12 lines. One secret.
Drop this workflow file into your repo. That's the entire install.
name: RecordLoop
on:
pull_request:
types: [opened, synchronize, reopened]
permissions:
pull-requests: write
jobs:
recordloop:
runs-on: ubuntu-latest
if: github.event.pull_request.head.repo.full_name == github.repository
steps:
- uses: vihaanshahh/recordloop@v1
with:
openai-api-key: ${{ secrets.OPENAI_API_KEY }}Create the workflow file
Copy the YAML above into .github/workflows/recordloop.yml in your repository.
Add your OpenAI API key
Go to Settings → Secrets and variables → Actions, then add a new repository secret named OPENAI_API_KEY.
Open a pull request
RecordLoop analyzes the diff on every PR and posts a comment with AI-generated test flows. No extra config required.
How it works
From diff to video
in three stages.
PR diff
RecordLoop fetches the changed files via the GitHub API — no local checkout of the analyzer is required.
Agent loop
An LLM agent uses tools (read_file, read_diff, list_files, submit_flows) to navigate the diff and generate flows. Bounded by MAX_ITERATIONS=10, MAX_FILES_READ=30, MAX_TOTAL_INPUT_TOKENS=50,000.
Playwright replay
If a preview-url is configured, the action records each flow as an MP4 and includes the link directly in the PR comment.
Configuration
Action inputs
Every knob exposed by the RecordLoop GitHub Action. All are optional except one of the provider keys.
| Input | Required? | Default | Description |
|---|---|---|---|
| openai-api-key | conditional | — | OpenAI API key. Used by the analyzer agent loop to read the PR diff and generate flows. Required when provider=openai. |
| azure-openai-api-key | conditional | — | Azure OpenAI API key. Required when provider=azure. |
| azure-openai-endpoint | conditional | — | Azure OpenAI resource endpoint, e.g. https://my-resource.openai.azure.com. |
| azure-openai-deployment | conditional | — | Azure OpenAI deployment name (used as the model identifier). |
| provider | no | openai | "openai" (default) or "azure". |
| model | no | gpt-5.4 | Model name. Defaults to gpt-5.4. Override to gpt-4o-mini for the cheapest setup. |
| preview-url | no | — | PR preview deployment URL. If empty, the action posts planned flows but skips video recording. |
| github-token | no | ${{ github.token }} | GitHub token with pull-requests:write. Defaults to the workflow GITHUB_TOKEN. |
| python-version | no | 3.12 | Python version to install on the runner. |
Frameworks
Works with anything
that ships markup.
The universal file filter detects changed UI across 25+ frameworks.
Cost
Pay only your
OpenAI bill.
RecordLoop has no billing. You bring your own API key and pay OpenAI directly.
- Typical PR: $0.001–$0.005 with gpt-5.4 (default)
- Worst case: ~$0.10 even on reasoning models (bounded by the agent caps)
- 1,000 PRs/month: ~$2–$6
- GitHub Actions runtime: free for public repos
- No subscription, no SaaS markup, no quotas — you bring your own OpenAI key
Dry run
CI smoke tests
without a secret.
Runs the full pipeline without making an LLM call and returns a synthetic flow. Useful for wiring the action into CI as a smoke test with no secrets configured — great for forks and public preview branches.