Skip to content

Configuration

The plugin's config schema is defined by openclaw.plugin.json inside the plugin package; the common fields are listed below.

Common settings

SettingDescription
retentionDaysNotification data retention in days; unset means keep forever.
ignoredAppsList of app package names to ignore.
relay.heartbeatSecHeartbeat interval between the plugin and Relay.
relay.reconnectBackoffMsRelay reconnect backoff time.
autoUpdate.enabledWhether to enable the plugin's auto-update check.
autoUpdate.checkIntervalHoursAuto-update check interval.
autoUpdate.channelUpdate channel: latest or beta.
asr.modeRecording transcription mode: api, local, or yoooclaw.
asr.api.*Cloud ASR parameters.
asr.local.*Local Whisper parameters.

Setting example (OpenClaw)

bash
openclaw config set plugins.entries.phone-notifications.config.retentionDays 30
openclaw config set plugins.entries.phone-notifications.config.ignoredApps '["com.android.systemui"]'

The relay.*, asr.api.*, and asr.local.* groups are all additionalProperties: false in the schema — writing an unknown field under them fails host-side schema validation outright. If a setting doesn't seem to take effect, check for a typo'd field name first.

Besides openclaw config set writing into openclaw.json, the plugin also reads these environment variables — useful when debugging environment isolation or multi-key setups:

VariableDescription
YOOOCLAW_API_KEYOverrides the apiKey in credentials.json; highest priority.
PHONE_NOTIFICATIONS_ENVOverrides the current environment (development/test/production), equivalent to ntf env switch.
PHONE_NOTIFICATIONS_STATE_DIROverrides the plugin state directory.
PHONE_NOTIFICATIONS_CONFIG_PATHOverrides the host config file path.
PHONE_NOTIFICATIONS_CLAW_PROFILESelects the CLI profile.
OPENCLAW_GATEWAY_TOKEN / OPENCLAW_GATEWAY_PASSWORD / OPENCLAW_GATEWAY_PORTHost gateway auth passthrough (QClaw has QCLAW_* equivalents).
OPENCLAW_HOST_DEVELOPMENT / _TEST / _PRODUCTIONOverride the Relay / light-control API hostnames for each environment; only needed for self-hosted/internal setups.

State-directory auto-discovery also relies on JVSCLAW_STATE_DIR/JVSCLAW_HOME/JVSCLAW_CONFIG_PATH, OPENCLAW_STATE_DIR/OPENCLAW_ROOT/OPENCLAW_HOME, QCLAW_STATE_DIR/QCLAW_HOME, etc. These are normally set by the host itself — confirm which host you're running under before overriding them manually.