@openclawbrain/openclaw 0.2.3 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/extension/index.d.ts +1 -0
  2. package/dist/extension/index.js +73 -0
  3. package/dist/extension/index.js.map +1 -0
  4. package/dist/extension/runtime-guard.d.ts +61 -0
  5. package/dist/extension/runtime-guard.js +230 -0
  6. package/dist/extension/runtime-guard.js.map +1 -0
  7. package/dist/src/cli.d.ts +8 -4
  8. package/dist/src/cli.js +501 -154
  9. package/dist/src/cli.js.map +1 -1
  10. package/dist/src/daemon.d.ts +7 -4
  11. package/dist/src/daemon.js +275 -47
  12. package/dist/src/daemon.js.map +1 -1
  13. package/dist/src/index.d.ts +150 -2
  14. package/dist/src/index.js +769 -139
  15. package/dist/src/index.js.map +1 -1
  16. package/dist/src/learning-spine.d.ts +2 -1
  17. package/dist/src/learning-spine.js +8 -0
  18. package/dist/src/learning-spine.js.map +1 -1
  19. package/dist/src/ollama-client.d.ts +46 -0
  20. package/dist/src/ollama-client.js +231 -0
  21. package/dist/src/ollama-client.js.map +1 -0
  22. package/dist/src/provider-config.d.ts +28 -0
  23. package/dist/src/provider-config.js +150 -0
  24. package/dist/src/provider-config.js.map +1 -0
  25. package/dist/src/resolve-activation-root.d.ts +3 -3
  26. package/dist/src/resolve-activation-root.js +68 -21
  27. package/dist/src/resolve-activation-root.js.map +1 -1
  28. package/dist/src/shadow-extension-proof.d.ts +40 -0
  29. package/dist/src/shadow-extension-proof.js +214 -0
  30. package/dist/src/shadow-extension-proof.js.map +1 -0
  31. package/dist/src/teacher-labeler.d.ts +50 -0
  32. package/dist/src/teacher-labeler.js +424 -0
  33. package/dist/src/teacher-labeler.js.map +1 -0
  34. package/extension/index.ts +5 -1
  35. package/extension/runtime-guard.ts +17 -2
  36. package/package.json +8 -7
@@ -1,6 +1,6 @@
1
1
  import { type AlwaysOnLearningMaterializationJobV1 } from "@openclawbrain/learner";
2
2
  import { type NormalizedEventExportV1, type RouteMode, type RuntimeCompileResponseV1 } from "@openclawbrain/contracts";
