@mcowger/opencode-plexus 0.8.3 → 0.8.4
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.js +6 -26
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -74,35 +74,21 @@ async function fetchPlexusModels(apiKey, modelsUrl, timeoutMs = DEFAULT_MODELS_F
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
// src/cache.ts
|
|
77
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
78
77
|
import { mkdir, readFile, writeFile } from "fs/promises";
|
|
79
78
|
import { homedir } from "os";
|
|
80
79
|
import { join } from "path";
|
|
81
80
|
var PLUGIN_SUBDIR = join("plugins", "plexus");
|
|
82
81
|
var CACHE_FILE = "models-cache.json";
|
|
83
82
|
var RAW_FILE = "models-raw.json";
|
|
84
|
-
var resolvedDir = null;
|
|
85
83
|
function fallbackDir() {
|
|
86
84
|
return join(homedir(), ".local", "share", "opencode", PLUGIN_SUBDIR);
|
|
87
85
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
return resolvedDir;
|
|
91
|
-
try {
|
|
92
|
-
const res = await client.path.get();
|
|
93
|
-
const data = res?.data;
|
|
94
|
-
const state = typeof data?.state === "string" && data.state ? data.state : undefined;
|
|
95
|
-
if (state) {
|
|
96
|
-
resolvedDir = join(state, PLUGIN_SUBDIR);
|
|
97
|
-
return resolvedDir;
|
|
98
|
-
}
|
|
99
|
-
} catch {}
|
|
100
|
-
resolvedDir = fallbackDir();
|
|
101
|
-
return resolvedDir;
|
|
86
|
+
function getDir() {
|
|
87
|
+
return fallbackDir();
|
|
102
88
|
}
|
|
103
|
-
async function readCachedModels(
|
|
89
|
+
async function readCachedModels(_client) {
|
|
104
90
|
try {
|
|
105
|
-
const dir =
|
|
91
|
+
const dir = getDir();
|
|
106
92
|
const content = await readFile(join(dir, CACHE_FILE), "utf8");
|
|
107
93
|
const parsed = JSON.parse(content);
|
|
108
94
|
if (parsed && typeof parsed.models === "object" && !Array.isArray(parsed.models)) {
|
|
@@ -113,9 +99,9 @@ async function readCachedModels(client) {
|
|
|
113
99
|
return null;
|
|
114
100
|
}
|
|
115
101
|
}
|
|
116
|
-
async function writeCache(
|
|
102
|
+
async function writeCache(_client, models, raw) {
|
|
117
103
|
try {
|
|
118
|
-
const dir =
|
|
104
|
+
const dir = getDir();
|
|
119
105
|
await mkdir(dir, { recursive: true });
|
|
120
106
|
const cache = { models, timestamp: Date.now() };
|
|
121
107
|
await writeFile(join(dir, CACHE_FILE), JSON.stringify(cache, null, 2) + `
|
|
@@ -124,12 +110,6 @@ async function writeCache(client, models, raw) {
|
|
|
124
110
|
await writeFile(join(dir, RAW_FILE), JSON.stringify(raw, null, 2) + `
|
|
125
111
|
`, "utf8");
|
|
126
112
|
}
|
|
127
|
-
try {
|
|
128
|
-
const syncDir = fallbackDir();
|
|
129
|
-
mkdirSync(syncDir, { recursive: true });
|
|
130
|
-
writeFileSync(join(syncDir, CACHE_FILE), JSON.stringify(cache, null, 2) + `
|
|
131
|
-
`, "utf8");
|
|
132
|
-
} catch {}
|
|
133
113
|
} catch {}
|
|
134
114
|
}
|
|
135
115
|
|