← Pando

JetBrains Junie memory you can find from any machine

Junie and Pando, for memory across machines.

Junie’s home page makes the promise in two sentences: "Teach Junie your team's coding standards, naming conventions, and review rules. It remembers across sessions." Where it keeps what it remembers, and whether that memory is on by default, neither that page nor any of the 50 pages of Junie’s documentation says. The one place that speaks to it is a bug report in JetBrains’ tracker, JUNIE-1602, dated 13 January 2026, before Junie left Beta in June, and still marked Submitted: "Those user-specific memory files should not be stored under non-user directories of the repository." If that still describes Junie, the memory is files inside your repository. Files there reach another machine when you commit and push them, and the report’s point is that these ones belong to one person, not to the repository. No JetBrains page says the memory crosses machines any other way.

JetBrains does not say: it promises that Junie remembers across sessions, but none of its documentation says where that memory is kept or whether it reaches another machine. Connect Junie to Pando and have it write decisions into your outline, where you can read them, and where every machine and every other agent you allow can reach them.

Set it up

  1. Add {"mcpServers": {"pando": {"url": "https://pando.ink/mcp"}}} to ~/.junie/mcp/mcp.json, so it works in every project, or to .junie/mcp/mcp.json at the root of one project.
  2. Start junie in a terminal and run /mcp. pando is listed as Authorization required: select it, choose Authorize, and approve the sign-in in Pando when the browser opens.

JetBrains’ docs do this step in what they call the MCP Installation Assistant, in case your screen looks different. The Junie plugin in your IDE uses the same configuration ("Junie CLI uses the same MCP JSON configuration as Junie in JetBrains IDEs"), but a release note of the plugin, 2xx.1218.xx, listed under Known issues: "MCP servers that require SSO during configuration can be configured only through the CLI (in the terminal)". Whether the plugin then uses the sign-in made there, the docs do not say, so start with Junie in the terminal. If Authorize does not finish, or you want Pando inside the IDE, JetBrains AI Assistant connects with a key, as further down.

Then give Junie the habit in one line of ~/.junie/AGENTS.md, the file Junie CLI reads global guidelines from: check Pando before assuming, and write each decision there with its reason.

What you approve in Pando

Pando asks you to sign in if this browser is not signed in yet, then shows its consent page with two levels, “Read and write your outline” and “Read your outline only”. Both start Junie on your whole outline; the second lets it write only in the bullet it remembers in. That bullet comes from the box underneath, ticked by default: a new bullet under Home, named after whatever Junie calls itself when it registers. With the box unticked, Junie remembers nowhere until you assign it a bullet under Agents and API keys. That is also where you revoke its token, which never expires by itself.

Holding it to one branch

Whole-outline reach is where every connector starts, and one press ends it. Open the branch Junie should work in, open Agents and API keys in Settings, tap its row under Your agents, and press Let it reach only “…”, the bullet you are in, where the quotes hold that branch’s words. After that Junie reads and writes that branch and what is under it, remembers there, and reaches nothing else in your outline, even on a read-only approval. Protecting a bullet is the finer tool: it stops Junie changing that bullet, not reading it.

What each place is for

When Junie’s own memory is enough

The outline is for what has to outlast that session. With the machine that ran it shut, the decision is still in your outline, and Claude Code or Codex on your other machine, if it may reach that branch, reads it from the same address Junie wrote it to.

JetBrains AI Assistant connects with a key

JetBrains AI Assistant, the other JetBrains client, keeps its own list of MCP servers, under Settings | Tools | AI Assistant | Model Context Protocol (MCP), and it has no OAuth sign-in of its own. An open issue in JetBrains’ tracker, LLM-25012, puts it this way: "JetBrains IDEs support only static token entry (manually pasted Bearer token) or local MCP processes. OAuth2 authentication flow is not supported." So AI Assistant reaches Pando with a key:

JetBrains’ docs also describe an option, Pass custom MCP servers, that hands Junie in AI Chat the servers "already configured in Settings | Tools | AI Assistant | Model Context Protocol (MCP)". Whether the key goes along with them, they do not say, and the Junie plugin’s own page says "Junie does not support security tokens in MCP configs". That route has not been tried with Pando.

What it costs

Pando costs nothing up to 1,000 bullets, with every feature and no payment card. On Junie’s side, no JetBrains page puts remote MCP servers behind a paid tier, and with your own model key "no JetBrains AI subscription is required."

Deeper

Connect an agent, about two minutes · The twelve tools · Which note apps an agent can reach · Who runs this