Add Junie by JetBrains support to lemonade launch - #3621
Merged
Merged
Conversation
`lemonade launch junie` writes a Junie model profile to <junie home>/models/lemonade.json and starts Junie with `--model custom:lemonade`. Adds an integration guide and CLI tests.
feat(cli): add junie as a supported launch agent
superm1
approved these changes
Sep 20, 2026
bitgamma
approved these changes
Sep 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Spec Driven Development
This PR:
Summary
lemonade launch junie --model adds Junie as a launch agent, with --model, --api-key, and --agent-args behaving the same way as for the other agents. On launch, Lemonade loads the selected model, writes a Junie profile to ~/.junie/models/lemonade.json (or under $JUNIE_HOME) pointing to Lemonade's OpenAI-compatible endpoint and including the model's ctx_size, then starts Junie with that profile. Only this profile is updated, so other Junie profiles are left untouched, and if Junie is not installed the command prints installation instructions. Junie is also documented in the lemonade launch help output and integration guide.
Scope
Testing
Testing details:
Six new CLI tests in test/server_cli2.py cover the launch arguments, generated profile, --api-key, $JUNIE_HOME, preservation of other Junie profiles, and the Windows shim name. They use a stub Junie binary, so no real installation or inference backend is needed.
cd test
../.venv/bin/python -m unittest server_cli2.PersistentServerCLIClientTests -k junie -v
Result on macOS: five passed, the Windows test was skipped.
Also verified with Junie 26.9.14 on macOS:
./build/lemonade load Qwen3.5-4B-GGUF
junie --model custom:lemonade
Starting Junie against the generated profile works: the profile is accepted and the prompt is answered by the local model. A check on a native Windows machine would still be useful.
Documentation
Breaking Changes