@t0ken.ai/memoryx-openclaw-plugin 2.2.33 → 2.2.34
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/index.d.ts.map +1 -1
- package/dist/index.js +76 -28
- package/package.json +1 -1
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAkDH,UAAU,YAAY;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,UAAU,YAAY;IAClB,QAAQ,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,eAAe,EAAE,KAAK,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAqDD,cAAM,aAAa;IACf,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,aAAa,CAAkB;gBAE3B,YAAY,CAAC,EAAE,YAAY;IAIjC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAad,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAUpC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6B1D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,YAAY,CAAC;IAyC/D,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc1C,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAcvE,IAAI,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAiBxC,cAAc,IAAI,OAAO,CAAC;QACnC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;QACrB,KAAK,CAAC,EAAE,GAAG,CAAC;KACf,CAAC;IAwBW,cAAc,IAAI,OAAO,CAAC;QACnC,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,CAAC,EAAE;YACH,QAAQ,EAAE,MAAM,CAAC;YACjB,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;YACnB,YAAY,EAAE,MAAM,CAAC;YACrB,iBAAiB,EAAE,MAAM,CAAC;YAC1B,gBAAgB,EAAE,MAAM,CAAC;YACzB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,MAAM,EAAE,MAAM,CAAC;YACf,OAAO,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CAcL;;;;;;kBAUiB,GAAG,iBAAiB,YAAY,GAAG,IAAI;;AANzD,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAkDH,UAAU,YAAY;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,UAAU,YAAY;IAClB,QAAQ,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,eAAe,EAAE,KAAK,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAqDD,cAAM,aAAa;IACf,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,aAAa,CAAkB;gBAE3B,YAAY,CAAC,EAAE,YAAY;IAIjC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAad,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAUpC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6B1D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,YAAY,CAAC;IAyC/D,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc1C,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAcvE,IAAI,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAiBxC,cAAc,IAAI,OAAO,CAAC;QACnC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;QACrB,KAAK,CAAC,EAAE,GAAG,CAAC;KACf,CAAC;IAwBW,cAAc,IAAI,OAAO,CAAC;QACnC,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,CAAC,EAAE;YACH,QAAQ,EAAE,MAAM,CAAC;YACjB,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;YACnB,YAAY,EAAE,MAAM,CAAC;YACrB,iBAAiB,EAAE,MAAM,CAAC;YAC1B,gBAAgB,EAAE,MAAM,CAAC;YACzB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,MAAM,EAAE,MAAM,CAAC;YACf,OAAO,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CAcL;;;;;;kBAUiB,GAAG,iBAAiB,YAAY,GAAG,IAAI;;AANzD,wBAs0BE;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -26,7 +26,7 @@ import * as fs from "fs";
|
|
|
26
26
|
import * as path from "path";
|
|
27
27
|
import * as os from "os";
|
|
28
28
|
// 插件版本号 - 由 prebuild 脚本自动从 package.json 同步
|
|
29
|
-
const PLUGIN_VERSION = "2.2.
|
|
29
|
+
const PLUGIN_VERSION = "2.2.34";
|
|
30
30
|
const DEFAULT_API_BASE = "https://t0ken.ai/api";
|
|
31
31
|
const PLUGIN_DIR = path.join(os.homedir(), ".openclaw", "extensions", "memoryx-openclaw-plugin");
|
|
32
32
|
let logStream = null;
|
|
@@ -744,41 +744,89 @@ export default {
|
|
|
744
744
|
log(`[Proxy] Failed to extract credentials: ${e}`);
|
|
745
745
|
}
|
|
746
746
|
// 从 OpenClaw config 动态提取模型列表
|
|
747
|
-
//
|
|
748
|
-
// 然后在那个 provider 下查找 model
|
|
747
|
+
// OpenClaw 在 provider 下查找 model,所以 model id 不需要 provider 前缀
|
|
749
748
|
function extractModelsFromConfig(config) {
|
|
750
|
-
const
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
// 从配置中提取所有模型(不加前缀)
|
|
749
|
+
const modelsMap = new Map();
|
|
750
|
+
// 默认虚拟模型 - 类似 SlimClaw 的 auto
|
|
751
|
+
modelsMap.set('auto', {
|
|
752
|
+
id: 'auto',
|
|
753
|
+
name: 'MemoryX Auto Router',
|
|
754
|
+
reasoning: true,
|
|
755
|
+
input: ['text', 'image'],
|
|
756
|
+
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
757
|
+
contextWindow: 200000,
|
|
758
|
+
maxTokens: 8192,
|
|
759
|
+
});
|
|
760
|
+
// 从配置中提取所有模型
|
|
763
761
|
if (config?.models?.providers) {
|
|
764
762
|
for (const [providerId, providerConfig] of Object.entries(config.models.providers)) {
|
|
765
763
|
const pc = providerConfig;
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
764
|
+
log(`[Proxy] Checking provider ${providerId} for models...`);
|
|
765
|
+
// 检查多种可能的模型配置格式
|
|
766
|
+
const modelSources = [
|
|
767
|
+
pc.models, // array format: models: ["glm-5", "glm-4.7"]
|
|
768
|
+
pc.modelIds, // alternative name
|
|
769
|
+
pc.model?.models, // nested format
|
|
770
|
+
];
|
|
771
|
+
for (const modelList of modelSources) {
|
|
772
|
+
if (modelList && Array.isArray(modelList)) {
|
|
773
|
+
modelList.forEach((modelId) => {
|
|
774
|
+
if (typeof modelId === 'string' && !modelsMap.has(modelId)) {
|
|
775
|
+
modelsMap.set(modelId, {
|
|
776
|
+
id: modelId,
|
|
777
|
+
name: `${modelId} (via MemoryX)`,
|
|
778
|
+
reasoning: true,
|
|
779
|
+
input: ['text'],
|
|
780
|
+
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
781
|
+
contextWindow: 128000,
|
|
782
|
+
maxTokens: 8192,
|
|
783
|
+
});
|
|
784
|
+
log(`[Proxy] Added model: ${modelId} from provider ${providerId}`);
|
|
785
|
+
}
|
|
776
786
|
});
|
|
777
|
-
}
|
|
787
|
+
}
|
|
778
788
|
}
|
|
789
|
+
// 检查 object format: models: { "glm-5": {...}, "glm-4.7": {...} }
|
|
790
|
+
if (pc.models && typeof pc.models === 'object' && !Array.isArray(pc.models)) {
|
|
791
|
+
for (const modelId of Object.keys(pc.models)) {
|
|
792
|
+
if (!modelsMap.has(modelId)) {
|
|
793
|
+
modelsMap.set(modelId, {
|
|
794
|
+
id: modelId,
|
|
795
|
+
name: `${modelId} (via MemoryX)`,
|
|
796
|
+
reasoning: true,
|
|
797
|
+
input: ['text'],
|
|
798
|
+
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
799
|
+
contextWindow: 128000,
|
|
800
|
+
maxTokens: 8192,
|
|
801
|
+
});
|
|
802
|
+
log(`[Proxy] Added model: ${modelId} from provider ${providerId} (object format)`);
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
}
|
|
806
|
+
}
|
|
807
|
+
}
|
|
808
|
+
// 添加常用模型(硬编码备用)
|
|
809
|
+
const fallbackModels = [
|
|
810
|
+
'gpt-4o', 'gpt-4o-mini', 'gpt-4-turbo', 'gpt-3.5-turbo',
|
|
811
|
+
'claude-sonnet-4-20250514', 'claude-3-5-sonnet-20241022', 'claude-3-haiku-20240307',
|
|
812
|
+
'glm-4', 'glm-4-plus', 'glm-4-air', 'glm-4.7', 'glm-5',
|
|
813
|
+
];
|
|
814
|
+
for (const modelId of fallbackModels) {
|
|
815
|
+
if (!modelsMap.has(modelId)) {
|
|
816
|
+
modelsMap.set(modelId, {
|
|
817
|
+
id: modelId,
|
|
818
|
+
name: `${modelId} (via MemoryX)`,
|
|
819
|
+
reasoning: true,
|
|
820
|
+
input: ['text'],
|
|
821
|
+
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
|
|
822
|
+
contextWindow: 128000,
|
|
823
|
+
maxTokens: 8192,
|
|
824
|
+
});
|
|
825
|
+
log(`[Proxy] Added fallback model: ${modelId}`);
|
|
779
826
|
}
|
|
780
827
|
}
|
|
781
|
-
|
|
828
|
+
const models = Array.from(modelsMap.values());
|
|
829
|
+
log(`[Proxy] Total models extracted: ${models.length}`);
|
|
782
830
|
return models;
|
|
783
831
|
}
|
|
784
832
|
// 注册 Proxy Provider
|
package/package.json
CHANGED