Files
oh-my-opencode/packages/omo-codex/plugin/components/lsp/scripts/build-lsp-tools.mjs
T
2026-05-28 15:30:24 +09:00

32 lines
1.1 KiB
JavaScript

#!/usr/bin/env node
// Build the repository-level lsp-tools-mcp package used by codex-lsp.
import { execSync } from "node:child_process";
import { existsSync } from "node:fs";
import { dirname, join } from "node:path";
import { fileURLToPath } from "node:url";
const __dirname = dirname(fileURLToPath(import.meta.url));
const lspToolsDir = join(__dirname, "..", "..", "..", "..", "..", "lsp-tools-mcp");
const packageJson = join(lspToolsDir, "package.json");
const distCli = join(lspToolsDir, "dist", "cli.js");
const force = process.argv.includes("--force");
if (!force && existsSync(distCli)) {
process.exit(0);
}
if (!existsSync(packageJson)) {
console.error(
`lsp-tools-mcp package metadata is missing at ${packageJson}; build packages/lsp-tools-mcp before codex-lsp`,
);
process.exit(1);
}
console.log("Installing repository lsp-tools-mcp dependencies...");
execSync("npm ci", { cwd: lspToolsDir, stdio: "inherit" });
console.log("Building repository lsp-tools-mcp...");
execSync("npm run build", { cwd: lspToolsDir, stdio: "inherit" });
console.log("Done.");