oh-my-opencode-kikokikok 2.14.0 → 2.14.2
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/cli/index.js +378 -246
- package/dist/cli/types.d.ts +7 -0
- package/dist/index.js +12 -4
- package/package.json +1 -1
package/dist/cli/types.d.ts
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
export type ClaudeSubscription = "no" | "yes" | "max20";
|
|
2
2
|
export type BooleanArg = "no" | "yes";
|
|
3
|
+
export type MemoryProvider = "no" | "mem0-cloud" | "mem0-local" | "letta";
|
|
3
4
|
export interface InstallArgs {
|
|
4
5
|
tui: boolean;
|
|
5
6
|
claude?: ClaudeSubscription;
|
|
6
7
|
chatgpt?: BooleanArg;
|
|
7
8
|
gemini?: BooleanArg;
|
|
9
|
+
memory?: MemoryProvider;
|
|
10
|
+
memoryEndpoint?: string;
|
|
8
11
|
skipAuth?: boolean;
|
|
9
12
|
}
|
|
10
13
|
export interface InstallConfig {
|
|
@@ -12,6 +15,8 @@ export interface InstallConfig {
|
|
|
12
15
|
isMax20: boolean;
|
|
13
16
|
hasChatGPT: boolean;
|
|
14
17
|
hasGemini: boolean;
|
|
18
|
+
memoryProvider: MemoryProvider;
|
|
19
|
+
memoryEndpoint?: string;
|
|
15
20
|
}
|
|
16
21
|
export interface ConfigMergeResult {
|
|
17
22
|
success: boolean;
|
|
@@ -24,4 +29,6 @@ export interface DetectedConfig {
|
|
|
24
29
|
isMax20: boolean;
|
|
25
30
|
hasChatGPT: boolean;
|
|
26
31
|
hasGemini: boolean;
|
|
32
|
+
memoryProvider: MemoryProvider;
|
|
33
|
+
memoryEndpoint?: string;
|
|
27
34
|
}
|
package/dist/index.js
CHANGED
|
@@ -8542,29 +8542,37 @@ import { readFileSync as readFileSync2 } from "fs";
|
|
|
8542
8542
|
import { join as join4, dirname } from "path";
|
|
8543
8543
|
import { fileURLToPath } from "url";
|
|
8544
8544
|
var cachedPackageInfo = null;
|
|
8545
|
+
function isValidPackageJson(obj) {
|
|
8546
|
+
return typeof obj === "object" && obj !== null && typeof obj.name === "string" && obj.name.length > 0;
|
|
8547
|
+
}
|
|
8545
8548
|
function loadPackageJson() {
|
|
8546
8549
|
if (cachedPackageInfo) {
|
|
8547
8550
|
return cachedPackageInfo;
|
|
8548
8551
|
}
|
|
8552
|
+
const fallback = { name: "oh-my-opencode", version: "0.0.0" };
|
|
8549
8553
|
try {
|
|
8550
8554
|
const currentDir = dirname(fileURLToPath(import.meta.url));
|
|
8551
8555
|
const possiblePaths = [
|
|
8556
|
+
join4(currentDir, "..", "package.json"),
|
|
8552
8557
|
join4(currentDir, "..", "..", "package.json"),
|
|
8553
8558
|
join4(currentDir, "..", "..", "..", "package.json")
|
|
8554
8559
|
];
|
|
8555
8560
|
for (const pkgPath of possiblePaths) {
|
|
8556
8561
|
try {
|
|
8557
8562
|
const content = readFileSync2(pkgPath, "utf-8");
|
|
8558
|
-
|
|
8559
|
-
|
|
8563
|
+
const parsed = JSON.parse(content);
|
|
8564
|
+
if (isValidPackageJson(parsed)) {
|
|
8565
|
+
cachedPackageInfo = parsed;
|
|
8566
|
+
return cachedPackageInfo;
|
|
8567
|
+
}
|
|
8560
8568
|
} catch {
|
|
8561
8569
|
continue;
|
|
8562
8570
|
}
|
|
8563
8571
|
}
|
|
8564
|
-
cachedPackageInfo =
|
|
8572
|
+
cachedPackageInfo = fallback;
|
|
8565
8573
|
return cachedPackageInfo;
|
|
8566
8574
|
} catch {
|
|
8567
|
-
cachedPackageInfo =
|
|
8575
|
+
cachedPackageInfo = fallback;
|
|
8568
8576
|
return cachedPackageInfo;
|
|
8569
8577
|
}
|
|
8570
8578
|
}
|