Share what Junie produced

Junie does its best work on the tasks that end in prose: work out what this twelve-year-old Spring service actually does on startup, plan the Kotlin migration, review the module boundaries and say which ones are lying.

The output arrives in a tool window docked inside the IDE. The architect who needs to approve the module boundaries may well be in a different IDE, or in no IDE at all.

Attach the server, then write the guideline

Comma is a remote MCP server — an endpoint and a Bearer token from API tokens, registered in the JetBrains AI settings. The shape is the one in MCP setup.

Then make it standing, in .junie/guidelines.md:

When a task's deliverable is a document — a migration plan, an architecture
review, an investigation — publish it to Comma as an HTML report and reply with
the URL. Update the recorded report id rather than creating a new report.

Because guidelines are per project and committed, everyone on the repo inherits the behaviour without a setup conversation.

The enterprise-Java case for this

Long-lived JVM codebases produce exactly the documents that outlive the person who asked for them: the reason a module boundary is where it is, the risk register for a framework upgrade. A tool window is not a place for those. A URL with revision history is.

  • It renders, in a sandboxed iframe — call graphs, tables, stack traces intact.
  • The reader needs no IDE. Not IntelliJ, not a licence, not the repo.
  • Comments anchor to the claim, so the objection sits on the boundary being argued about — see commenting on HTML.
  • Revisions stack on one URL, so the link in the ticket ages well.

Worth knowing

  • reports:write is the whole requirement — see scoped tokens.
  • 5 MB per report body.
  • Snapshots, not live views.

Try it

Free — unlimited reports, commenters and revisions.

See MCP setup →

Related