diff options
| author | adamdottv <[email protected]> | 2025-05-01 07:28:37 -0500 |
|---|---|---|
| committer | adamdottv <[email protected]> | 2025-05-01 07:28:37 -0500 |
| commit | f2b36b92347622f4c7f150c8dcef7218960d0702 (patch) | |
| tree | f03a83e5a9a7647e9766437b69217f032f9ac5fe /internal/lsp | |
| parent | f224978bbcc0b2995e6492cf73d0fab930217e91 (diff) | |
| download | opencode-f2b36b92347622f4c7f150c8dcef7218960d0702.tar.gz opencode-f2b36b92347622f4c7f150c8dcef7218960d0702.zip | |
fix: remove lsp tool
Diffstat (limited to 'internal/lsp')
| -rw-r--r-- | internal/lsp/discovery/tool/lsp_tool.go | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/internal/lsp/discovery/tool/lsp_tool.go b/internal/lsp/discovery/tool/lsp_tool.go deleted file mode 100644 index c1f2f73a3..000000000 --- a/internal/lsp/discovery/tool/lsp_tool.go +++ /dev/null @@ -1,92 +0,0 @@ -package tool - -import ( - "context" - "encoding/json" - "fmt" - - "github.com/opencode-ai/opencode/internal/config" - "github.com/opencode-ai/opencode/internal/logging" - "github.com/opencode-ai/opencode/internal/lsp/discovery" -) - -// ConfigureLspServerRequest represents the request for the configureLspServer tool -type ConfigureLspServerRequest struct { - // Language identifier (e.g., "go", "typescript", "python") - Language string `json:"language"` -} - -// ConfigureLspServerResponse represents the response from the configureLspServer tool -type ConfigureLspServerResponse struct { - // Whether the server was found - Found bool `json:"found"` - - // Path to the server executable - Path string `json:"path,omitempty"` - - // Command to run the server - Command string `json:"command,omitempty"` - - // Arguments to pass to the command - Args []string `json:"args,omitempty"` - - // Installation instructions if the server was not found - InstallInstructions string `json:"installInstructions,omitempty"` - - // Whether the server was added to the configuration - Added bool `json:"added,omitempty"` -} - -// ConfigureLspServer searches for an LSP server for the given language -func ConfigureLspServer(ctx context.Context, rawArgs json.RawMessage) (any, error) { - var args ConfigureLspServerRequest - if err := json.Unmarshal(rawArgs, &args); err != nil { - return nil, fmt.Errorf("failed to parse arguments: %w", err) - } - - if args.Language == "" { - return nil, fmt.Errorf("language parameter is required") - } - - // Find the LSP server for the language - serverInfo, err := discovery.FindLSPServer(args.Language) - if err != nil { - // Server not found, return instructions - return ConfigureLspServerResponse{ - Found: false, - Command: serverInfo.Command, - Args: serverInfo.Args, - InstallInstructions: serverInfo.InstallCmd, - Added: false, - }, nil - } - - // Server found, update the configuration if available - added := false - if serverInfo.Available { - // Get the current configuration - cfg := config.Get() - if cfg != nil { - // Add the server to the configuration - cfg.LSP[args.Language] = config.LSPConfig{ - Disabled: false, - Command: serverInfo.Path, - Args: serverInfo.Args, - } - added = true - logging.Info("Added LSP server to configuration", - "language", args.Language, - "command", serverInfo.Command, - "path", serverInfo.Path) - } - } - - // Return the server information - return ConfigureLspServerResponse{ - Found: true, - Path: serverInfo.Path, - Command: serverInfo.Command, - Args: serverInfo.Args, - Added: added, - }, nil -}
\ No newline at end of file |
