LSP support would improve cross-file project understanding

Open 💬 3 comments Opened Jul 8, 2026 by bigwest60
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the Codex App are you using (From “About Codex” dialog)?

Version 26.623.141536 • Released Jul 6, 2026

What subscription do you have?

Pro

What platform is your computer?

Darwin 25.5.0 arm64 arm

What issue are you seeing?

Codex works file-by-file and shell-by-shell. It has no integration with Language Server Protocol (LSP) servers, so it cannot query symbol definitions, find all references, resolve types, or ask a language server for project-wide understanding.

This causes Codex to propose changes that look correct in the current file but break callers in other files, miss existing utilities and re-implement them, or guess signatures instead of reading them from the project.

What steps can reproduce the bug?

Feedback ID: 019f3f0f-2314-7ff3-bb80-cf92eb22e6e3

What is the expected behavior?

Codex should be able to start/connect to language servers (e.g., typescript-language-server, rust-analyzer, pyright) and expose LSP queries as tools it can invoke, similar to read_file and shell.

Examples:

  • definition for the symbol under the cursor
  • references across the project
  • hover for inferred types
  • rename / workspace edits

This would let Codex plan multi-file changes against the real project graph instead of guessing from text.

Additional information

This is a feature request framed as a bug report because the issue template requires it. The underlying ask is for LSP integration. LSP gives a uniform interface across languages instead of Codex having to bundle per-language static analyzers.

View original on GitHub ↗

3 Comments

github-actions[bot] contributor · 1 month ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #30561

Powered by Codex Action

bigwest60 · 1 month ago

Reproducible project-context scenarios:

  1. Ask Codex to rename a function that is called in several files. It updates the current file but misses call sites elsewhere.
  2. Ask Codex to refactor shared logic. It often rewrites a local copy because it cannot discover the existing helper via find references.
  3. Ask Codex for the actual type of a symbol imported from another package/file. It infers from text rather than asking the language server.

In each case, an IDE with LSP would have the correct answer immediately; Codex does not.

mayank6091 · 1 month ago

@bigwest60 LSP support definitely improves context quality, but I'd also be interested in exposing why the agent selected a particular symbol or file. Understanding the reasoning path becomes really valuable when the agent confidently edits the wrong location despite having access to the correct project structure.