Skip to content

Projects & Services

Concepts

Project

A project groups related services together (e.g. an entire application stack). Projects are organizational containers — they have no state of their own.

Service

A service is a process managed by Runeya. Each service has:

  • A command to execute
  • A working directory
  • Environment variables
  • Streaming logs
  • An assigned agent (local by default)

Creating a Project

  1. Click "+ Project" in the left sidebar
  2. Give it a name (e.g. backend, frontend, infra)
  3. The project appears in the list

Creating a Service

Inside a project, click "+ Service" and fill in:

General Tab

FieldDescriptionExample
NameDisplay identifierapi, worker
DescriptionOptional notesMain REST API
CommandExecuted commandnode dist/index.js
DirectoryWorking path/home/user/my-app
ShellEnable shell modefalse (recommended)

Shell mode

Enable shell: true only if your command requires redirections (|, >, &&). Prefer decomposing into sub-commands or scripts.

Environment Tab

Attach environments to the service to inject variables. See Environments & Variables.

Logs Tab

Configure log parsers applied to the service's output stream. See Logs & Parsers.

Controlling a Service

ActionDescription
StartStart the process
StopGraceful stop (SIGTERM → 10s → SIGKILL)
🔄 RestartStop + Start
🗑 DeleteRemove configuration (doesn't touch your files)

Service States

stopped ──► starting ──► running
   ▲                        │
   └────────── stopping ◄───┘

               stopped / error
StateColorDescription
stoppedGreyProcess stopped
startingYellowStarting up
runningGreenProcess active
stoppingOrangeGraceful shutdown in progress
errorRedProcess exited with error code

Stable Identifiers

A service's ID is stable across Runeya restarts. It serves as processId on the agent side — this 1:1 mapping ensures a service keeps its log history and configuration even after a server restart.

Released under the MIT License.