I went playing "padel" with my wife on the weekend. It's a mixture of tennis and squash. Anyway, there was this one time when I wanted to smash an awesome return off the back wall. Unfortunately, my face was in the way.

So I don't think it's visible, but in case it is, and you're wondering tomorrow at the Plugin Developer Conference what happened to me, it's this :)

No big bar fight. Just me and the tennis ball. Hope to see you there!
It's Friday evening, and you surely have plans, but you can mark it on your calendar next Tuesday!

Together with @halirutan and @RoboNovotny, we're hosting the Plugin Developer Conference 2026. Online!
Book 🗓️ November 10, 1:00 pm UTC, and join us and seven more speakers!!

Remember to register so you don't miss it: jb.gg/PluginDevConf2…
0
0
0
22
Only a few days after the JetBrains release, I'm glad to announce that the Wolfram Language Plugin 2026.3.0 is here.

It includes support for JetBrains IDE version 2026.3 and improved handling of Wolfram Language syntax. This update recognizes more named-character operators, fixes ApplyTo (//=) formatting and pattern precedence, and improves parsing of spans, output history, numbers, and escaped line breaks. It also brings clearer omitted-argument warnings and moves error reporting to JetBrains Marketplace.

If you don't get an automatic update notification, you can update manually through your IDE’s plugin settings.

plugins.jetbrains.com/plugin/7232-wo…
0
0
6
207
Did everyone forget that it was just 5 minutes ago that we were still hunting on Stack Overflow for a solution to this one bug we couldn’t solve??

Why can’t we have a more rational view of what remains when you strip away the hype around large language models, agents, and setup, even cheap or local models make a developer's life so much easier.

This week, I worked on the parser for the IntelliJ Wolfram Language plugin. When I started this project in 2012, there wasn't much information about the language, let alone a complete grammar. Most of the knowledge came from scattered documents and lots of discussions with other developers. I knew my implementation was good enough for the plugin, but it still had many quirks and gaps.

So I used Wolfram’s CodeParser, an awesome project mainly developed by Connor Gray and Suman Banerjee, as my Ground Truth. I wrote a small adapter for my plugin’s structure and a wrapper around CodeParser's CLI to connect it to my plugin's unit tests.

With that in place, I could use CodeParser's many test cases to compare results and identify differences. The agent could then work through the necessary fixes step by step. The Baseline made all the difference. The agent had something concrete to work against, and I could see when it went off track.

Now, there are 421 passing unit tests, each checking a specific case against the baseline Wolfram parser. I could have done this manually, but I estimate going through every reported difference and fixing it would have taken me weeks or months.

I used OpenCode as an agent inside the IDE through the Air plugin. The model was GPT-6.1 Sol, which is much cheaper than other frontier models like Astra. Reasoning was high for the planning and medium for the implementation and the rest. I made sure the agent knew how to navigate the attached SDK sources, had access to a research subagent to find information about the IntelliJ Platform, and knew how to interact with the IDE to run inspections, reformat, and use all the other MCP tools.

The whole thing used around 410 million tokens, of which 400 million were cache reads, and 6.5 million were cache writes (which means they were really cheap). That came to around $70 for my actual usage, which is OK given how much work has been done. For comparison, based on the same token breakdown, I estimate it would have cost roughly $550 with GPT-6 Astra. I’m sure that with smaller steps and maybe more guidance, this could have been done with a local Qwen model.

I think a lot of it comes down to knowing your tools. As a developer, you need to understand what you're asking the agent to do, how to give it the right tools, and, most importantly, how to check whether it actually did the right thing (yes, you can and should interrogate your agent about its own work; try it). Otherwise you're just hoping for the best.
2
4
14
1,021
Something something Gradle plugins, co-stream x.com/i/broadcasts/2…
0
0
1
41
Patrick Scheibe retweeted
There are people burning tokens to rewrite IntelliJ IDEA in Rust, so it starts faster. Then you find out it's TypeScript under the hood.
0.9s? Hold my beer!

This is from our internal channel today.
IJ with performance improvements we work on.
818ms.
64
28
590
47,558
Controlling FreeCAD with Python x.com/i/broadcasts/1…
0
0
1
40
Patrick Scheibe retweeted
A user says your plugin froze their IDE. You can't reproduce it.

JetBrains Marketplace now shows freeze reports linked to your plugin, with excerpts and full thread dumps.

I made a short walkthrough of the setup and investigation:
youtu.be/5Pdkj4lbTuc
0
11
19
1,912
Controlling FreeCAD with Python x.com/i/broadcasts/1…
0
0
0
46
Patrick Scheibe retweeted
IntelliJ plugin that persists a simple counter and toggle across IDE restarts? PropertiesComponent might be enough for primitive data types and Strings - scoped per-project or globally.
youtube.com/shorts/Lwqw00h…
2
1
1
160
Need native libraries in an IntelliJ Platform plugin?

The Platform is moving many integrations from JNA to FFM. I cover the plugin changes, JNA configuration, and when to consider FFM.

youtu.be/LNcr40P0viw
0
1
3
172
I made a quick Summer 2026 IntelliJ Platform roundup for plugin developers.

10 changes in ~5 minutes: native plugin variants, Starter/Driver testing, LSP API renames, Kotlin UI DSL migration, VFS listeners, and more.

Watch: youtu.be/5mQixmpezuI
0
4
3
268
ButtonBox Case Top and (maybe) RP2040 hardware fun with CLion x.com/i/broadcasts/1…
0
0
1
43
ButtonBox Case Top and (maybe) RP2040 hardware fun with CLion x.com/i/broadcasts/1…
0
0
0
43
Patrick Scheibe retweeted
An IntelliJ SDK plugin with a configurable settings pane that is Split Mode-aware is now clearer to code.

@halirutan and @picimako investigated this, and there’s now a quick guide on how to handle it.

TL;DR: If the Settings UI directly modifies the persisted project state, keep le` on the backend.
0
1
4
165
Someone created a pull request to the Key Promoter X with the title "Me Create Now Sad" which contains nothing more than an empty new file called "Now sad". I'm contemplating if that's some sort of sign. Anyway, now I'm sad.

github.com/halirutan/Inte…
0
0
0
47
People asked for an update to the SKILL.md to analyze UI freezes in the IntelliJ Platform. If you check the diff in the revision, you'll see that the skill now handles modern IntelliJ freezes more gracefully by adding coroutines and Dispatchers.Default starvation cases, a few new freeze patterns, and better fixes.

gist.github.com/halirutan/3639…
That was great fun, and thanks to everyone for joining. @Yuriy_Artamonov promised that we would share the SKILL.md file for analyzing thread dumps of UI freezes. Here you go:

gist.github.com/halirutan/3639…
0
1
1
90
New IntelliJ Platform docs page and companion video on Error Reporting! The video walks you through the practical side and explains how everything works.

Watch here: youtu.be/F4ZQe3AU3v4

I'll add the docs page in the first reply.
1
4
5
736