Modern UI and powerful API for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools. https://semaphoreui.com
  • JavaScript 44.1%
  • Go 39.9%
  • Vue 13.9%
  • Shell 0.8%
  • SCSS 0.5%
  • Other 0.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Denis Gukov fc21c63b26
Merge pull request #4374 from semaphoreui/renovate/go-github.com-go-jose-go-jose-v4-vulnerability
chore(deps): update module github.com/go-jose/go-jose/v4 to v4.1.6 [security]
2026-11-10 12:08:05 +05:00
.claude agents: remove unseless skill 2026-10-22 19:25:17 +05:00
.devcontainer Add Python feature to devcontainer configuration 2026-10-26 20:56:49 +05:00
.dredd feat(workflows): gate grant writes by plan 2026-11-01 23:44:11 +08:00
.github Merge pull request #4412 from semaphoreui/fix/govulncheck1 2026-11-09 04:06:50 +05:00
.vscode chore: launch config 2026-10-19 09:59:06 +05:00
AGENTS docs: update config comments 2026-11-06 13:45:11 +05:00
api Merge pull request #4420 from semaphoreui/fix/GHSA-q9cq-8j9q-r93m 2026-11-10 12:00:09 +05:00
cli feat(runners): cache for runners 2026-11-08 15:53:57 +05:00
db Merge pull request #4416 from semaphoreui/fix/ghsa-ffp6-w57q-758q-develop 2026-11-10 02:46:57 +05:00
db_lib test(secrets): add tests for string type 2026-10-26 20:59:14 +05:00
deployment Merge pull request #4370 from semaphoreui/copilot/fix-deploy-beta-job 2026-10-28 16:33:27 +05:00
examples feat(auth): link LDAP/OIDC logins via external identity instead of email matching (#4025) 2026-07-14 10:14:42 +05:00
hook_helpers fix(be): move goodman import to separate package to fix tests 2021-08-27 11:58:31 +05:00
pkg Feat/client cli (#4383) 2026-10-31 01:16:04 +05:00
pro chore(deps): update module github.com/go-jose/go-jose/v4 to v4.1.6 [security] 2026-11-10 07:05:48 +00:00
pro_interfaces feat(pro): add SyncGroupRoles to role sync 2026-11-04 19:57:26 +08:00
services feat(runners): cache for runners 2026-11-08 15:53:57 +05:00
tools docs: update config comments 2026-11-06 13:45:11 +05:00
util docs: update config comments 2026-11-06 13:45:11 +05:00
web chore(deps): update dependency openai to v7.55.0 2026-11-10 07:06:12 +00:00
.codacy.yml ci: add codacy config file and exclude dredd tests 2024-09-28 16:30:39 +05:00
.cursorignore test: rename test dir 2025-12-15 21:55:33 +05:00
.dockerignore chore: add initial dockeringore config 2024-04-28 00:10:30 +02:00
.gitignore chore: remove submodules 2026-11-04 16:43:46 +05:00
.golangci.yml style: format code to pass linting. 2026-09-15 18:06:00 +05:00
.goreleaser.yml ci: add sbom to go releaer 2026-10-22 19:23:38 +05:00
AGENTS.md agents: add AGENTS.md 2026-09-08 14:35:57 +05:00
api-docs.yml docs(api): update auth_method for integrations 2026-11-05 12:38:24 +05:00
CLAUDE.md agents: refactor structure 2026-09-27 17:22:46 +05:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md 2024-09-26 23:39:36 +05:00
config.schema.yaml fix(config): quote the group search descriptions 2026-11-04 19:57:26 +08:00
CONTRIBUTING.md Feat/k8s executor (#3949) 2026-06-13 20:57:03 +05:00
go.mod Merge pull request #4371 from semaphoreui/dependabot/go_modules/github.com/go-jose/go-jose/v4-4.1.6 2026-11-10 12:04:52 +05:00
go.sum Merge pull request #4371 from semaphoreui/dependabot/go_modules/github.com/go-jose/go-jose/v4-4.1.6 2026-11-10 12:04:52 +05:00
LICENSE feat(schedule): change column order 2024-06-25 01:26:21 +05:00
package-lock.json Workflows 2026-06-14 14:45:23 +05:00
qodana.yaml feat(config): add uid to process config 2025-04-17 11:54:48 +05:00
README.md docs: add Pethost as a deployment option 2026-10-15 01:13:30 +02:00
renovate.json fix: add custommanager to renovate.json 2026-06-28 09:28:40 +02:00
SECURITY.md Update SECURITY.md 2026-11-10 03:17:55 +05:00
Taskfile.yml build(ui): build the frontend with Vite 8, test with Vitest, lint with ESLint 9 2026-10-29 22:13:33 +05:00

Semaphore UI

Modern UI for Ansible, Terraform/OpenTofu/Terragrunt, PowerShell and other DevOps tools.

Dev

responsive-ui-phone1

If your project has grown and deploying from the terminal is no longer feasible, then Semaphore UI is the tool you need.

Demo

Try Semaphore UI online

What is Semaphore UI?

Semaphore UI is a modern web interface for managing popular DevOps tools.

Semaphore UI allows you to:

  • Easily run Ansible playbooks, Terraform and OpenTofu code, as well as Bash and PowerShell scripts.
  • Receive notifications about failed tasks.
  • Control access to your deployment system.

Key Concepts

  1. Projects is a collection of related resources, configurations, and tasks.
  2. Task Templates are reusable definitions of tasks that can be executed on demand or scheduled.
  3. Task is a specific instance of a job or operation executed by Semaphore.
  4. Schedules allow you to automate task execution at specified times or intervals.
  5. Inventory is a collection of target hosts (servers, virtual machines, containers, etc.) on which tasks will be executed.
  6. Variable Group refers to a configuration context that holds sensitive information such as environment variables and secrets used by tasks during execution.

Getting Started

You can install Semaphore using the following methods:

Docker

The most popular way to install Semaphore is via Docker.

docker run -p 3000:3000 --name semaphore \
	-e SEMAPHORE_DB_DIALECT=sqlite \
	-e SEMAPHORE_ADMIN=admin \
	-e SEMAPHORE_ADMIN_PASSWORD=changeme \
	-e SEMAPHORE_ADMIN_NAME=Admin \
	-e SEMAPHORE_ADMIN_EMAIL=admin@localhost \
	-d semaphoreui/semaphore:latest

We recommend using the Container Configurator to get the ideal Docker configuration for Semaphore.

Other Installation Methods

For more installation options, visit our Installation page.

Documentation

Awesome Semaphore

A curated list of awesome things related to Semaphore UI.

Contribution

License

MIT © Denis Gukov