Configuration
Learn how to configure noidea to suit your workflow and preferences.
Configuration Methods
noidea can be configured through:
- Command line options: Temporary settings for individual commands
- Git config: Repository-specific settings
- Configuration file: Global settings in
~/.noidea/config.json
- Environment variables: For API keys and global settings
Initial Setup
Run the interactive setup assistant:
This will walk you through setting up noidea, including AI provider selection and API key configuration.
API Key Setup
To use AI-powered features, you need to configure an API key:
This securely stores your API key. See API Key Management for details.
Configuration File
The configuration file is located at ~/.noidea/config.json
. Here's an example:
{
"llm": {
"enabled": true,
"provider": "xai",
"api_key": "",
"model": "grok-2-1212",
"temperature": 0.7
},
"moai": {
"use_lint": false,
"faces_mode": "random",
"personality": "snarky_reviewer",
"personality_file": "~/.noidea/personalities.json"
}
}
LLM Settings
Setting | Description | Default |
---|---|---|
enabled |
Enable/disable AI features | true |
provider |
AI provider to use (xai, openai, deepseek) | xai |
model |
Model to use with the provider | grok-2-1212 |
temperature |
Randomness of responses (0.0-1.0) | 0.7 |
Moai Settings
Setting | Description | Default |
---|---|---|
use_lint |
Include linting results in feedback | false |
faces_mode |
Face selection mode (random, mood) | random |
personality |
Default personality for feedback | professional_sass |
include_history |
Include commit history for context | true |
Git Config Settings
Configure noidea through Git:
# Enable commit message suggestions
git config noidea.suggest true
# Set personality for feedback
git config noidea.personality supportive_mentor
# Use full diff analysis for better suggestions
git config noidea.suggest.full-diff true
Environment Variables
You can use environment variables for configuration:
# API keys
export XAI_API_KEY="your_api_key_here"
export OPENAI_API_KEY="your_api_key_here"
# General settings
export NOIDEA_PERSONALITY="snarky_reviewer"
Checking Current Configuration
To see your current configuration: