Skip to content
/ servy Public

Turn Any App into a Native Windows Service — Modern Open-Source Alternative to NSSM, WinSW, AlwaysUp & FireDaemon

License

Notifications You must be signed in to change notification settings

aelassas/servy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

build test codecov winget choco bump-version

Servy

Watch Demo on YouTube

Servy

Servy lets you run any app as a native Windows service with full control over working directory, startup type, process priority, logging, health checks, environment variables, dependencies, pre-launch and post-launch hooks, and parameters. A modern open-source alternative to NSSM, WinSW, AlwaysUp, and FireDaemon.

Servy offers a GUI, a CLI, and a PowerShell module, allowing you to create, configure, and manage Windows services either interactively or through scripts and CI/CD pipelines. Additionally, it provides a Manager interface for quickly monitoring and managing all installed services in real time.

If you've ever struggled with the limitations of the built-in sc tool or found NSSM lacking in features or UI, Servy might be exactly what you need. It solves a common limitation of Windows services by allowing you to set a custom working directory. The built-in sc tool only works with applications specifically designed to run as Windows services and always uses C:\Windows\System32 with no way to change it. This can break apps that depend on relative paths, configuration files, or local assets. Servy lets you run any app as a service and define the startup directory explicitly, ensuring it behaves exactly as if launched from a shortcut or command prompt.

Servy continuously monitors your app, restarting it automatically if it crashes, hangs, or stops. It is perfect for keeping non-service apps running in the background and ensuring they start automatically at system boot without having to rewrite them as services. Use it to run Node.js, Python, .NET, Java, Go, Rust, PHP, or Ruby applications; keep web servers, background workers, sync tools, or daemons alive after reboots; and automate task runners, schedulers, or scripts in production with built-in health checks, logging, and restart policies.

Getting Started

You have two options to install Servy. Download and install manually or use a package manager such as WinGet, Chocolatey, or Scoop.

Make sure you have WinGet, Chocolatey, or Scoop installed.

Run one of the following commands as administrator from Command Prompt or PowerShell:

WinGet

winget install servy

Chocolatey

choco install -y servy

Scoop

scoop bucket add extras
scoop install servy

Quick Links

Features

  • Clean, simple UI
  • Monitor and manage all installed services with Servy Manager
  • Real-time CPU and RAM usage tracking for installed services
  • CLI and PowerShell module for full scripting and automated deployments
  • Run any executable as a Windows service
  • Set service name, description, startup type, priority, working directory, environment variables, dependencies, and parameters
  • Environment variable expansion supported in both environment variables and process parameters
  • Run services as Local System, local user, domain account, or DOMAIN\gMSA$ for Group Managed Service Accounts
  • Redirect stdout/stderr to log files with automatic size-based rotation
  • Run pre-launch hook before starting the service, with retries, timeout, logging and failure handling
  • Run post-launch hook after the application starts successfully
  • Prevent orphaned/zombie processes with improved lifecycle management and ensuring resource cleanup
  • Health checks and automatic service recovery
  • Browse and search logs by level, date, and keyword for faster troubleshooting from Servy Manager
  • Export/Import service configurations
  • Service Event Notification alerts on service failures via Windows notifications and email
  • Compatible with Windows 7–11 x64 and Windows Server editions

Roadmap

For the full project roadmap, see ROADMAP.md.

Support & Contributing

If this project helped you, saved you time, or inspired you in any way, please consider supporting its future growth and maintenance. You can show your support by starring the repository to show your appreciation and increase visibility, sharing the project with colleagues, communities, or on social media, or by making a donation. Your contributions help keep Servy alive, improving, and accessible to everyone. You can donate through GitHub Sponsors (one-time or monthly), PayPal, or Buy Me a Coffee.

Open-source software requires time, effort, and resources to maintain. Every contribution, big or small, makes a difference and motivates continued work on features, bug fixes, and new ideas.

If you have suggestions, issues, or would like to contribute, feel free to open an issue or submit a pull request.

Stats for Nerds

Lines Of Code GitHub Downloads (all assets, all releases)

License

Servy is MIT licensed.

Acknowledgements

This project is supported by:

JetBrains

About

Turn Any App into a Native Windows Service — Modern Open-Source Alternative to NSSM, WinSW, AlwaysUp & FireDaemon

Topics

Resources

License

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •