fix(openclaw): graceful startup without API key
Plugin no longer throws during register() when API key is missing. Instead it registers successfully, logs a clear setup message with the exact command to run, and disables memory features until configured. Before: openclaw plugins install -> register() throws -> gateway logs error After: openclaw plugins install -> registers ok -> logs setup instructions Users see: openclaw-mem0: API key not configured. Memory features are disabled. To set up, run: openclaw config set plugins.entries.openclaw-mem0.config.apiKey "m0-your-key" openclaw gateway restart Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
7e9824e394
commit
5a5e201dd9
@@ -94,6 +94,25 @@ const memoryPlugin = {
|
||||
|
||||
register(api: OpenClawPluginApi) {
|
||||
const cfg = mem0ConfigSchema.parse(api.pluginConfig);
|
||||
|
||||
// If API key is missing, register successfully but skip all memory operations.
|
||||
// This prevents install from failing and gives the user a clear setup message.
|
||||
if (cfg.needsSetup) {
|
||||
api.logger.warn(
|
||||
"openclaw-mem0: API key not configured. Memory features are disabled.\n" +
|
||||
" To set up, run:\n" +
|
||||
' openclaw config set plugins.entries.openclaw-mem0.config.apiKey "m0-your-key"\n' +
|
||||
" openclaw gateway restart\n" +
|
||||
" Get your key at: https://app.mem0.ai/dashboard/api-keys"
|
||||
);
|
||||
api.registerService({
|
||||
id: "openclaw-mem0",
|
||||
start: () => { api.logger.info("openclaw-mem0: waiting for API key configuration"); },
|
||||
stop: () => {},
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
const provider = createProvider(cfg, api);
|
||||
|
||||
// Track current session ID for tool-level session scoping.
|
||||
|
||||
Reference in New Issue
Block a user