Skip to content

getlimen/limentinus

Repository files navigation

Limentinus

Latin: "threshold guardian" — minor Roman deity, guardian-spirit of the threshold (limen) itself.

Limentinus is the universal node agent for Limen. Installed on every managed host, it handles enrollment, WireGuard tunnel setup, Docker deployments, and proxy orchestration.

Quick start

docker compose up -d

Required environment variables:

  • LIMEN_CENTRAL_URL — WebSocket URL to Limen (e.g., ws://limen.example.com:8080)
  • LIMEN_PROVISIONING_KEY — one-time key from Limen admin UI
  • LIMEN_ROLES — comma-separated: docker, proxy, or both

Features

  • Auto-enrollment — provisions identity, receives WireGuard config, connects tunnel
  • Docker deploy pipeline — explicit stages: pull → capture old → start new → health check → finalize (or rollback)
  • WireGuard tunnel — userspace wg-quick on the agent side
  • Persistent WebSocket — auto-reconnecting control channel to Limen
  • Role-baseddocker role enables container management, proxy role brings up Ostiarius

Tech stack

.NET 10 / ASP.NET Core Worker • Docker.DotNet • wireguard-go (userspace)

Architecture

See the Limen design spec.

License

Apache 2.0

About

Universal node agent for Limen — C# NativeAOT + embedded wireguard-go. The guardian of each threshold.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages