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
+4
-8
@@ -196,14 +196,9 @@ export const mem0ConfigSchema = {
|
||||
const mode: Mem0Mode =
|
||||
cfg.mode === "oss" || cfg.mode === "open-source" ? "open-source" : "platform";
|
||||
|
||||
// Platform mode requires apiKey
|
||||
if (mode === "platform") {
|
||||
if (typeof cfg.apiKey !== "string" || !cfg.apiKey) {
|
||||
throw new Error(
|
||||
"apiKey is required for platform mode (set mode: \"open-source\" for self-hosted)",
|
||||
);
|
||||
}
|
||||
}
|
||||
// Platform mode requires apiKey — but don't throw on missing config.
|
||||
// The plugin should register successfully and log a setup message.
|
||||
const needsSetup = mode === "platform" && (typeof cfg.apiKey !== "string" || !cfg.apiKey);
|
||||
|
||||
// Resolve env vars in oss config
|
||||
let ossConfig: Mem0Config["oss"];
|
||||
@@ -241,6 +236,7 @@ export const mem0ConfigSchema = {
|
||||
searchThreshold:
|
||||
typeof cfg.searchThreshold === "number" ? cfg.searchThreshold : 0.5,
|
||||
topK: typeof cfg.topK === "number" ? cfg.topK : 5,
|
||||
needsSetup,
|
||||
oss: ossConfig,
|
||||
skills:
|
||||
cfg.skills && typeof cfg.skills === "object" && !Array.isArray(cfg.skills)
|
||||
|
||||
Reference in New Issue
Block a user