opencode-mem 2.11.10 → 2.11.11
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.
- package/dist/config.d.ts +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -0
- package/dist/services/ai/provider-config.d.ts +1 -0
- package/dist/services/ai/provider-config.d.ts.map +1 -1
- package/dist/services/ai/provider-config.js +1 -0
- package/dist/services/ai/providers/base-provider.d.ts +2 -0
- package/dist/services/ai/providers/base-provider.d.ts.map +1 -1
- package/dist/services/ai/providers/base-provider.js +17 -0
- package/dist/services/ai/providers/openai-chat-completion.d.ts.map +1 -1
- package/dist/services/ai/providers/openai-chat-completion.js +4 -1
- package/dist/services/ai/providers/openai-responses.d.ts.map +1 -1
- package/dist/services/ai/providers/openai-responses.js +4 -1
- package/package.json +1 -1
package/dist/config.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ export declare const CONFIG: {
|
|
|
20
20
|
memoryApiUrl: string | undefined;
|
|
21
21
|
memoryApiKey: string | undefined;
|
|
22
22
|
memoryTemperature: number | false | undefined;
|
|
23
|
+
memoryExtraParams: Record<string, unknown> | undefined;
|
|
23
24
|
vectorBackend: "usearch-first" | "usearch" | "exact-scan";
|
|
24
25
|
aiSessionRetentionDays: number;
|
|
25
26
|
webServerEnabled: boolean;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AA6aA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;oBAwBb,aAAa,GACb,kBAAkB,GAClB,WAAW;;;;;;mBAOX,eAAe,GACf,SAAS,GACT,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoCV,OAAO,GACP,QAAQ;;CAEf,CAAC;AAEF,wBAAgB,YAAY,IAAI,OAAO,CAEtC"}
|
package/dist/config.js
CHANGED
|
@@ -207,6 +207,12 @@ const CONFIG_TEMPLATE = `{
|
|
|
207
207
|
// Set to false and add "memoryTemperature": false in config when using such models
|
|
208
208
|
"memoryTemperature": 0.3,
|
|
209
209
|
|
|
210
|
+
// Extra parameters to include in API request body
|
|
211
|
+
// Useful for local inference servers (e.g. llama-server with --jinja) that support
|
|
212
|
+
// additional parameters like disabling thinking/reasoning mode
|
|
213
|
+
// Example for Qwen3 models: { "enable_thinking": false }
|
|
214
|
+
// "memoryExtraParams": {},
|
|
215
|
+
|
|
210
216
|
// Language for auto-capture summaries (default: "auto" for auto-detection)
|
|
211
217
|
// Options: "auto", "en", "id", "zh", "ja", "es", "fr", "de", "ru", "pt", "ar", "ko"
|
|
212
218
|
// "autoCaptureLanguage": "auto",
|
|
@@ -348,6 +354,7 @@ export const CONFIG = {
|
|
|
348
354
|
memoryApiUrl: fileConfig.memoryApiUrl,
|
|
349
355
|
memoryApiKey: resolveSecretValue(fileConfig.memoryApiKey),
|
|
350
356
|
memoryTemperature: fileConfig.memoryTemperature,
|
|
357
|
+
memoryExtraParams: fileConfig.memoryExtraParams,
|
|
351
358
|
vectorBackend: (fileConfig.vectorBackend ?? "usearch-first"),
|
|
352
359
|
aiSessionRetentionDays: fileConfig.aiSessionRetentionDays ?? DEFAULTS.aiSessionRetentionDays,
|
|
353
360
|
webServerEnabled: fileConfig.webServerEnabled ?? DEFAULTS.webServerEnabled,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-config.d.ts","sourceRoot":"","sources":["../../../src/services/ai/provider-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,UAAU,2BAA2B;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACnC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,UAAU,uBAAuB;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,2BAA2B,EACnC,SAAS,GAAE,uBAA4B,GACtC,cAAc,
|
|
1
|
+
{"version":3,"file":"provider-config.d.ts","sourceRoot":"","sources":["../../../src/services/ai/provider-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,UAAU,2BAA2B;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,UAAU,uBAAuB;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,2BAA2B,EACnC,SAAS,GAAE,uBAA4B,GACtC,cAAc,CAchB"}
|
|
@@ -7,6 +7,7 @@ export function buildMemoryProviderConfig(config, overrides = {}) {
|
|
|
7
7
|
apiUrl: config.memoryApiUrl,
|
|
8
8
|
apiKey: config.memoryApiKey,
|
|
9
9
|
memoryTemperature: config.memoryTemperature,
|
|
10
|
+
extraParams: config.memoryExtraParams,
|
|
10
11
|
maxIterations: overrides.maxIterations ?? config.autoCaptureMaxIterations,
|
|
11
12
|
iterationTimeout: overrides.iterationTimeout ?? config.autoCaptureIterationTimeout,
|
|
12
13
|
};
|
|
@@ -12,7 +12,9 @@ export interface ProviderConfig {
|
|
|
12
12
|
iterationTimeout?: number;
|
|
13
13
|
maxTokens?: number;
|
|
14
14
|
memoryTemperature?: number | false;
|
|
15
|
+
extraParams?: Record<string, unknown>;
|
|
15
16
|
}
|
|
17
|
+
export declare function applySafeExtraParams(requestBody: Record<string, any>, extraParams: Record<string, unknown>): void;
|
|
16
18
|
export declare abstract class BaseAIProvider {
|
|
17
19
|
protected config: ProviderConfig;
|
|
18
20
|
constructor(config: ProviderConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-provider.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/providers/base-provider.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"base-provider.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/providers/base-provider.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAaD,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAChC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,IAAI,CAMN;AAED,8BAAsB,cAAc;IAClC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC;gBAErB,MAAM,EAAE,cAAc;IAIlC,QAAQ,CAAC,eAAe,CACtB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,GAAG,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,CAAC;IAE1B,QAAQ,CAAC,eAAe,IAAI,MAAM;IAElC,QAAQ,CAAC,eAAe,IAAI,OAAO;CACpC"}
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
const PROTECTED_KEYS = new Set([
|
|
2
|
+
"model",
|
|
3
|
+
"messages",
|
|
4
|
+
"tools",
|
|
5
|
+
"tool_choice",
|
|
6
|
+
"temperature",
|
|
7
|
+
"input",
|
|
8
|
+
"instructions",
|
|
9
|
+
"conversation",
|
|
10
|
+
]);
|
|
11
|
+
export function applySafeExtraParams(requestBody, extraParams) {
|
|
12
|
+
for (const [key, value] of Object.entries(extraParams)) {
|
|
13
|
+
if (!PROTECTED_KEYS.has(key)) {
|
|
14
|
+
requestBody[key] = value;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
1
18
|
export class BaseAIProvider {
|
|
2
19
|
config;
|
|
3
20
|
constructor(config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-chat-completion.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/providers/openai-chat-completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"openai-chat-completion.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/providers/openai-chat-completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAwB,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAqBlE,qBAAa,4BAA6B,SAAQ,cAAc;IAC9D,OAAO,CAAC,gBAAgB,CAAmB;gBAE/B,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,gBAAgB;IAK3D,eAAe,IAAI,MAAM;IAIzB,eAAe,IAAI,OAAO;IAI1B,OAAO,CAAC,eAAe;IAqBvB,OAAO,CAAC,iCAAiC;IAoCnC,eAAe,CACnB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,kBAAkB,EAC9B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,CAAC;CAmR3B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseAIProvider } from "./base-provider.js";
|
|
1
|
+
import { BaseAIProvider, applySafeExtraParams } from "./base-provider.js";
|
|
2
2
|
import { AISessionManager } from "../session/ai-session-manager.js";
|
|
3
3
|
import { log } from "../../logger.js";
|
|
4
4
|
import { UserProfileValidator } from "../validators/user-profile-validator.js";
|
|
@@ -120,6 +120,9 @@ export class OpenAIChatCompletionProvider extends BaseAIProvider {
|
|
|
120
120
|
if (this.config.memoryTemperature !== false) {
|
|
121
121
|
requestBody.temperature = this.config.memoryTemperature ?? 0.3;
|
|
122
122
|
}
|
|
123
|
+
if (this.config.extraParams) {
|
|
124
|
+
applySafeExtraParams(requestBody, this.config.extraParams);
|
|
125
|
+
}
|
|
123
126
|
const headers = {
|
|
124
127
|
"Content-Type": "application/json",
|
|
125
128
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-responses.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/providers/openai-responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"openai-responses.d.ts","sourceRoot":"","sources":["../../../../src/services/ai/providers/openai-responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAwB,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAuB,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAsBvF,qBAAa,uBAAwB,SAAQ,cAAc;IACzD,OAAO,CAAC,gBAAgB,CAAmB;gBAE/B,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,gBAAgB;IAK3D,eAAe,IAAI,MAAM;IAIzB,eAAe,IAAI,OAAO;IAIpB,eAAe,CACnB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,kBAAkB,EAC9B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,CAAC;IA0H1B,OAAO,CAAC,eAAe;IA+BvB,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,gBAAgB;CAsBzB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BaseAIProvider } from "./base-provider.js";
|
|
1
|
+
import { BaseAIProvider, applySafeExtraParams } from "./base-provider.js";
|
|
2
2
|
import { AISessionManager } from "../session/ai-session-manager.js";
|
|
3
3
|
import { ToolSchemaConverter } from "../tools/tool-schema.js";
|
|
4
4
|
import { log } from "../../logger.js";
|
|
@@ -44,6 +44,9 @@ export class OpenAIResponsesProvider extends BaseAIProvider {
|
|
|
44
44
|
else {
|
|
45
45
|
requestBody.instructions = systemPrompt;
|
|
46
46
|
}
|
|
47
|
+
if (this.config.extraParams) {
|
|
48
|
+
applySafeExtraParams(requestBody, this.config.extraParams);
|
|
49
|
+
}
|
|
47
50
|
const response = await fetch(`${this.config.apiUrl}/responses`, {
|
|
48
51
|
method: "POST",
|
|
49
52
|
headers: {
|