MCPcopy Create free account
hub / github.com/different-ai/opencode-browser / resolveExtensionId

Function resolveExtensionId

bin/cli.js:149–173  ·  view source on GitHub ↗
({ allowPrompt = true, preferConfig = false } = {})

Source from the content-addressed store, hash-verified

147}
148
149async function resolveExtensionId({ allowPrompt = true, preferConfig = false } = {}) {
150 const override = getExtensionIdOverride();
151 if (override) return { id: override, source: "override" };
152
153 const config = loadConfig();
154 if (preferConfig && config?.extensionId) {
155 return { id: config.extensionId, source: "config" };
156 }
157
158 const manifestId = getExtensionIdFromManifest();
159 if (manifestId) {
160 return { id: manifestId, source: "manifest" };
161 }
162
163 if (!preferConfig && config?.extensionId) {
164 return { id: config.extensionId, source: "config" };
165 }
166
167 if (!allowPrompt) {
168 return { id: null, source: "missing" };
169 }
170
171 const extensionId = await ask(color("bright", "Paste Extension ID: "));
172 return { id: extensionId || null, source: extensionId ? "prompt" : "missing" };
173}
174
175function ensureDir(p) {
176 mkdirSync(p, { recursive: true });

Callers 2

installFunction · 0.85
updateFunction · 0.85

Calls 5

getExtensionIdOverrideFunction · 0.85
loadConfigFunction · 0.85
askFunction · 0.85
colorFunction · 0.85

Tested by

no test coverage detected