Files
oh-my-opencode/packages/omo-codex/plugin/components/lsp/src/cli.ts
T
2026-05-29 12:18:24 +09:00

34 lines
908 B
JavaScript

#!/usr/bin/env node
import { argv, stderr } from "node:process";
import { disposeDefaultLspManager } from "@code-yeongyu/lsp-tools-mcp/dist/lsp/manager.js";
import { runPostToolUseHookCli } from "./codex-hook.js";
import { runLazyLspMcpServer } from "./lazy-lsp-mcp.js";
async function main(): Promise<void> {
const [command = "mcp", subcommand = ""] = argv.slice(2);
try {
if (command === "hook" && subcommand === "post-tool-use") {
await runPostToolUseHookCli();
return;
}
if (command === "mcp") {
await runLazyLspMcpServer();
return;
}
stderr.write("Usage: codex-lsp [mcp | hook post-tool-use]\n");
process.exitCode = 2;
} finally {
await disposeDefaultLspManager();
}
}
main().catch(async (error: unknown) => {
stderr.write(`${error instanceof Error ? (error.stack ?? error.message) : String(error)}\n`);
await disposeDefaultLspManager();
process.exitCode = 1;
});