chore(mcp): move lsp submodule under packages
This commit is contained in:
@@ -61,7 +61,7 @@ describe("getInstalledLspServers", () => {
|
||||
// given
|
||||
const userConfigDirectory = createTemporaryDirectory("omo-tools-lsp-user-")
|
||||
const workspaceDirectory = createTemporaryDirectory("omo-tools-lsp-enabled-")
|
||||
const lspCliDirectory = join(workspaceDirectory, "vendor", "lsp-tools-mcp", "dist")
|
||||
const lspCliDirectory = join(workspaceDirectory, "packages", "lsp-tools-mcp", "dist")
|
||||
mkdirSync(lspCliDirectory, { recursive: true })
|
||||
writeFileSync(join(lspCliDirectory, "cli.js"), "#!/usr/bin/env node\n", "utf-8")
|
||||
process.env.OPENCODE_CONFIG_DIR = userConfigDirectory
|
||||
|
||||
+3
-3
@@ -13,11 +13,11 @@ Tier 1 of the three-tier MCP system. Built-ins are created by `createBuiltinMcps
|
||||
| **websearch** | remote | `mcp.exa.ai` (default) or `mcp.tavily.com` | `EXA_API_KEY` (optional), `TAVILY_API_KEY` (if tavily) | Web search |
|
||||
| **context7** | remote | `mcp.context7.com/mcp` | `CONTEXT7_API_KEY` (optional) | Library documentation |
|
||||
| **grep_app** | remote | `mcp.grep.app` | None | GitHub code search |
|
||||
| **lsp** | local (stdio, node) | `node vendor/lsp-tools-mcp/dist/cli.js mcp` | `LSP_TOOLS_MCP_PROJECT_CONFIG=.opencode/lsp.json` | `status`, diagnostics, goto definition, references, symbols, prepare_rename, rename |
|
||||
| **lsp** | local (stdio, node) | `node packages/lsp-tools-mcp/dist/cli.js mcp` | `LSP_TOOLS_MCP_PROJECT_CONFIG=.opencode/lsp.json` | `status`, diagnostics, goto definition, references, symbols, prepare_rename, rename |
|
||||
|
||||
## SUBMODULE ARCHITECTURE
|
||||
|
||||
- The local `lsp` MCP is vendored as a git submodule at `vendor/lsp-tools-mcp/`.
|
||||
- The local `lsp` MCP is a git submodule at `packages/lsp-tools-mcp/`.
|
||||
- Upstream project: https://github.com/code-yeongyu/lsp-tools-mcp
|
||||
- OMO resolves the CLI path dynamically in `src/mcp/lsp.ts` so both `src/` and `dist/` runtime layouts work.
|
||||
|
||||
@@ -38,4 +38,4 @@ Tier 1 of the three-tier MCP system. Built-ins are created by `createBuiltinMcps
|
||||
| `websearch.ts` | Exa/Tavily provider with config |
|
||||
| `context7.ts` | Context7 with optional auth header |
|
||||
| `grep-app.ts` | Grep.app (no auth) |
|
||||
| `lsp.ts` | Local stdio MCP config for vendored `lsp-tools-mcp` |
|
||||
| `lsp.ts` | Local stdio MCP config for packaged `lsp-tools-mcp` |
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@ import { existsSync } from "node:fs"
|
||||
import { resolve } from "node:path"
|
||||
import { fileURLToPath } from "node:url"
|
||||
|
||||
const SUBMODULE_REL = "vendor/lsp-tools-mcp"
|
||||
const SUBMODULE_REL = "packages/lsp-tools-mcp"
|
||||
const CLI_REL = "dist/cli.js"
|
||||
const PROJECT_LSP_CONFIG = ".opencode/lsp.json"
|
||||
|
||||
|
||||
+1
-1
@@ -18,7 +18,7 @@ Tools registered via [`createToolRegistry()`](file:///Users/yeongyu/local-worksp
|
||||
| **Delegation** (2) | `task` (delegate, full skill+category support), `call_omo_agent` (named agent only: explore, librarian) |
|
||||
| **Skills/MCP** (2) | `skill` (load skill or invoke command), `skill_mcp` (call skill-embedded MCP tool/resource/prompt) |
|
||||
|
||||
> LSP tools are now provided by built-in MCP server `lsp` (Tier-1 stdio), backed by `vendor/lsp-tools-mcp/`. OpenCode-compatible aliases remain available (`lsp_status`, `lsp_diagnostics`, `lsp_goto_definition`, `lsp_find_references`, `lsp_symbols`, `lsp_prepare_rename`, `lsp_rename`).
|
||||
> LSP tools are now provided by built-in MCP server `lsp` (Tier-1 stdio), backed by `packages/lsp-tools-mcp/`. OpenCode-compatible aliases remain available (`lsp_status`, `lsp_diagnostics`, `lsp_goto_definition`, `lsp_find_references`, `lsp_symbols`, `lsp_prepare_rename`, `lsp_rename`).
|
||||
|
||||
### Conditional (up to +19 native tools)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user