hermes-s6-container-supervision

Modify and supervise Hermes container services via s6-overlay and Docker.

Updated May 4, 2026
One-click install
npx skills add https://github.com/Plaidmustache/hermes-nulab --skill hermes-s6-container-supervision-plaidmustache
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: hermes-s6-container-supervision
Source: https://github.com/Plaidmustache/hermes-nulab/tree/main/skills/software-development/hermes-s6-container-supervision
Command: npx skills add https://github.com/Plaidmustache/hermes-nulab --skill hermes-s6-container-supervision-plaidmustache

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Hermes container environments often suffer from brittle or opaque supervision of services inside Docker images. This skill helps you modify, debug, or extend the s6-overlay supervision tree to reliably start, monitor, and gateway-aggregate per-profile gateways, aligning with Architecture B patterns.

Core Features & Use Cases

  • Understand and modify cont-init.d boot scripts (e.g., 01-hermes-setup, 02-reconcile-profiles) and how they seed or reconcile profiles.
  • Manage per-profile gateway supervision under /run/service with s6, including start/stop/restart workflows and runtime registration.
  • Inspect and adapt the s6-rc.d static services and dashboard integration to ensure predictable container startup behavior.
  • Explain why Architecture B (CMD as main program) is used and how it interacts with the Hermes runtime.

Quick Start

Review the s6-overlay setup in the Hermes Docker image and implement a targeted change to add or troubleshoot a supervised gateway.

Frequently Asked Questions about hermes-s6-container-supervision

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

FAQPage Schema
How do I supervise Docker container services using s6-overlay?

s6-overlay supervises Docker container services by running cont-init.d boot scripts to seed profiles and managing per-profile gateway supervision under /run/service, ensuring predictable startup behavior and runtime registration.

How do I reconcile per-profile gateways during container boot with s6?

Reconciling per-profile gateways during container boot with s6 involves executing boot scripts like 02-reconcile-profiles to seed and configure profiles, then registering and supervising those gateways under /run/service for runtime management.

What is the Architecture B main-program pattern in Docker containers?

The Architecture B main-program pattern in Docker containers uses the CMD instruction as the main program, interacting with the Hermes runtime and s6-overlay to ensure the container's primary process is directly supervised rather than relying on a wrapper entrypoint.

Can I use s6-rc.d static services for predictable container startup behavior?

Yes, you can use s6-rc.d static services to ensure predictable container startup behavior by inspecting and adapting the service definitions and dashboard integration to control the initialization sequence and dependency resolution during boot.

Why does my Hermes container gateway fail to start under s6 supervision?

A Hermes container gateway failing to start under s6 supervision often points to issues within cont-init.d boot scripts or stage2-hook.sh, requiring you to inspect the s6-overlay setup and troubleshoot the targeted gateway dispatch and registration logic.