Feature Request: Enhanced Draft Configuration Options
Summary
Add support for additional configuration options in the draft section to improve AI-generated commit message quality and consistency through guidelines and examples.
Problem Statement
Currently, Lumen only supports basic commit_types customization. While this helps with commit type definitions, the AI could generate much better, more consistent messages if it had access to:
- Formatting guidelines (imperative tense, capitalization rules, etc.)
- Real examples of good commit messages
- Project-specific conventions beyond just type definitions
Proposed Configuration Schema
{
"draft": {
"commit_types": { /* existing functionality */ },
"guidelines": {
"format": "<type>([optional scope]): <description>",
"description_rules": [
"Use imperative, present tense: 'change' not 'changed' nor 'changes'",
"Don't capitalize the first letter",
"No dot (.) at the end",
"Keep description between 1-100 characters"
],
"scope_rules": [
"Optional part of the format",
"Should be 1-20 characters",
"Provides additional contextual information"
]
},
"examples": {
"feat": [
"feat: add user authentication middleware",
"feat(api): implement OAuth2 login flow",
"feat(ui): add dark mode toggle"
],
"fix": [
"fix: resolve memory leak in parser",
"fix(api): correct request validation logic",
"fix(ui): prevent button double-click submission"
],
"refactor": [
"refactor: simplify user validation logic",
"refactor(auth): extract common JWT utilities"
]
}
}
}
Benefits
- Better AI Understanding: Examples help the AI model understand project-specific patterns
- Consistent Formatting: Guidelines ensure uniform commit message structure
- Team Alignment: Project-specific rules help maintain team conventions
- Conventional Commits Support: Better adherence to standards like Angular/Conventional Commits
- Backward Compatible: Existing configs continue to work unchanged
Use Cases
- Teams following specific commit conventions (Angular, Conventional Commits, etc.)
- Projects with custom commit message formats
- Organizations with strict commit message standards
- Better AI training through context-aware examples
Implementation Notes
The additional configuration would be passed to the AI provider as part of the prompt context, helping it generate more accurate and consistent commit messages while maintaining the existing simple workflow.
Feature Request: Enhanced Draft Configuration Options
Summary
Add support for additional configuration options in the
draftsection to improve AI-generated commit message quality and consistency through guidelines and examples.Problem Statement
Currently, Lumen only supports basic
commit_typescustomization. While this helps with commit type definitions, the AI could generate much better, more consistent messages if it had access to:Proposed Configuration Schema
{ "draft": { "commit_types": { /* existing functionality */ }, "guidelines": { "format": "<type>([optional scope]): <description>", "description_rules": [ "Use imperative, present tense: 'change' not 'changed' nor 'changes'", "Don't capitalize the first letter", "No dot (.) at the end", "Keep description between 1-100 characters" ], "scope_rules": [ "Optional part of the format", "Should be 1-20 characters", "Provides additional contextual information" ] }, "examples": { "feat": [ "feat: add user authentication middleware", "feat(api): implement OAuth2 login flow", "feat(ui): add dark mode toggle" ], "fix": [ "fix: resolve memory leak in parser", "fix(api): correct request validation logic", "fix(ui): prevent button double-click submission" ], "refactor": [ "refactor: simplify user validation logic", "refactor(auth): extract common JWT utilities" ] } } }Benefits
Use Cases
Implementation Notes
The additional configuration would be passed to the AI provider as part of the prompt context, helping it generate more accurate and consistent commit messages while maintaining the existing simple workflow.