Configuration System
Managing qmims configuration settings
qmims uses a configuration system to store user preferences and default settings. This allows you to customize the behavior of qmims to match your workflow.
Configuration File Location
Configuration settings are stored in:
- Linux/macOS:
~/.config/qmims/config.json
or~/.qmimsrc
- Windows:
%APPDATA%\qmims\config.json
or%USERPROFILE%\.qmimsrc
Configuration Structure
The configuration file uses a JSON structure with the following sections:
{ "user": { "name": "Your Name", "email": "your.email@example.com" }, "defaults": { "mode": "auto", "templateName": "detailed", "outputFilename": "README.md" }, "q": { "autoApproveEdits": false }, "git": { "autoCommit": false, "commitMessageFormat": "docs: update README.md using qmims" } }
Managing Configuration
You can manage your configuration using the config
command:
Listing Configuration
qmims config list
This will display all your current configuration settings.
Getting a Specific Setting
qmims config get defaults.mode
Setting a Configuration Value
qmims config set defaults.templateName detailed
Deleting a Configuration Value
qmims config delete q.autoApproveEdits
Interactive Setup
qmims config setup
This will guide you through setting up your configuration interactively, asking you questions about your preferences.
Note
The
config setup
command is recommended for first-time users or when you want to reset your configuration.Configuration Sections
User Information
Key | Description | Example |
---|---|---|
user.name | Your name | "John Doe" |
user.email | Your email address | "john.doe@example.com" |
Default Settings
Key | Description | Example |
---|---|---|
defaults.mode | Default generation mode | "auto" |
defaults.templateName | Default template name | "detailed" |
defaults.outputFilename | Default output filename | "README.md" |
Amazon Q Settings
Key | Description | Example |
---|---|---|
q.autoApproveEdits | Automatically approve edits (use with caution) | false |
Git Integration Settings
Key | Description | Example |
---|---|---|
git.autoCommit | Automatically commit changes to git | false |
git.commitMessageFormat | Format for git commit messages | "docs: update README.md using qmims" |
Tip
You can use environment variables to override configuration settings. For example, setting
QMIMS_DEFAULTS_MODE=template
will override the defaults.mode
setting.Configuration Best Practices
- Set Default Template: If you frequently use a specific template, set it as your default:
qmims config set defaults.templateName detailed
- Custom Output Path: If you prefer to store documentation in a specific location:
qmims config set defaults.outputFilename docs/README.md
- Git Integration: If you want to automatically commit changes:
qmims config set git.autoCommit true qmims config set git.commitMessageFormat "docs: update documentation"
- Use with Caution: Be careful with settings like
q.autoApproveEdits
, which can make changes without confirmation