Milestone 1
1. Language support
Within the current architecture (LSP, DAP and the IDE’s own index), make the languages and frameworks covered by the major commercial IDEs work as well as we can:
Every language is checked against the same list: completion, navigation, find usages, refactoring, inspections, formatting, run, test, debug, build tools and its main frameworks. See Language support for where each language stands.
Capabilities the architecture can’t provide (such as structural search that needs a full semantic model, or deep cross-language refactoring) are stated on each language’s page.
2. Plugin ecosystem: SDK and marketplace
Develop- The plugin API becomes stable and follows semantic versioning; breaking changes only come with a major version.
- Complete documentation, with an API reference generated from the interface definitions.
- The Rust SDK, project templates and the
openidea-pluginCLI cover developing, debugging, testing and packaging.
- Authors register as publishers and submit new versions themselves; signatures, compatibility and package contents are checked automatically, and the review rules are public.
- Security: signature checks, permission display, revocation and key rotation (already in place), plus a process for reporting and removing malicious plugins.
- Search, category filters, and plugin pages with README, screenshots, release history, required permissions and compatible versions.
- A web marketplace: browse plugins without opening the IDE, and install them into the IDE with one click.
- Official plugins serve as API examples for every extension point, and the first community plugins get help getting listed.
3. Basic agent support
- Connect agents that speak ACP, including ones users add themselves.
- A chat panel that can send the selection, files and problems to the agent as context.
- Agent edits are shown as diffs and applied after review; tool calls need the user’s permission.
- A built-in MCP server lets external agents use the IDE’s code intelligence, run and debug features.
Not planned
- Loading IntelliJ Platform plugins: the plugin models differ, so they can’t be loaded directly. Themes can be imported (see Themes and fonts); other plugins need to be ported to the OpenIDEA plugin API.