services

Create and install systemd service unit files for daemons and one-shot jobs.

Updated Apr 10, 2026
One-click install
npx skills add https://github.com/theslashdojo/dojo --skill services-theslashdojo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: services
Source: https://github.com/theslashdojo/dojo/tree/main/nodes/systemd/services
Command: npx skills add https://github.com/theslashdojo/dojo --skill services-theslashdojo

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

Turn a raw command or script into a managed Linux service so processes survive terminal exit, gain restart policies, environment management, and boot or login activation without manual systemd fiddling.

Core Features & Use Cases

  • Unit file authoring and installation: Render complete service unit files with Description, Type, ExecStart, WorkingDirectory, User/Group, Environment or EnvironmentFile, and Install settings.
  • Scope and lifecycle management: Support both system and per-user managers, verify units with systemd-analyze, reload the manager, and enable or start units as needed.
  • Operational safety: Use drop-ins instead of editing vendor files, verify syntax before activation, and report enabled and active states after installation.
  • Use cases: Deploy a Node or Python web service as a daemon, convert a shell script into a oneshot job, or prepare a worker with restart-on-failure and environment isolation.

Quick Start

Use the services skill to install and enable a system service named my-app with ExecStart /usr/bin/node /srv/my-app/server.js and start it.

Frequently Asked Questions about services

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a systemd service unit file for a long-running daemon?

To create a systemd service unit file, define Description, Type, ExecStart, WorkingDirectory, and Install WantedBy entries. This skill renders complete unit files with restart policies and environment configuration, then verifies syntax with systemd-analyze before reloading the manager.

How do I convert a shell script into a systemd oneshot job?

Converting a shell script into a systemd oneshot job requires setting the unit Type to oneshot and specifying ExecStart. This skill generates the appropriate unit file with boot or login activation, verifies it with systemd-analyze, and optionally enables or starts the scheduled task.

Can I use systemd to manage per-user services and workers?

Yes, you can manage per-user services and workers using systemd per-user managers. This skill supports both system and per-user scopes, applying environment isolation and restart-on-failure policies, then reloading the correct manager and reporting active states.

What is the best way to configure environment variables and restart policies for a Linux daemon?

The best way to configure environment variables and restart policies for a Linux daemon is through a systemd service unit file. This skill applies Environment or EnvironmentFile directives and restart policies directly within the unit, verifying syntax before activation.

Does systemd configuration support drop-in files instead of editing vendor unit files?

Yes, systemd configuration supports drop-in files to override or extend vendor unit files safely. This skill uses drop-ins instead of editing vendor files directly, ensuring operational safety by verifying syntax with systemd-analyze before reloading the manager.

Why does my systemd service fail to start after installation?

A systemd service may fail to start if the unit file has syntax errors or missing ExecStart paths. This skill prevents this by verifying units with systemd-analyze, applying correct Type and WorkingDirectory settings, and reloading the manager before enabling or starting the service.