cihub

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 16, 2025 License: MPL-2.0

README ΒΆ

CIHub

Supercharged GitHub Actions Runners
Run GitHub Actions on your own hardware β€” fast, secure, and fully isolated.
Visit Website β€’ Report Issue β€’ Discussions

⚠️ This project is under heavy development. The API, configuration, and behavior may change significantly. Use at your own risk and expect breaking changes between releases.


πŸš€ What Is CIHub?

CIHub is an open-source, self-hosted GitHub Actions runner orchestrator that delivers enterprise-grade isolation, speed, and control.

Unlike traditional shared runners, CIHub launches dedicated micro-VMs (using Firecracker) for each workflow job β€” ensuring complete isolation, predictable performance, and security.

Perfect for teams that need:

  • πŸ”’ Security-first CI/CD – Each job runs in its own sandboxed environment
  • ⚑ Predictable performance – No resource contention between jobs
  • πŸ’° Cost efficiency – Run CI on your own infrastructure instead of paying per-minute
  • πŸŽ›οΈ Complete control – Full visibility and customization of your CI environment


✨ Key Features

πŸ” Isolation by Design

Every job runs in its own ephemeral Firecracker micro-VM. No shared state, no side effects β€” just a clean sandbox.

πŸƒ Lightning-Fast Execution

Micro-VMs start in milliseconds. Combined with your hardware, jobs run significantly faster than cloud runners.

πŸ”Œ Zero-Friction Integration

Drop-in replacement for GitHub Actions runners. Use standard workflow syntax with simple labels:

jobs:
  test:
    runs-on: cihub-2cpu-4gb-amd64

πŸ“Š Full Observability

Built-in dashboard showing real-time job metrics, node health, runner status, and detailed logs.

πŸ“ˆ Infinitely Scalable

Start with a single machine or grow to a distributed cluster. Orchestrator handles load balancing and scheduling.

πŸ’» Multi-Architecture Support

Support for both amd64 and arm64 architectures with automatic platform detection.


πŸ—οΈ Architecture

CIHub consists of two main components:

  1. Server – Central coordinator that receives GitHub webhooks, manages runner assignment, handles job scheduling, exposes REST APIs, and serves the management UI
  2. Agent – Runs on each worker node to manage local Firecracker micro-VMs and execute assigned jobs

Both components communicate via REST APIs. The server handles all orchestration logic, while agents operate autonomously on their assigned nodes.


πŸ“š Documentation


🧾 License

Licensed under the Mozilla Public License 2.0


πŸ›‘οΈ Security

We take security seriously. If you discover a vulnerability:

Please report it responsibly to contact@cihub.io instead of using public issues.

We will acknowledge receipt within 24 hours and provide updates as fixes are developed.


🀝 Contributing

We welcome contributions! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

See CONTRIBUTING.md for detailed guidelines.


πŸ“ž Support & Community

Directories ΒΆ

Path Synopsis
cmd
cihub-agent command
cihub-server command
handler
api
rpc
web
hook
job
Package label provides dynamic label parsing for GitHub Actions runner specifications.
Package label provides dynamic label parsing for GitHub Actions runner specifications.
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
service
store
job
web

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL