From ad180a289055ef241242ad838752aa0b8529284d Mon Sep 17 00:00:00 2001 From: Giulio De Pasquale Date: Mon, 18 Nov 2024 10:56:59 +0000 Subject: [PATCH 1/3] Update roles/home/aichat/roles/commitmessage.md --- roles/home/aichat/roles/commitmessage.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/roles/home/aichat/roles/commitmessage.md b/roles/home/aichat/roles/commitmessage.md index f1fd85a..f060169 100644 --- a/roles/home/aichat/roles/commitmessage.md +++ b/roles/home/aichat/roles/commitmessage.md @@ -22,6 +22,16 @@ Common types include: - chore: Changes to build process or auxiliary tools - perf: Performance improvements +Guidelines for generating commit messages: +1. Analyze the diff carefully, paying attention to the exact changes made. +2. Identify the primary purpose of the change (e.g., bug fix, new feature, refactoring). +3. Specify the affected file or component in the scope. +4. Provide a clear, concise description of what the change does, not why it was made. +5. If multiple changes are present, focus on the most significant one for the type and description. +6. Include technical details such as function names, variable changes, or specific code modifications. +7. For complex changes, use the optional body to provide additional context or explanations. +8. If the diff includes TODO comments or issue links, mention them in the optional footer. + Here are some examples of well-formatted commit messages: ### INPUT: From 45971753fd1a15d653d934142dba5b0b81aa59a2 Mon Sep 17 00:00:00 2001 From: Giulio De Pasquale Date: Mon, 18 Nov 2024 10:59:52 +0000 Subject: [PATCH 2/3] Update roles/home/aichat/roles/commitmessage.md --- roles/home/aichat/roles/commitmessage.md | 25 ++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/roles/home/aichat/roles/commitmessage.md b/roles/home/aichat/roles/commitmessage.md index f060169..ff4a4e4 100644 --- a/roles/home/aichat/roles/commitmessage.md +++ b/roles/home/aichat/roles/commitmessage.md @@ -3,7 +3,7 @@ model: ollama:pino-coder temperature: 0 --- -Your task is to generate a commit message for a given git diff. The commit message should follow the Conventional Commits specification, which includes a type, optional scope, and a brief description. The message should be concise, unambiguous, and capture the technical details of the changes made. +You are an expert software developer tasked with generating a precise and informative commit message for a given git diff. Your goal is to use the Tree of Thoughts (ToT) approach to thoroughly analyze the changes and produce the most accurate commit message possible. Commit Convention Format: (): @@ -22,15 +22,20 @@ Common types include: - chore: Changes to build process or auxiliary tools - perf: Performance improvements -Guidelines for generating commit messages: -1. Analyze the diff carefully, paying attention to the exact changes made. -2. Identify the primary purpose of the change (e.g., bug fix, new feature, refactoring). -3. Specify the affected file or component in the scope. -4. Provide a clear, concise description of what the change does, not why it was made. -5. If multiple changes are present, focus on the most significant one for the type and description. -6. Include technical details such as function names, variable changes, or specific code modifications. -7. For complex changes, use the optional body to provide additional context or explanations. -8. If the diff includes TODO comments or issue links, mention them in the optional footer. +Process: +1. Analyze the git diff thoroughly, considering multiple perspectives. +2. Generate at least three distinct "thoughts" or interpretations of the changes. +3. Evaluate each thought based on its relevance, accuracy, and completeness. +4. Expand on the most promising thought(s) by generating sub-thoughts. +5. Repeat steps 3-4 to create a tree of thoughts, exploring various reasoning paths. +6. Synthesize the most valuable insights from the tree to formulate the final commit message. + +For each thought and sub-thought, consider: +- The type of change (e.g., feature, bug fix, refactor, style, docs, etc.) +- The scope of the change (affected files, components, or systems) +- Technical details (function names, variable changes, algorithmic modifications) +- Potential impact on the codebase or system behavior +- Adherence to coding standards and best practices Here are some examples of well-formatted commit messages: From 36c8e99d7efcf827b6fb7ba86778d6a21dedef29 Mon Sep 17 00:00:00 2001 From: Giulio De Pasquale Date: Mon, 18 Nov 2024 11:41:55 +0000 Subject: [PATCH 3/3] Update roles/home/helix.nix --- roles/home/helix.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/home/helix.nix b/roles/home/helix.nix index e8ddd6e..f07450c 100644 --- a/roles/home/helix.nix +++ b/roles/home/helix.nix @@ -42,6 +42,7 @@ in gh gofumpt taplo + docker-compose-language-service ] ++ nodePkgs; sessionVariables = {