General Introduction
Junie is an intelligent programming assistant from JetBrains designed for developers. It integrates with paid versions of JetBrains' IDEs (e.g., IntelliJ IDEA Ultimate, PyCharm Professional, WebStorm) to automate programming tasks with user-entered commands.Junie generates code, manages project consistency, and can run tests and check code quality. It supports macOS and Linux, not Windows at this time. Junie's core goal is to allow developers to focus on ideas and results, not repetitive tasks. Right now, Junie is in the Early Access Program and users need to request to be put on a waiting list to use it.
Function List
- Task automation: Code based on instructions, such as generating entity classes and implementing CRUD operations.
- code generation: Analyze the project context and generate code style compliant snippets.
- Project coherence management: Read project structure and custom specifications to maintain code uniformity.
- Code checking and testing: Utilize IDE features to check syntax and generate and run test cases.
- Real-time preview and adjustment: Display code changes can be modified or revoked by the user at any time.
- Multi-language support: Support for Java, Kotlin, Python, and more languages in the future.
- Complex task collaboration: Handles routine code and assists users in focusing on core logic.
Using Help
Installation process
Junie is a plug-in for the JetBrains IDE. Users need to prepare a supported IDE and system environment, and then install it as follows:
- Confirm system and IDE compatibility
- System Requirements: macOS or Linux (Windows not supported at this time).
- IDE Requirements: IntelliJ IDEA Ultimate, PyCharm Professional, or WebStorm (not supported by the free community edition).
- Make sure the IDE is up to date (e.g., version 2024 or 2025).
- Download and install Junie
- Open the IDE and go to
File > Settings > Plugins
(Mac forIntelliJ IDEA > Preferences > Plugins
). - look for sth.
JetBrains Junie
ClickInstall
If the IDE is installed, restart the IDE after installation.
- Open the IDE and go to
- Activation & Login
- Once installed, the IDE will display the Junie icon in the right hand column, click Open.
- For first time use, you need to log in to your JetBrains account and make sure that your account is added to the Junie Waiting List (apply via the official website).
- It is currently invite-only and cannot be activated by uninvited users.
- Setup Check
- In the Junie panel, view
Brave Mode
Whether or not to turn it on. When turned off by default, Junie requests confirmation before performing high-risk operations (such as deleting files), and it is recommended to keep the default setting.
- In the Junie panel, view
How to use Junie
Junie operates via chat-based commands, and the following are detailed step-by-step instructions and function descriptions:
1. Open the Junie interface
- Click on the Junie icon in the right column of the IDE to enter the chat panel. The interface contains command entry boxes and action buttons.
2. Input programming tasks
- Enter a specific task in the input box, for example:
- "Creating a User Class and Database Operations for Python Projects."
- "Implementing the GET and POST methods of a REST API with Kotlin."
- The directive needs to be clear that Junie will execute based on the project context.
3. Viewing and adjusting results
- Junie performs the task and then displays the changes at each step (e.g., new file, modified code).
- Clicking on a change file previews the code differences, which the user can accept, modify, or undo.
4. Operation and validation
- After generating the code, Junie can run the project or test it. For example:
- Type "Run all tests" to check that the tests passed.
- After starting the project, access the local URL (e.g.
http://localhost:8080
) authentication function.
5. Use of project specifications
- In the project root directory, create the
<.junie/guidelines.md>
file, write rules, for example:
- 类名使用 PascalCase。
- 每个方法需有注释。
- Junie will follow these rules to generate the code. It can also be entered:
Create a .junie/guidelines.md file based on project best practices.
6. Optimization and iteration
- If the results need to be adjusted, continue entering commands. Example:
- "Adding an email field to the User class."
- "Optimization API returns JSON format."
- Junie will continue to improve based on the previous mission.
Example of Featured Functions
Example 1: Implementing a REST API
- Input:
Implement a REST API for a Book entity with GET and POST endpoints in Kotlin.
- Junie generates entity classes, service layers and controllers and prompts to run the project when complete.
- Accessed in a browser
http://localhost:8080/books
The API is checked to see if the API is working properly.
Example 2: Generating Test Cases
- Input:
Write unit tests for all methods in UserService.java.
- Junie's in.
src/test
directory to generate test files. - strike (on the keyboard)
Run Tests
Verify code quality.
caveat
- The instructions are clear: Avoid vague instructions such as "write some code", which should be specific to the function.
- data security: Junie may send project fragments to JetBrains servers for processing, use with caution for sensitive projects.
- Platform Restrictions: Not available for Windows users at this time, wait for a later update.
application scenario
- Rapid prototyping
When you need to build functionality quickly, Junie generates the base code and developers refine the details. - Team Code Specification
Junie standardizes the code style according to project guidelines and is suitable for multi-person collaborative projects. - Learning Programming Frameworks
Beginners can use Junie to generate sample code to understand the framework implementation process. - Improve code quality
Junie runs tests and checks to help developers minimize errors.
QA
- What is the difference between Junie and JetBrains AI Assistant?
Junie specializes in automating tasks and code generation, while AI Assistant is more oriented towards code completion and suggestions. - Will Junie send my code?
Yes, Junie may send code snippets to JetBrains servers for processing, but user privacy is protected. - Can I use Junie with the Community IDE?
No, only paid IDEs such as IntelliJ IDEA Ultimate are supported. - How do I join the waiting list?
interviewshttps://www.jetbrains.com/junie/#join-waitlist
, fill out the information request. - What language models does Junie support?
The exact model is not disclosed, but is optimized by JetBrains to support multiple programming languages.