3
- import { type LearningSpinePgRouteUpdateLogEntryV1, type LearningSpineServeRouteDecisionLogEntryV1, type PackDescriptor } from "@openclawbrain/pack-format";
3
+ import { type LearningSpinePgRouteUpdateLogEntryV1, type LearningSpineServeRouteBreadcrumbsV1, type LearningSpineServeRouteDecisionLogEntryV1, type PackDescriptor } from "@openclawbrain/pack-format";
4
4
  type CompileFailureLike = {
5
5
  ok: false;
6
6
  fallbackToStaticContext: boolean;
@@ -33,6 +33,7 @@ export declare function appendServeTimeRouteDecisionLog(input: {
33
33
  compileResult: RuntimeCompileResultLike;
34
34
  recordedAt: string;
35
35
  normalizedEventExport?: NormalizedEventExportV1;
36
+ breadcrumbs?: LearningSpineServeRouteBreadcrumbsV1;
36
37
  }): LearningSpineServeRouteDecisionLogEntryV1;
37
38
  export declare function appendLearningUpdateLogs(input: {
38
39
  activationRoot: string;
@@ -222,8 +222,16 @@ export function appendServeTimeRouteDecisionLog(input) {
222
222
  recordType: "serve_time_route_decision",
223
223
  recordedAt: input.recordedAt,
224
224
  activationRoot,
225
+ breadcrumbs: input.breadcrumbs ?? {
226
+ entrypoint: "compileRuntimeContext",
227
+ invocationSurface: "direct_compile_call",
228
+ hostEvent: null,
229
+ installedEntryPath: null,
230
+ syntheticTurn: true
231
+ },
225
232
  sessionId: input.turn.sessionId,
226
233
  channel: input.turn.channel,
234
+ userMessage: input.turn.userMessage,
227
235
  turnSequenceStart: input.turn.sequenceStart ?? null,
228
236
  turnCompileEventId: compileEvent?.eventId ?? null,
229
237
  turnCreatedAt: compileEvent?.createdAt ?? input.turn.compile?.createdAt ?? input.turn.createdAt ?? null,
@@ -1 +1 @@
1
- {"version":3,"file":"learning-spine.js","sourceRoot":"","sources":["../../src/learning-spine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"learning-spine.js","sourceRoot":"","sources":["../../src/learning-spine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ export declare const DEFAULT_OLLAMA_BASE_URL = "http://127.0.0.1:11434/api";
2
+ export declare const DEFAULT_OLLAMA_TIMEOUT_MS = 30000;
3
+ export interface OllamaChatMessage {
4
+ role: string;
5
+ content: string;
6
+ }
7
+ export interface OllamaClientOptions {
8
+ baseURL?: string;
9
+ timeoutMs?: number;
10
+ fetch?: OllamaFetch;
11
+ }
12
+ export interface OllamaRequestOptions {
13
+ timeoutMs?: number;
14
+ }
15
+ export interface OllamaFetchRequestInit {
16
+ method?: string;
17
+ headers?: Record<string, string>;
18
+ body?: string;
19
+ signal?: AbortSignal;
20
+ }
21
+ export interface OllamaFetchResponse {
22
+ ok: boolean;
23
+ status: number;
24
+ statusText: string;
25
+ text(): Promise<string>;
26
+ }
27
+ export type OllamaFetch = (input: string, init?: OllamaFetchRequestInit) => Promise<OllamaFetchResponse>;
28
+ export declare class OllamaClientError extends Error {
29
+ readonly endpoint: string;
30
+ readonly status: number | null;
31
+ readonly cause: unknown;
32
+ constructor(message: string, options: {
33
+ endpoint: string;
34
+ status?: number | null;
35
+ cause?: unknown;
36
+ });
37
+ }
38
+ export declare class OllamaClient {
39
+ #private;
40
+ readonly baseURL: string;
41
+ readonly timeoutMs: number;
42
+ constructor(options?: OllamaClientOptions);
43
+ chat(model: string, messages: readonly OllamaChatMessage[], options?: OllamaRequestOptions): Promise<string>;
44
+ embed(model: string, input: string, options?: OllamaRequestOptions): Promise<number[]>;
45
+ }
46
+ export declare function createOllamaClient(options?: OllamaClientOptions): OllamaClient;
@@ -0,0 +1,231 @@
1
+ const DEFAULT_BASE_URL = "http://127.0.0.1:11434/api";
2
+ const DEFAULT_TIMEOUT_MS = 30_000;
3
+ export const DEFAULT_OLLAMA_BASE_URL = DEFAULT_BASE_URL;
4
+ export const DEFAULT_OLLAMA_TIMEOUT_MS = DEFAULT_TIMEOUT_MS;
5
+ export class OllamaClientError extends Error {
6
+ endpoint;
7
+ status;
8
+ cause;
9
+ constructor(message, options) {
10
+ super(message);
11
+ this.name = "OllamaClientError";
12
+ this.endpoint = options.endpoint;
13
+ this.status = options.status ?? null;
14
+ this.cause = options.cause;
15
+ }
16
+ }
17
+ export class OllamaClient {
18
+ baseURL;
19
+ timeoutMs;
20
+ #fetch;
21
+ constructor(options = {}) {
22
+ this.baseURL = normalizeBaseURL(options.baseURL ?? DEFAULT_BASE_URL);
23
+ this.timeoutMs = normalizeTimeoutMs(options.timeoutMs ?? DEFAULT_TIMEOUT_MS, "timeoutMs", "initialization");
24
+ this.#fetch = resolveFetch(options.fetch);
25
+ }
26
+ async chat(model, messages, options = {}) {
27
+ const normalizedModel = requireNonEmptyString(model, "model", "chat");
28
+ const normalizedMessages = normalizeMessages(messages);
29
+ const response = await this.#post("chat", {
30
+ model: normalizedModel,
31
+ messages: normalizedMessages,
32
+ stream: false
33
+ }, options);
34
+ return readChatText(response);
35
+ }
36
+ async embed(model, input, options = {}) {
37
+ const normalizedModel = requireNonEmptyString(model, "model", "embed");
38
+ const normalizedInput = requireNonEmptyString(input, "input", "embed");
39
+ const response = await this.#post("embed", {
40
+ model: normalizedModel,
41
+ input: normalizedInput
42
+ }, options);
43
+ return readEmbeddingVector(response);
44
+ }
45
+ async #post(endpoint, body, options) {
46
+ const timeoutMs = normalizeTimeoutMs(options.timeoutMs ?? this.timeoutMs, "timeoutMs", endpoint);
47
+ const url = `${this.baseURL}/${endpoint}`;
48
+ const controller = new AbortController();
49
+ const timeout = setTimeout(() => {
50
+ controller.abort();
51
+ }, timeoutMs);
52
+ let response;
53
+ try {
54
+ response = await this.#fetch(url, {
55
+ method: "POST",
56
+ headers: {
57
+ accept: "application/json",
58
+ "content-type": "application/json"
59
+ },
60
+ body: JSON.stringify(body),
61
+ signal: controller.signal
62
+ });
63
+ }
64
+ catch (error) {
65
+ if (controller.signal.aborted) {
66
+ throw new OllamaClientError(`Ollama request to ${url} timed out after ${timeoutMs}ms.`, { endpoint: endpoint, cause: error });
67
+ }
68
+ throw new OllamaClientError(`Ollama request to ${url} failed: ${describeUnknownError(error)}.`, { endpoint: endpoint, cause: error });
69
+ }
70
+ finally {
71
+ clearTimeout(timeout);
72
+ }
73
+ const text = await readResponseText(response, endpoint);
74
+ if (!response.ok) {
75
+ throw new OllamaClientError(formatHttpErrorMessage(url, response.status, response.statusText, text), { endpoint: endpoint, status: response.status });
76
+ }
77
+ if (text.trim().length === 0) {
78
+ throw new OllamaClientError(`Ollama response from ${url} was empty.`, { endpoint: endpoint, status: response.status });
79
+ }
80
+ try {
81
+ return JSON.parse(text);
82
+ }
83
+ catch (error) {
84
+ throw new OllamaClientError(`Ollama response from ${url} was not valid JSON.`, { endpoint: endpoint, status: response.status, cause: error });
85
+ }
86
+ }
87
+ }
88
+ export function createOllamaClient(options = {}) {
89
+ return new OllamaClient(options);
90
+ }
91
+ function resolveFetch(fetchFn) {
92
+ if (typeof fetchFn === "function") {
93
+ return fetchFn;
94
+ }
95
+ const globalFetch = globalThis.fetch;
96
+ if (typeof globalFetch === "function") {
97
+ return globalFetch;
98
+ }
99
+ throw new OllamaClientError("Ollama client requires a fetch implementation.", {
100
+ endpoint: "initialization"
101
+ });
102
+ }
103
+ function normalizeBaseURL(baseURL) {
104
+ const normalized = requireNonEmptyString(baseURL, "baseURL", "initialization").replace(/\/+$/, "");
105
+ let parsed;
106
+ try {
107
+ parsed = new URL(normalized);
108
+ }
109
+ catch (error) {
110
+ throw new OllamaClientError(`Invalid Ollama baseURL: ${describeUnknownError(error)}.`, { endpoint: "initialization", cause: error });
111
+ }
112
+ if (parsed.pathname === "" || parsed.pathname === "/") {
113
+ parsed.pathname = "/api";
114
+ }
115
+ parsed.pathname = parsed.pathname.replace(/\/+$/, "") || "/api";
116
+ return parsed.toString().replace(/\/+$/, "");
117
+ }
118
+ function normalizeMessages(messages) {
119
+ if (!Array.isArray(messages) || messages.length === 0) {
120
+ throw new OllamaClientError("messages must contain at least one chat message.", {
121
+ endpoint: "chat"
122
+ });
123
+ }
124
+ return messages.map((message, index) => {
125
+ if (!isRecord(message)) {
126
+ throw new OllamaClientError(`messages[${index}] must be an object with role and content strings.`, {
127
+ endpoint: "chat"
128
+ });
129
+ }
130
+ return {
131
+ role: requireNonEmptyString(message.role, `messages[${index}].role`, "chat"),
132
+ content: requireString(message.content, `messages[${index}].content`, "chat")
133
+ };
134
+ });
135
+ }
136
+ function normalizeTimeoutMs(timeoutMs, fieldName, endpoint) {
137
+ if (!Number.isInteger(timeoutMs) || timeoutMs <= 0) {
138
+ throw new OllamaClientError(`${fieldName} must be a positive integer number of milliseconds.`, {
139
+ endpoint
140
+ });
141
+ }
142
+ return timeoutMs;
143
+ }
144
+ function readChatText(value) {
145
+ if (!isRecord(value) || !isRecord(value.message) || typeof value.message.content !== "string") {
146
+ throw new OllamaClientError("Ollama chat response did not include message.content.", {
147
+ endpoint: "chat"
148
+ });
149
+ }
150
+ return value.message.content;
151
+ }
152
+ function readEmbeddingVector(value) {
153
+ if (!isRecord(value) || !Array.isArray(value.embeddings) || value.embeddings.length === 0) {
154
+ throw new OllamaClientError("Ollama embed response did not include embeddings[0].", {
155
+ endpoint: "embed"
156
+ });
157
+ }
158
+ const [firstEmbedding] = value.embeddings;
159
+ if (!Array.isArray(firstEmbedding) || firstEmbedding.some((item) => typeof item !== "number" || !Number.isFinite(item))) {
160
+ throw new OllamaClientError("Ollama embed response embeddings[0] was not a numeric vector.", {
161
+ endpoint: "embed"
162
+ });
163
+ }
164
+ return [...firstEmbedding];
165
+ }
166
+ async function readResponseText(response, endpoint) {
167
+ try {
168
+ return await response.text();
169
+ }
170
+ catch (error) {
171
+ throw new OllamaClientError("Failed to read Ollama response body.", {
172
+ endpoint,
173
+ status: response.status,
174
+ cause: error
175
+ });
176
+ }
177
+ }
178
+ function formatHttpErrorMessage(url, status, statusText, text) {
179
+ const details = summarizeErrorBody(text);
180
+ const suffix = details === null ? "." : `: ${details}`;
181
+ const normalizedStatusText = statusText.trim().length === 0 ? "" : ` ${statusText}`;
182
+ return `Ollama request to ${url} failed with HTTP ${status}${normalizedStatusText}${suffix}`;
183
+ }
184
+ function summarizeErrorBody(text) {
185
+ const normalized = text.trim();
186
+ if (normalized.length === 0) {
187
+ return null;
188
+ }
189
+ try {
190
+ const parsed = JSON.parse(normalized);
191
+ if (isRecord(parsed)) {
192
+ if (typeof parsed.error === "string" && parsed.error.trim().length > 0) {
193
+ return parsed.error.trim();
194
+ }
195
+ if (typeof parsed.message === "string" && parsed.message.trim().length > 0) {
196
+ return parsed.message.trim();
197
+ }
198
+ }
199
+ }
200
+ catch {
201
+ // Preserve plain-text bodies when the upstream error is not JSON.
202
+ }
203
+ return normalized.replace(/\s+/g, " ").slice(0, 240);
204
+ }
205
+ function requireNonEmptyString(value, fieldName, endpoint) {
206
+ const normalized = requireString(value, fieldName, endpoint).trim();
207
+ if (normalized.length === 0) {
208
+ throw new OllamaClientError(`${fieldName} must be a non-empty string.`, {
209
+ endpoint
210
+ });
211
+ }
212
+ return normalized;
213
+ }
214
+ function requireString(value, fieldName, endpoint) {
215
+ if (typeof value !== "string") {
216
+ throw new OllamaClientError(`${fieldName} must be a string.`, {
217
+ endpoint
218
+ });
219
+ }
220
+ return value;
221
+ }
222
+ function describeUnknownError(error) {
223
+ if (error instanceof Error && error.message.trim().length > 0) {
224
+ return error.message;
225
+ }
226
+ return String(error);
227
+ }
228
+ function isRecord(value) {
229
+ return typeof value === "object" && value !== null;
230
+ }
231
+ //# sourceMappingURL=ollama-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ollama-client.js","sourceRoot":"","sources":["../../src/ollama-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ declare const ALLOWED_TEACHER_PROVIDERS: readonly ["heuristic", "ollama", "off"];
2
+ declare const ALLOWED_EMBEDDER_PROVIDERS: readonly ["keywords", "ollama", "off"];
3
+ export type OpenClawBrainProviderConfigEnv = Readonly<Record<string, string | undefined>>;
4
+ export type OpenClawBrainTeacherProvider = (typeof ALLOWED_TEACHER_PROVIDERS)[number];
5
+ export type OpenClawBrainEmbedderProvider = (typeof ALLOWED_EMBEDDER_PROVIDERS)[number];
6
+ export type OpenClawBrainProviderResolvedNote = string;
7
+ export interface OpenClawBrainProviderSelection<TProvider extends string> {
8
+ provider: TProvider;
9
+ model: string;
10
+ }
11
+ export interface OpenClawBrainTeacherConfig extends OpenClawBrainProviderSelection<OpenClawBrainTeacherProvider> {
12
+ timeoutMs?: number;
13
+ maxPromptChars?: number;
14
+ maxResponseChars?: number;
15
+ maxOutputTokens?: number;
16
+ maxArtifactsPerExport?: number;
17
+ maxInteractionsPerExport?: number;
18
+ }
19
+ export interface OpenClawBrainProviderConfig {
20
+ teacherBaseUrl: string;
21
+ embedderBaseUrl: string;
22
+ teacher: OpenClawBrainTeacherConfig;
23
+ embedder: OpenClawBrainProviderSelection<OpenClawBrainEmbedderProvider>;
24
+ warnings: string[];
25
+ }
26
+ export declare function resolveOpenClawBrainProviderConfigNotes(config: OpenClawBrainProviderConfig): OpenClawBrainProviderResolvedNote[];
27
+ export declare function readOpenClawBrainProviderConfig(env?: OpenClawBrainProviderConfigEnv): OpenClawBrainProviderConfig;
28
+ export {};
@@ -0,0 +1,150 @@
1
+ import process from "node:process";
2
+ const OPENCLAWBRAIN_TEACHER_BASE_URL_ENV = "OPENCLAWBRAIN_TEACHER_BASE_URL";
3
+ const OPENCLAWBRAIN_EMBEDDER_BASE_URL_ENV = "OPENCLAWBRAIN_EMBEDDER_BASE_URL";
4
+ const OPENCLAWBRAIN_TEACHER_PROVIDER_ENV = "OPENCLAWBRAIN_TEACHER_PROVIDER";
5
+ const OPENCLAWBRAIN_TEACHER_MODEL_ENV = "OPENCLAWBRAIN_TEACHER_MODEL";
6
+ const OPENCLAWBRAIN_TEACHER_TIMEOUT_MS_ENV = "OPENCLAWBRAIN_TEACHER_TIMEOUT_MS";
7
+ const OPENCLAWBRAIN_TEACHER_MAX_PROMPT_CHARS_ENV = "OPENCLAWBRAIN_TEACHER_MAX_PROMPT_CHARS";
8
+ const OPENCLAWBRAIN_TEACHER_MAX_RESPONSE_CHARS_ENV = "OPENCLAWBRAIN_TEACHER_MAX_RESPONSE_CHARS";
9
+ const OPENCLAWBRAIN_TEACHER_MAX_OUTPUT_TOKENS_ENV = "OPENCLAWBRAIN_TEACHER_MAX_OUTPUT_TOKENS";
10
+ const OPENCLAWBRAIN_TEACHER_MAX_ARTIFACTS_ENV = "OPENCLAWBRAIN_TEACHER_MAX_ARTIFACTS";
11
+ const OPENCLAWBRAIN_TEACHER_MAX_INTERACTIONS_ENV = "OPENCLAWBRAIN_TEACHER_MAX_INTERACTIONS";
12
+ const OPENCLAWBRAIN_EMBEDDER_PROVIDER_ENV = "OPENCLAWBRAIN_EMBEDDER_PROVIDER";
13
+ const OPENCLAWBRAIN_EMBEDDER_MODEL_ENV = "OPENCLAWBRAIN_EMBEDDER_MODEL";
14
+ const DEFAULT_BASE_URL = "http://127.0.0.1:11434";
15
+ const DEFAULT_TEACHER_PROVIDER = "heuristic";
16
+ const DEFAULT_TEACHER_MODEL = "qwen3.5:9b";
17
+ const DEFAULT_EMBEDDER_PROVIDER = "keywords";
18
+ const DEFAULT_EMBEDDER_MODEL = "bge-large";
19
+ const ALLOWED_TEACHER_PROVIDERS = ["heuristic", "ollama", "off"];
20
+ const ALLOWED_EMBEDDER_PROVIDERS = ["keywords", "ollama", "off"];
21
+ export function resolveOpenClawBrainProviderConfigNotes(config) {
22
+ const notes = [
23
+ `teacher_base_url=${config.teacherBaseUrl}`,
24
+ `embedder_base_url=${config.embedderBaseUrl}`,
25
+ `teacher_provider=${config.teacher.provider}`,
26
+ `teacher_model=${config.teacher.model}`,
27
+ `embedder_provider=${config.embedder.provider}`,
28
+ `embedder_model=${config.embedder.model}`
29
+ ];
30
+ const optionalTeacherNotes = [
31
+ ["teacher_timeout_ms", config.teacher.timeoutMs],
32
+ ["teacher_max_prompt_chars", config.teacher.maxPromptChars],
33
+ ["teacher_max_response_chars", config.teacher.maxResponseChars],
34
+ ["teacher_max_output_tokens", config.teacher.maxOutputTokens],
35
+ ["teacher_max_artifacts", config.teacher.maxArtifactsPerExport],
36
+ ["teacher_max_interactions", config.teacher.maxInteractionsPerExport]
37
+ ];
38
+ for (const [name, value] of optionalTeacherNotes) {
39
+ if (value !== undefined) {
40
+ notes.push(`${name}=${value}`);
41
+ }
42
+ }
43
+ return notes;
44
+ }
45
+ export function readOpenClawBrainProviderConfig(env = process.env) {
46
+ const warnings = [];
47
+ return {
48
+ teacherBaseUrl: readBaseUrlEnv(env, OPENCLAWBRAIN_TEACHER_BASE_URL_ENV, warnings),
49
+ embedderBaseUrl: readBaseUrlEnv(env, OPENCLAWBRAIN_EMBEDDER_BASE_URL_ENV, warnings),
50
+ teacher: {
51
+ provider: readProviderEnv(env, OPENCLAWBRAIN_TEACHER_PROVIDER_ENV, ALLOWED_TEACHER_PROVIDERS, DEFAULT_TEACHER_PROVIDER, warnings),
52
+ model: readModelEnv(env, OPENCLAWBRAIN_TEACHER_MODEL_ENV, DEFAULT_TEACHER_MODEL, warnings),
53
+ ...readTeacherBudgetEnv(env, warnings)
54
+ },
55
+ embedder: {
56
+ provider: readProviderEnv(env, OPENCLAWBRAIN_EMBEDDER_PROVIDER_ENV, ALLOWED_EMBEDDER_PROVIDERS, DEFAULT_EMBEDDER_PROVIDER, warnings),
57
+ model: readModelEnv(env, OPENCLAWBRAIN_EMBEDDER_MODEL_ENV, DEFAULT_EMBEDDER_MODEL, warnings)
58
+ },
59
+ warnings
60
+ };
61
+ }
62
+ function readBaseUrlEnv(env, name, warnings) {
63
+ const raw = env[name];
64
+ if (raw === undefined) {
65
+ return DEFAULT_BASE_URL;
66
+ }
67
+ const value = normalizeOptionalEnvString(raw);
68
+ if (value === undefined) {
69
+ warnings.push(`${name} must be a valid http(s) URL when set; using default ${DEFAULT_BASE_URL}`);
70
+ return DEFAULT_BASE_URL;
71
+ }
72
+ let parsed;
73
+ try {
74
+ parsed = new URL(value);
75
+ }
76
+ catch {
77
+ warnings.push(`${name} must be a valid http(s) URL when set; using default ${DEFAULT_BASE_URL}`);
78
+ return DEFAULT_BASE_URL;
79
+ }
80
+ if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
81
+ warnings.push(`${name} must use http or https when set; using default ${DEFAULT_BASE_URL}`);
82
+ return DEFAULT_BASE_URL;
83
+ }
84
+ return parsed.toString().replace(/\/+$/, "");
85
+ }
86
+ function readProviderEnv(env, name, allowedValues, fallback, warnings) {
87
+ const raw = env[name];
88
+ if (raw === undefined) {
89
+ return fallback;
90
+ }
91
+ const value = normalizeOptionalEnvString(raw);
92
+ if (value === undefined) {
93
+ warnings.push(`${name} must be one of ${allowedValues.join("|")}; using default ${fallback}`);
94
+ return fallback;
95
+ }
96
+ if (allowedValues.includes(value)) {
97
+ return value;
98
+ }
99
+ warnings.push(`${name} must be one of ${allowedValues.join("|")}; using default ${fallback}`);
100
+ return fallback;
101
+ }
102
+ function readModelEnv(env, name, fallback, warnings) {
103
+ const raw = env[name];
104
+ if (raw === undefined) {
105
+ return fallback;
106
+ }
107
+ const value = normalizeOptionalEnvString(raw);
108
+ if (value !== undefined) {
109
+ return value;
110
+ }
111
+ warnings.push(`${name} must be a non-empty string when set; using default ${fallback}`);
112
+ return fallback;
113
+ }
114
+ function readTeacherBudgetEnv(env, warnings) {
115
+ return {
116
+ ...readOptionalPositiveIntegerEnv(env, OPENCLAWBRAIN_TEACHER_TIMEOUT_MS_ENV, "timeoutMs", warnings),
117
+ ...readOptionalPositiveIntegerEnv(env, OPENCLAWBRAIN_TEACHER_MAX_PROMPT_CHARS_ENV, "maxPromptChars", warnings),
118
+ ...readOptionalPositiveIntegerEnv(env, OPENCLAWBRAIN_TEACHER_MAX_RESPONSE_CHARS_ENV, "maxResponseChars", warnings),
119
+ ...readOptionalPositiveIntegerEnv(env, OPENCLAWBRAIN_TEACHER_MAX_OUTPUT_TOKENS_ENV, "maxOutputTokens", warnings),
120
+ ...readOptionalPositiveIntegerEnv(env, OPENCLAWBRAIN_TEACHER_MAX_ARTIFACTS_ENV, "maxArtifactsPerExport", warnings),
121
+ ...readOptionalPositiveIntegerEnv(env, OPENCLAWBRAIN_TEACHER_MAX_INTERACTIONS_ENV, "maxInteractionsPerExport", warnings)
122
+ };
123
+ }
124
+ function readOptionalPositiveIntegerEnv(env, name, propertyName, warnings) {
125
+ const raw = env[name];
126
+ if (raw === undefined) {
127
+ return {};
128
+ }
129
+ const value = normalizeOptionalEnvString(raw);
130
+ if (value === undefined || /^[0-9]+$/u.test(value) === false) {
131
+ warnings.push(`${name} must be a positive integer when set; leaving it unset`);
132
+ return {};
133
+ }
134
+ const parsed = Number.parseInt(value, 10);
135
+ if (!Number.isInteger(parsed) || parsed <= 0) {
136
+ warnings.push(`${name} must be a positive integer when set; leaving it unset`);
137
+ return {};
138
+ }
139
+ return {
140
+ [propertyName]: parsed
141
+ };
142
+ }
143
+ function normalizeOptionalEnvString(value) {
144
+ const normalized = value?.trim();
145
+ if (normalized === undefined || normalized.length === 0) {
146
+ return undefined;
147
+ }
148
+ return normalized;
149
+ }
150
+ //# sourceMappingURL=provider-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-config.js","sourceRoot":"","sources":["../../src/provider-config.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@
4
4
  * Resolution order:
5
5
  * 1. Explicit `--activation-root <path>` (passed as `explicit` arg)
6
6
  * 2. A selected OpenClaw profile home (`openclawHome` option or OPENCLAW_HOME env)
7
- * 3. Default location: ~/.openclawbrain/activation
8
- * 4. Scan ~/.openclaw-*​/extensions/openclawbrain/index.ts for hardcoded activation paths
7
+ * 3. Unpinned host auto-detect from ~/.openclawbrain/activation and installed profile hooks
8
+ * 4. Refuse clearly if host-local signals disagree or are unresolved
9
9
  * 5. Fail with a clear error message
10
10
  *
11
11
  * Exported for use by CLI commands and other agents' code.
@@ -15,7 +15,7 @@ export interface ResolveActivationRootOptions {
15
15
  explicit?: string | null;
16
16
  /** Specific OpenClaw profile home to inspect for the installed extension. */
17
17
  openclawHome?: string | null;
18
- /** If true, return null instead of throwing when nothing is found. */
18
+ /** If true, return "" instead of throwing when nothing is found or auto-detect is ambiguous. */
19
19
  quiet?: boolean;
20
20
  }
21
21
  /**