How to Auto-Generate Demo Videos on Every GitHub Release
Learn how to set up a GitHub Action that automatically generates a promotional video every time you publish a release. Complete setup guide with examples.
Why Automate Video Generation for Releases?
Every release is a marketing opportunity. When you ship a new version, potential users evaluate your project based on its changelog, README, and any media you provide. A demo video immediately communicates what changed and why it matters — far more effectively than a bullet list of commits. But creating videos manually for every release is unsustainable. Most teams skip it entirely, losing a chance to attract users at the exact moment they have something new to show. Automation solves this by making video generation a zero-effort part of your CI/CD pipeline.
How It Works: RepoClip + GitHub Actions
RepoClip offers a Public API and an official GitHub Action that integrates directly into your workflow. When you publish a GitHub release, the Action triggers automatically: it sends your repository URL to RepoClip's API, the AI analyzes your code and generates a script, creates visuals and narration, renders the video, and returns the result. The entire process runs in the background while you focus on shipping. No manual steps, no video editing, no context switching.
Step 1: Get Your API Key
Sign up at repoclip.io if you haven't already, then go to Dashboard, then Settings. Click Generate API Key and copy the key immediately — it is only shown once. This key authenticates your GitHub Action with RepoClip's API. Your API usage shares the same credit balance as the web interface, so any plan works.
Step 2: Add the Secret to Your Repository
In your GitHub repository, go to Settings, then Secrets and variables, then Actions. Click New repository secret. Name it REPOCLIP_API_KEY and paste the key you copied. This keeps your API key secure and accessible to your workflow without exposing it in code.
Step 3: Create the Workflow
Create a file at .github/workflows/repoclip.yml in your repository. Here is a minimal example that generates a video on every release and adds the link to the release notes: name: Generate Demo Video on: release: types: [published] jobs: video: runs-on: ubuntu-latest steps: - uses: repoclip/generate-video@v1 id: video with: api-key: ${{ secrets.REPOCLIP_API_KEY }} - name: Add video to release if: steps.video.outputs.status == 'completed' uses: actions/github-script@v7 with: script: | const body = context.payload.release.body || ''; github.rest.repos.updateRelease({ owner: context.repo.owner, repo: context.repo.repo, release_id: context.payload.release.id, body: body + '\n\n---\n[Watch demo video](' + '${{ steps.video.outputs.share-url }}' + ')' }); That is the entire setup. Commit this file and your next release will automatically get a demo video.
Customization Options
The GitHub Action supports several options to tailor the output. Set mode to video_short for AI-generated video clips instead of static images — this produces more cinematic results at 40 credits per video. Use the prompt input to focus on specific features, for example: Highlight the new features in this release. Change aspect-ratio to 9:16 for social media stories or 1:1 for square posts. Set visual-style to minimal, realistic, or vibrant depending on your brand. Enable bgm for background music. All options are documented at repoclip.io/docs/api.
Advanced: Using the API Directly
If you need more control than the GitHub Action provides, you can call the RepoClip API directly from any CI/CD system. The API has three endpoints: POST /api/v1/generate starts a video generation and returns a project ID, GET /api/v1/projects/:id polls for status and retrieves the result when completed, and GET /api/v1/credits checks your remaining balance. This works with GitLab CI, Jenkins, CircleCI, or any system that can make HTTP requests. See the full API documentation at repoclip.io/docs/api for request and response examples.
Credit Costs and Planning
Each video generation consumes credits from your RepoClip account. Image mode costs 10 credits, Video Short costs 40 credits, and Video Long costs 300 credits. Background music adds 20 credits. If you release weekly with Image mode, that is 40 credits per month — well within the Starter plan's 50 monthly credits. For Video Short on every release, the Pro plan's 200 credits covers about 5 releases per month. You can also buy one-time Credit Packs at $5 for 40 credits if you need occasional top-ups.
What Your Release Page Looks Like
After the workflow runs, your GitHub release page will have a Watch demo video link appended to the release notes. Anyone browsing your releases — potential users, contributors, or evaluators — can click through to see a professional video showcasing your project. This is especially powerful for open source projects where first impressions drive adoption. The video is hosted on RepoClip with a shareable URL, so it works anywhere: README files, social media, emails, or documentation.
Getting Started in 5 Minutes
To recap: generate an API key at repoclip.io/dashboard/settings, add it as a repository secret named REPOCLIP_API_KEY, create the workflow YAML file, and push. Your next release will automatically generate a demo video. The GitHub Action is open source at github.com/repoclip/generate-video and free to use with any RepoClip plan. If you want to test it before your next real release, create a draft release to trigger the workflow manually.
Ready to create your demo video?
RepoClip is an AI product demo video maker that turns your GitHub repo into a professional video in minutes.