(/nōto/, notebook in Japanese)
-
Instant Commit Messages: Generate clear, context-aware messages based on staged changes.
-
Seamless Git Integration: Apply messages directly, skip the copy-paste.
-
Interactive Editing: Easily refine your commit message with the new
--editflag. -
Enhanced Configuration: Manage your LLM model preferences with an improved configuration interface.
Install noto globally using npm:
npm install -g @snelusha/notoAfter installation, you can run noto from any terminal.
Before using noto, you must configure your Google Generative API key. You can now provide your API key in two ways:
Set the NOTO_API_KEY environment variable globally so it's available across your system.
export NOTO_API_KEY=your_api_key_hereThen reload your terminal or run:
source ~/.zshrc # or ~/.bashrc or ~/.profilesetx NOTO_API_KEY "your_api_key_here"Note: You may need to restart your terminal (or system) for changes to take effect.
noto config key # or simply noto config key YOUR_API_KEYnoto will first look for the
NOTO_API_KEYenvironment variable. If it's not found, it will fall back to the local configuration.
You can also configure a specific Gemini mode (optional):
noto config modelIf you ever need to reset your configuration, you can now run:
noto config resetGenerate a new commit message:
notoApply the generated commit message to your current commit:
noto --apply # or simply noto -aCopy the generated commit message to your clipboard:
noto --copy # or simply noto -cRetrieve the previously generated commit message:
noto prevAmend the previously generated commit message:
noto prev --amend --edit # or simply: noto prev --amend -eNote: When using the
--amendflag with the noto prev command, the--edit(-e) flag is also required. This combination will allow you to modify (amend) the previous commit message before applying it.
Note: All of the flags shown above (--apply, --copy, --edit) can also be used with the noto prev command to work with the previously generated commit message.
Switch between branches in your git repo with an interactive prompt:
noto checkoutCreate and switch to a new branch:
noto checkout -b new-branch-nameUpdate noto to the latest version:
noto upgradenoto will automatically detect your installation method and update itself accordingly.
- 🚀 Get fast commits on the fly with
noto -ato streamline your workflow!
We welcome contributions and suggestions! If you have ideas or improvements, feel free to open a pull request or reach out with feedback. ✨
Thank you for using noto!
This project is licensed under the MIT License. © 2025 Sithija Nelusha Silva
