Files
MATTERMOST_OPENCLAW_LIVESTATUS/deploy/status-watcher.service
sol 835faa0eab feat(phase5): polish + deployment
- skill/SKILL.md: rewritten to 9 lines — 'status is automatic'
- deploy-to-agents.sh: no AGENTS.md injection; deploys hook + npm install
- install.sh: clean install flow; prints required env vars
- deploy/status-watcher.service: systemd unit file
- deploy/Dockerfile: containerized deployment (node:22-alpine)
- src/live-status.js: deprecation warning + start-watcher/stop-watcher pass-through
- README.md: full docs (architecture, install, config, upgrade guide, troubleshooting)
- make check: 0 errors, 0 format issues
- npm test: 59 unit + 36 integration = 95 tests passing
2026-03-07 17:45:22 +00:00

37 lines
879 B
Desktop File

[Unit]
Description=Live Status v4 - OpenClaw session watcher daemon
Documentation=https://git.eeqj.de/ROOH/MATTERMOST_OPENCLAW_LIVESTATUS
After=network.target
[Service]
Type=simple
User=node
WorkingDirectory=/opt/openclaw-live-status
# Load environment variables from file
EnvironmentFile=/etc/status-watcher.env
# Start the watcher daemon directly (not via CLI wrapper)
ExecStart=/usr/bin/node /opt/openclaw-live-status/src/watcher-manager.js start
# Graceful shutdown — watcher handles SIGTERM (marks boxes interrupted, flushes)
ExecStop=/bin/kill -TERM $MAINPID
# Restart policy
Restart=on-failure
RestartSec=5s
StartLimitBurst=3
StartLimitIntervalSec=60s
# Logging — output goes to journald
StandardOutput=journal
StandardError=journal
SyslogIdentifier=status-watcher
# Security hardening
NoNewPrivileges=true
PrivateTmp=true
[Install]
WantedBy=multi-user.target