What’s New
In this release, we’ve added two major features:
- Markdown Reports: Render markdown files directly on the workflow and job pages.
- Git-Agnostic Integration: Connect any Git server via a simple push-hook script.
For more details on other changes, head over to the changelog.
📋 Markdown Reports
The new Reports tab allows you to create rich, custom markdown reports to enhance and expand the UI of your job and workflow pages. This feature helps you add tailored visualizations, summaries, and detailed information without leaving Semaphore, making it easier to communicate build results and pipeline insights.
- New “Reports” tab: View
.semaphore/REPORT.md
files directly in the workflow or job pages, fully rendered for easy reading. - Mermaid.js support: Visualize your pipeline with dynamic charts and diagrams using Mermaid.js.
- Easily generate reports: The test-results CLI has been expanded to help you generate basic job reports quickly.
- Fully customizable: Add test results, deployment notes, and other useful content to better organize and communicate your CI/CD process.
This feature helps teams present their pipeline results in a more meaningful way, making it easier to share insights and keep everyone on the same page.

🛠️ The test-results
CLI Update
The test-results CLI has been updated with two new commands, making it even easier to generate detailed, insightful reports directly from your jobs.
test-results command-metrics REPORT.md
: Generates a timeline chart showing the execution time for each command in your job, and appends it to your report for a clear, visual representation of your job’s performance.test-results resource-metrics REPORT.md
: For teams using Semaphore Cloud machines, this command pulls resource usage metrics (CPU, memory, disk) and displays them as neat charts in your report.

🔗 Git-Agnostic Integration
Semaphore now supports integration with any Git server.
- What’s new: You can use a
post-receive
script to connect to any Git server, whether it’s a self-hosted Git instance, or another provider. - How it works: After configuring the script, Semaphore can automatically trigger builds from pushes to your Git server — just like it does with GitHub, Bitbucket and GitLab.
- Why it matters: This adds flexibility, so teams using custom or self-hosted Git setups can use Semaphore without switching services.
This change removes any vendor lock-in and expands the range of Git providers you can work with.

👥 External Contributor Shoutout
We’d like to give a special thanks to @colemickens from Determinate Systems for their contribution in extending and expanding our OIDC Token functionality. Your efforts helped make this release even better!
If you are a Nix fan, be sure to check out Determinate Systems.
🔮 What’s Coming in v1.3
In the upcoming v1.3 release, we’ll be focusing on both improving the user experience and making it easier to contribute to Semaphore.
- Branch Page & Workflow List UX Improvements: We’ll be enhancing navigation and pagination, along with adding useful filters like a datetime filter to help you quickly find specific workflows from the past.
- Contributor Experience: We’re working on improving how contributors interact with Semaphore. This includes:
- Better documentation of our architecture and services to help you understand how everything fits together.
- Expanded contribution guide with more details on how to get involved.
- Local testing solution: We’re investigating ways to allow you to test Semaphore changes locally before pushing them.
These updates aim to make Semaphore even easier to use and contribute to, whether you’re managing workflows or helping build the platform itself.
The post Semaphore v1.2 Release Roundup: Reports and Git Agnostic appeared first on Semaphore.