Steroid Kit logo

Steroid_Kit

Steroid CLI›Background Daemon

Background Daemon

The daemon runs background conversation-memory sync and, when connected, polls the Flow Client Communicator (FCC) for coding-agent inference requests. Each IDE launches its own stdio MCP process; the daemon does not host or supervise that MCP server.

What Is the Daemon?

In both modes, memory sync refreshes existing indexes for registered projects every 300 seconds by default. Register/build a project first; sync does not initially index every folder. In Connected mode, the optional authenticated pull loop advertises available IDE/model capabilities, receives FCC requests, invokes an installed agent CLI and posts its response. The cloud AP engine still orchestrates the flow and executes generated MCP blocks through the reverse proxy.

Setup

IDE setup coordinates daemon registration/startup. Check the installed client with steroid daemon status and steroid doctor rather than assuming installation alone started it. Local mode does not require connected credentials for memory sync.

  • The same binary has separate CLI/TUI, mcp-server and pull-server entry modes.
  • IDE MCP communication is stdio; there is no daemon-hosted “stdio socket” to configure.
  • LLM flow steps need a connected, alive client with the selected IDE/model advertised and upstream authentication/quota available.

Platform Registration

OSService ManagerAuto-starts
macOSlaunchd; confirmed label com.steroid.pullserverInspect installed registration with diagnostics
LinuxPlatform-specific lifecycle implementationUse the CLI; verify exact unit name on the installed release
WindowsPlatform-specific lifecycle implementationUse the CLI; verify task/log details on the installed release

Logs

Confirmed macOS registration writes stdout/stderr under ~/.steroid/logs/. Do not assume a unified logging subsystem, rotation policy or identical paths on every platform.

Log file paths

macOS stdout: ~/.steroid/logs/pullserver.stdout.log
macOS stderr: ~/.steroid/logs/pullserver.stderr.log

Tail the daemon log

# Confirmed macOS paths
tail -f ~/.steroid/logs/pullserver.stdout.log ~/.steroid/logs/pullserver.stderr.log
SymptomNext check
Indexes not refreshingRegister/build the project, then check daemon status and source history
Connected authentication failureUse TUI Settings → Reconnect with the current connection string
LLM dispatch unavailableCheck client liveness, advertised IDE/model and agent authentication/quota
IDE MCP disconnectedRestart/check the IDE's independent MCP process; daemon status alone does not prove MCP health

Stopping & Starting

Use the public lifecycle commands on every platform. start --force refreshes a running daemon after state changes; there is no daemon restart subcommand.

Lifecycle commands

Start, inspect, refresh or stop

steroid daemon start
steroid daemon status
steroid daemon start --force
steroid daemon stop

NOTE

Stopping this daemon stops its sync/polling work, not cloud publication and not every other client. Independent webhooks and another eligible machine can still execute published flows.

On this page