Skip to content

macOS: support netclaw daemon install via launchd LaunchAgent #1015

@Aaronontheweb

Description

@Aaronontheweb

Follow-up to #1013 (macOS support).

netclaw daemon install / netclaw daemon uninstall are currently Linux-only (systemd). On macOS, DaemonManager.InstallAsync() / UninstallAsync() (src/Netclaw.Cli/Daemon/DaemonManager.cs) return early with a "Linux-only" message, so Mac users can run the daemon manually with netclaw daemon start but cannot register it as an auto-starting background service.

Proposed work

Add a macOS branch to DaemonManager that generates a launchd LaunchAgent at ~/Library/LaunchAgents/com.stannardlabs.netclaw.plist with RunAtLoad and KeepAlive, loaded/unloaded via launchctl. docs/spec/SPEC-011-daemon-architecture.md already describes the intended design.

Context

Deferred from the macOS install-support PR, which ships osx-arm64 binaries and fixes the install script but leaves daemon service registration as manual-start (netclaw daemon start) on macOS.

Metadata

Metadata

Assignees

No one assigned

    Labels

    platform:macosmacOS-specific issues and support

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions