Jemma is a free and open-source command-line tool that brings the power of Google's Gemini API to your terminal. Get instant coding assistance, codebase explanations, and more, all without leaving your workflow.
-
Interactive Code Sessions: Ask Jemma coding questions and receive real-time suggestions.
-
Codebase Explanation: Understand complex projects quickly with Jemma's detailed codebase analysis.
-
Command Watching: Let Jemma monitor the output of your commands and provide insights.
-
Code Editing: Automatically apply fixes and features to your code with Jemma's edit capabilities.
pip install .
Before using Jemma, you need to configure your Google Gemini API key. You have two options:
- Using the
jemma-init
command:
jemma-init
This will prompt you to enter your API key, which will be stored in ~/.jemma/config
.
- Setting the
GEMINI_API_KEY
environment variable:
export GEMINI_API_KEY="YOUR_API_KEY"
You can further configure Jemma using the jemma-configure
command to select your preferred model and adjust settings like temperature and max output tokens.
jemma-configure
Jemma provides several commands to help you with your coding tasks:
- Interactive Code Session:
jemma --chat
Starts an interactive session where you can ask coding questions.
- Codebase Explanation:
jemma --explain
Provides a detailed explanation of your codebase.
- Command Watching:
jemma --watch "pytest"
Watches the output of the pytest
command and provides analysis.
- Code Editing:
jemma --edit "Fix the bug in the login function"
Asks Jemma to help you fix bugs or add features to your code.
-
Fix configuration and improve the use of the configuration file
-
Fix edit with line enumeration
-
Add support for multiple models (Gemini Pro, etc.)
-
Add support for non Gemini models
-
Implement configuration via command-line arguments
-
Create command for starting new projects
-
Improve error handling and logging
-
Add unit tests
-
MIT license