@elsikora/commitizen-plugin-commitlint-ai 1.2.0 → 2.0.0-dev.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +256 -57
- package/dist/cjs/application/constant/config-file-directory.constant.d.ts +4 -0
- package/dist/cjs/application/constant/config-file-directory.constant.js +9 -0
- package/dist/cjs/application/constant/config-file-directory.constant.js.map +1 -0
- package/dist/cjs/application/constant/config-module-name.constant.d.ts +4 -0
- package/dist/cjs/application/constant/config-module-name.constant.js +9 -0
- package/dist/cjs/application/constant/config-module-name.constant.js.map +1 -0
- package/dist/cjs/application/constant/index.d.ts +2 -0
- package/dist/cjs/application/index.d.ts +2 -0
- package/dist/cjs/application/interface/cli-interface-service-select-options.interface.d.ts +21 -0
- package/dist/cjs/application/interface/cli-interface-service.interface.d.ts +105 -0
- package/dist/cjs/application/interface/command-service.interface.d.ts +19 -0
- package/dist/cjs/application/interface/commit-repository.interface.d.ts +32 -0
- package/dist/cjs/application/interface/commit-validator.interface.d.ts +29 -0
- package/dist/cjs/application/interface/config-service.interface.d.ts +47 -0
- package/dist/cjs/application/interface/config.interface.d.ts +27 -0
- package/dist/cjs/application/interface/file-system-service.interface.d.ts +61 -0
- package/dist/cjs/application/interface/index.d.ts +9 -0
- package/dist/cjs/application/interface/llm-service.interface.d.ts +43 -0
- package/dist/cjs/application/use-case/configure-llm.use-case.d.ts +39 -0
- package/dist/cjs/application/use-case/configure-llm.use-case.js +373 -0
- package/dist/cjs/application/use-case/configure-llm.use-case.js.map +1 -0
- package/dist/cjs/application/use-case/generate-commit-message.use-case.d.ts +18 -0
- package/dist/cjs/application/use-case/generate-commit-message.use-case.js +49 -0
- package/dist/cjs/application/use-case/generate-commit-message.use-case.js.map +1 -0
- package/dist/cjs/application/use-case/index.d.ts +4 -0
- package/dist/cjs/application/use-case/manual-commit.use-case.d.ts +16 -0
- package/dist/cjs/application/use-case/manual-commit.use-case.js +81 -0
- package/dist/cjs/application/use-case/manual-commit.use-case.js.map +1 -0
- package/dist/cjs/application/use-case/validate-commit-message.use-case.d.ts +26 -0
- package/dist/cjs/application/use-case/validate-commit-message.use-case.js +76 -0
- package/dist/cjs/application/use-case/validate-commit-message.use-case.js.map +1 -0
- package/dist/cjs/domain/constant/index.d.ts +1 -0
- package/dist/cjs/domain/constant/numeric.constant.d.ts +25 -0
- package/dist/cjs/domain/constant/numeric.constant.js +42 -0
- package/dist/cjs/domain/constant/numeric.constant.js.map +1 -0
- package/dist/cjs/domain/entity/commit-message.entity.d.ts +47 -0
- package/dist/cjs/domain/entity/commit-message.entity.js +71 -0
- package/dist/cjs/domain/entity/commit-message.entity.js.map +1 -0
- package/dist/cjs/domain/entity/index.d.ts +2 -0
- package/dist/cjs/domain/entity/llm-configuration.entity.d.ts +73 -0
- package/dist/cjs/domain/entity/llm-configuration.entity.js +107 -0
- package/dist/cjs/domain/entity/llm-configuration.entity.js.map +1 -0
- package/dist/cjs/domain/enum/anthropic-model.enum.d.ts +18 -0
- package/dist/cjs/domain/enum/anthropic-model.enum.js +26 -0
- package/dist/cjs/domain/enum/anthropic-model.enum.js.map +1 -0
- package/dist/cjs/domain/enum/aws-bedrock-model.enum.d.ts +33 -0
- package/dist/cjs/domain/enum/aws-bedrock-model.enum.js +47 -0
- package/dist/cjs/domain/enum/aws-bedrock-model.enum.js.map +1 -0
- package/dist/cjs/domain/enum/azure-openai-model.enum.d.ts +17 -0
- package/dist/cjs/domain/enum/azure-openai-model.enum.js +26 -0
- package/dist/cjs/domain/enum/azure-openai-model.enum.js.map +1 -0
- package/dist/cjs/domain/enum/commit-mode.enum.d.ts +7 -0
- package/dist/cjs/domain/enum/commit-mode.enum.js +11 -0
- package/dist/cjs/domain/enum/commit-mode.enum.js.map +1 -0
- package/dist/cjs/domain/enum/google-model.enum.d.ts +16 -0
- package/dist/cjs/domain/enum/google-model.enum.js +25 -0
- package/dist/cjs/domain/enum/google-model.enum.js.map +1 -0
- package/dist/cjs/domain/enum/index.d.ts +9 -0
- package/dist/cjs/domain/enum/llm-provider.enum.d.ts +11 -0
- package/dist/cjs/domain/enum/llm-provider.enum.js +15 -0
- package/dist/cjs/domain/enum/llm-provider.enum.js.map +1 -0
- package/dist/cjs/domain/enum/log-level.enum.d.ts +9 -0
- package/dist/cjs/domain/enum/log-level.enum.js +13 -0
- package/dist/cjs/domain/enum/log-level.enum.js.map +1 -0
- package/dist/cjs/domain/enum/ollama-model.enum.d.ts +24 -0
- package/dist/cjs/domain/enum/ollama-model.enum.js +30 -0
- package/dist/cjs/domain/enum/ollama-model.enum.js.map +1 -0
- package/dist/cjs/domain/enum/openai-model.enum.d.ts +25 -0
- package/dist/cjs/domain/enum/openai-model.enum.js +35 -0
- package/dist/cjs/domain/enum/openai-model.enum.js.map +1 -0
- package/dist/cjs/domain/index.d.ts +3 -0
- package/dist/cjs/domain/value-object/api-key.value-object.d.ts +28 -0
- package/dist/cjs/domain/value-object/api-key.value-object.js +51 -0
- package/dist/cjs/domain/value-object/api-key.value-object.js.map +1 -0
- package/dist/cjs/domain/value-object/commit-body.value-object.d.ts +39 -0
- package/dist/cjs/domain/value-object/commit-body.value-object.js +66 -0
- package/dist/cjs/domain/value-object/commit-body.value-object.js.map +1 -0
- package/dist/cjs/domain/value-object/commit-header.value-object.d.ts +35 -0
- package/dist/cjs/domain/value-object/commit-header.value-object.js +63 -0
- package/dist/cjs/domain/value-object/commit-header.value-object.js.map +1 -0
- package/dist/cjs/domain/value-object/index.d.ts +3 -0
- package/dist/cjs/index.d.ts +14 -12
- package/dist/cjs/index.js +85 -83
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.d.ts +38 -0
- package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.js +207 -0
- package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.js.map +1 -0
- package/dist/cjs/infrastructure/commit-validator/index.d.ts +1 -0
- package/dist/cjs/infrastructure/di/container.d.ts +17 -0
- package/dist/cjs/infrastructure/di/container.js +76 -0
- package/dist/cjs/infrastructure/di/container.js.map +1 -0
- package/dist/cjs/infrastructure/di/index.d.ts +1 -0
- package/dist/cjs/infrastructure/git/git-commit.repository.d.ts +36 -0
- package/dist/cjs/infrastructure/git/git-commit.repository.js +78 -0
- package/dist/cjs/infrastructure/git/git-commit.repository.js.map +1 -0
- package/dist/cjs/infrastructure/git/index.d.ts +1 -0
- package/dist/cjs/infrastructure/index.d.ts +4 -0
- package/dist/cjs/infrastructure/llm/anthropic-llm.service.d.ts +39 -0
- package/dist/cjs/infrastructure/llm/anthropic-llm.service.js +323 -0
- package/dist/cjs/infrastructure/llm/anthropic-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.d.ts +60 -0
- package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.js +514 -0
- package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/azure-openai-llm.service.d.ts +45 -0
- package/dist/cjs/infrastructure/llm/azure-openai-llm.service.js +351 -0
- package/dist/cjs/infrastructure/llm/azure-openai-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/google-llm.service.d.ts +45 -0
- package/dist/cjs/infrastructure/llm/google-llm.service.js +335 -0
- package/dist/cjs/infrastructure/llm/google-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/index.d.ts +6 -0
- package/dist/cjs/infrastructure/llm/ollama-llm.service.d.ts +45 -0
- package/dist/cjs/infrastructure/llm/ollama-llm.service.js +387 -0
- package/dist/cjs/infrastructure/llm/ollama-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/openai-llm.service.d.ts +45 -0
- package/dist/cjs/infrastructure/llm/openai-llm.service.js +339 -0
- package/dist/cjs/infrastructure/llm/openai-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/service/cosmic-config.service.d.ts +66 -0
- package/dist/cjs/infrastructure/service/cosmic-config.service.js +176 -0
- package/dist/cjs/infrastructure/service/cosmic-config.service.js.map +1 -0
- package/dist/cjs/infrastructure/service/index.d.ts +4 -0
- package/dist/cjs/infrastructure/service/node-command.service.d.ts +45 -0
- package/dist/cjs/infrastructure/service/node-command.service.js +154 -0
- package/dist/cjs/infrastructure/service/node-command.service.js.map +1 -0
- package/dist/cjs/infrastructure/service/node-file-system.service.d.ts +62 -0
- package/dist/cjs/infrastructure/service/node-file-system.service.js +102 -0
- package/dist/cjs/infrastructure/service/node-file-system.service.js.map +1 -0
- package/dist/cjs/infrastructure/service/prompts-cli-interface.service.d.ts +117 -0
- package/dist/cjs/infrastructure/service/prompts-cli-interface.service.js +318 -0
- package/dist/cjs/infrastructure/service/prompts-cli-interface.service.js.map +1 -0
- package/dist/cjs/presentation/commitizen.adapter.d.ts +28 -0
- package/dist/cjs/presentation/commitizen.adapter.js +304 -0
- package/dist/cjs/presentation/commitizen.adapter.js.map +1 -0
- package/dist/cjs/presentation/index.d.ts +1 -0
- package/dist/esm/application/constant/config-file-directory.constant.d.ts +4 -0
- package/dist/esm/application/constant/config-file-directory.constant.js +7 -0
- package/dist/esm/application/constant/config-file-directory.constant.js.map +1 -0
- package/dist/esm/application/constant/config-module-name.constant.d.ts +4 -0
- package/dist/esm/application/constant/config-module-name.constant.js +7 -0
- package/dist/esm/application/constant/config-module-name.constant.js.map +1 -0
- package/dist/esm/application/constant/index.d.ts +2 -0
- package/dist/esm/application/index.d.ts +2 -0
- package/dist/esm/application/interface/cli-interface-service-select-options.interface.d.ts +21 -0
- package/dist/esm/application/interface/cli-interface-service.interface.d.ts +105 -0
- package/dist/esm/application/interface/command-service.interface.d.ts +19 -0
- package/dist/esm/application/interface/commit-repository.interface.d.ts +32 -0
- package/dist/esm/application/interface/commit-validator.interface.d.ts +29 -0
- package/dist/esm/application/interface/config-service.interface.d.ts +47 -0
- package/dist/esm/application/interface/config.interface.d.ts +27 -0
- package/dist/esm/application/interface/file-system-service.interface.d.ts +61 -0
- package/dist/esm/application/interface/index.d.ts +9 -0
- package/dist/esm/application/interface/llm-service.interface.d.ts +43 -0
- package/dist/esm/application/use-case/configure-llm.use-case.d.ts +39 -0
- package/dist/esm/application/use-case/configure-llm.use-case.js +371 -0
- package/dist/esm/application/use-case/configure-llm.use-case.js.map +1 -0
- package/dist/esm/application/use-case/generate-commit-message.use-case.d.ts +18 -0
- package/dist/esm/application/use-case/generate-commit-message.use-case.js +47 -0
- package/dist/esm/application/use-case/generate-commit-message.use-case.js.map +1 -0
- package/dist/esm/application/use-case/index.d.ts +4 -0
- package/dist/esm/application/use-case/manual-commit.use-case.d.ts +16 -0
- package/dist/esm/application/use-case/manual-commit.use-case.js +79 -0
- package/dist/esm/application/use-case/manual-commit.use-case.js.map +1 -0
- package/dist/esm/application/use-case/validate-commit-message.use-case.d.ts +26 -0
- package/dist/esm/application/use-case/validate-commit-message.use-case.js +74 -0
- package/dist/esm/application/use-case/validate-commit-message.use-case.js.map +1 -0
- package/dist/esm/domain/constant/index.d.ts +1 -0
- package/dist/esm/domain/constant/numeric.constant.d.ts +25 -0
- package/dist/esm/domain/constant/numeric.constant.js +26 -0
- package/dist/esm/domain/constant/numeric.constant.js.map +1 -0
- package/dist/esm/domain/entity/commit-message.entity.d.ts +47 -0
- package/dist/esm/domain/entity/commit-message.entity.js +69 -0
- package/dist/esm/domain/entity/commit-message.entity.js.map +1 -0
- package/dist/esm/domain/entity/index.d.ts +2 -0
- package/dist/esm/domain/entity/llm-configuration.entity.d.ts +73 -0
- package/dist/esm/domain/entity/llm-configuration.entity.js +105 -0
- package/dist/esm/domain/entity/llm-configuration.entity.js.map +1 -0
- package/dist/esm/domain/enum/anthropic-model.enum.d.ts +18 -0
- package/dist/esm/domain/enum/anthropic-model.enum.js +26 -0
- package/dist/esm/domain/enum/anthropic-model.enum.js.map +1 -0
- package/dist/esm/domain/enum/aws-bedrock-model.enum.d.ts +33 -0
- package/dist/esm/domain/enum/aws-bedrock-model.enum.js +47 -0
- package/dist/esm/domain/enum/aws-bedrock-model.enum.js.map +1 -0
- package/dist/esm/domain/enum/azure-openai-model.enum.d.ts +17 -0
- package/dist/esm/domain/enum/azure-openai-model.enum.js +26 -0
- package/dist/esm/domain/enum/azure-openai-model.enum.js.map +1 -0
- package/dist/esm/domain/enum/commit-mode.enum.d.ts +7 -0
- package/dist/esm/domain/enum/commit-mode.enum.js +11 -0
- package/dist/esm/domain/enum/commit-mode.enum.js.map +1 -0
- package/dist/esm/domain/enum/google-model.enum.d.ts +16 -0
- package/dist/esm/domain/enum/google-model.enum.js +25 -0
- package/dist/esm/domain/enum/google-model.enum.js.map +1 -0
- package/dist/esm/domain/enum/index.d.ts +9 -0
- package/dist/esm/domain/enum/llm-provider.enum.d.ts +11 -0
- package/dist/esm/domain/enum/llm-provider.enum.js +15 -0
- package/dist/esm/domain/enum/llm-provider.enum.js.map +1 -0
- package/dist/esm/domain/enum/log-level.enum.d.ts +9 -0
- package/dist/esm/domain/enum/log-level.enum.js +13 -0
- package/dist/esm/domain/enum/log-level.enum.js.map +1 -0
- package/dist/esm/domain/enum/ollama-model.enum.d.ts +24 -0
- package/dist/esm/domain/enum/ollama-model.enum.js +30 -0
- package/dist/esm/domain/enum/ollama-model.enum.js.map +1 -0
- package/dist/esm/domain/enum/openai-model.enum.d.ts +25 -0
- package/dist/esm/domain/enum/openai-model.enum.js +35 -0
- package/dist/esm/domain/enum/openai-model.enum.js.map +1 -0
- package/dist/esm/domain/index.d.ts +3 -0
- package/dist/esm/domain/value-object/api-key.value-object.d.ts +28 -0
- package/dist/esm/domain/value-object/api-key.value-object.js +49 -0
- package/dist/esm/domain/value-object/api-key.value-object.js.map +1 -0
- package/dist/esm/domain/value-object/commit-body.value-object.d.ts +39 -0
- package/dist/esm/domain/value-object/commit-body.value-object.js +64 -0
- package/dist/esm/domain/value-object/commit-body.value-object.js.map +1 -0
- package/dist/esm/domain/value-object/commit-header.value-object.d.ts +35 -0
- package/dist/esm/domain/value-object/commit-header.value-object.js +61 -0
- package/dist/esm/domain/value-object/commit-header.value-object.js.map +1 -0
- package/dist/esm/domain/value-object/index.d.ts +3 -0
- package/dist/esm/index.d.ts +14 -12
- package/dist/esm/index.js +38 -82
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.d.ts +38 -0
- package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.js +205 -0
- package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.js.map +1 -0
- package/dist/esm/infrastructure/commit-validator/index.d.ts +1 -0
- package/dist/esm/infrastructure/di/container.d.ts +17 -0
- package/dist/esm/infrastructure/di/container.js +63 -0
- package/dist/esm/infrastructure/di/container.js.map +1 -0
- package/dist/esm/infrastructure/di/index.d.ts +1 -0
- package/dist/esm/infrastructure/git/git-commit.repository.d.ts +36 -0
- package/dist/esm/infrastructure/git/git-commit.repository.js +76 -0
- package/dist/esm/infrastructure/git/git-commit.repository.js.map +1 -0
- package/dist/esm/infrastructure/git/index.d.ts +1 -0
- package/dist/esm/infrastructure/index.d.ts +4 -0
- package/dist/esm/infrastructure/llm/anthropic-llm.service.d.ts +39 -0
- package/dist/esm/infrastructure/llm/anthropic-llm.service.js +321 -0
- package/dist/esm/infrastructure/llm/anthropic-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.d.ts +60 -0
- package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.js +512 -0
- package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/azure-openai-llm.service.d.ts +45 -0
- package/dist/esm/infrastructure/llm/azure-openai-llm.service.js +349 -0
- package/dist/esm/infrastructure/llm/azure-openai-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/google-llm.service.d.ts +45 -0
- package/dist/esm/infrastructure/llm/google-llm.service.js +333 -0
- package/dist/esm/infrastructure/llm/google-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/index.d.ts +6 -0
- package/dist/esm/infrastructure/llm/ollama-llm.service.d.ts +45 -0
- package/dist/esm/infrastructure/llm/ollama-llm.service.js +385 -0
- package/dist/esm/infrastructure/llm/ollama-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/openai-llm.service.d.ts +45 -0
- package/dist/esm/infrastructure/llm/openai-llm.service.js +337 -0
- package/dist/esm/infrastructure/llm/openai-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/service/cosmic-config.service.d.ts +66 -0
- package/dist/esm/infrastructure/service/cosmic-config.service.js +174 -0
- package/dist/esm/infrastructure/service/cosmic-config.service.js.map +1 -0
- package/dist/esm/infrastructure/service/index.d.ts +4 -0
- package/dist/esm/infrastructure/service/node-command.service.d.ts +45 -0
- package/dist/esm/infrastructure/service/node-command.service.js +152 -0
- package/dist/esm/infrastructure/service/node-command.service.js.map +1 -0
- package/dist/esm/infrastructure/service/node-file-system.service.d.ts +62 -0
- package/dist/esm/infrastructure/service/node-file-system.service.js +100 -0
- package/dist/esm/infrastructure/service/node-file-system.service.js.map +1 -0
- package/dist/esm/infrastructure/service/prompts-cli-interface.service.d.ts +117 -0
- package/dist/esm/infrastructure/service/prompts-cli-interface.service.js +316 -0
- package/dist/esm/infrastructure/service/prompts-cli-interface.service.js.map +1 -0
- package/dist/esm/package.json +19 -0
- package/dist/esm/presentation/commitizen.adapter.d.ts +28 -0
- package/dist/esm/presentation/commitizen.adapter.js +302 -0
- package/dist/esm/presentation/commitizen.adapter.js.map +1 -0
- package/dist/esm/presentation/index.d.ts +1 -0
- package/index.cjs +1 -2
- package/package.json +42 -25
- package/dist/cjs/ManualProcess.d.ts +0 -6
- package/dist/cjs/ManualProcess.d.ts.map +0 -1
- package/dist/cjs/ManualProcess.js +0 -111
- package/dist/cjs/ManualProcess.js.map +0 -1
- package/dist/cjs/Process.d.ts +0 -6
- package/dist/cjs/Process.d.ts.map +0 -1
- package/dist/cjs/Process.js +0 -176
- package/dist/cjs/Process.js.map +0 -1
- package/dist/cjs/Question.d.ts +0 -46
- package/dist/cjs/Question.d.ts.map +0 -1
- package/dist/cjs/SectionBody.d.ts +0 -4
- package/dist/cjs/SectionBody.d.ts.map +0 -1
- package/dist/cjs/SectionFooter.d.ts +0 -13
- package/dist/cjs/SectionFooter.d.ts.map +0 -1
- package/dist/cjs/SectionHeader.d.ts +0 -15
- package/dist/cjs/SectionHeader.d.ts.map +0 -1
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/services/commitConfirmation.d.ts +0 -3
- package/dist/cjs/services/commitConfirmation.d.ts.map +0 -1
- package/dist/cjs/services/commitConfirmation.js +0 -122
- package/dist/cjs/services/commitConfirmation.js.map +0 -1
- package/dist/cjs/services/commitlintConfig.d.ts +0 -4
- package/dist/cjs/services/commitlintConfig.d.ts.map +0 -1
- package/dist/cjs/services/commitlintConfig.js +0 -198
- package/dist/cjs/services/commitlintConfig.js.map +0 -1
- package/dist/cjs/services/commitlintValidator.d.ts +0 -26
- package/dist/cjs/services/commitlintValidator.d.ts.map +0 -1
- package/dist/cjs/services/commitlintValidator.js +0 -146
- package/dist/cjs/services/commitlintValidator.js.map +0 -1
- package/dist/cjs/services/getRuleQuestionConfig.d.ts +0 -4
- package/dist/cjs/services/getRuleQuestionConfig.d.ts.map +0 -1
- package/dist/cjs/services/llm/anthropic.d.ts +0 -3
- package/dist/cjs/services/llm/anthropic.d.ts.map +0 -1
- package/dist/cjs/services/llm/anthropic.js +0 -118
- package/dist/cjs/services/llm/anthropic.js.map +0 -1
- package/dist/cjs/services/llm/config.d.ts +0 -5
- package/dist/cjs/services/llm/config.d.ts.map +0 -1
- package/dist/cjs/services/llm/config.js +0 -181
- package/dist/cjs/services/llm/config.js.map +0 -1
- package/dist/cjs/services/llm/index.d.ts +0 -6
- package/dist/cjs/services/llm/index.d.ts.map +0 -1
- package/dist/cjs/services/llm/index.js +0 -399
- package/dist/cjs/services/llm/index.js.map +0 -1
- package/dist/cjs/services/llm/models.d.ts +0 -34
- package/dist/cjs/services/llm/models.d.ts.map +0 -1
- package/dist/cjs/services/llm/models.js +0 -65
- package/dist/cjs/services/llm/models.js.map +0 -1
- package/dist/cjs/services/llm/openai.d.ts +0 -3
- package/dist/cjs/services/llm/openai.d.ts.map +0 -1
- package/dist/cjs/services/llm/openai.js +0 -111
- package/dist/cjs/services/llm/openai.js.map +0 -1
- package/dist/cjs/services/llm/types.d.ts +0 -71
- package/dist/cjs/services/llm/types.d.ts.map +0 -1
- package/dist/cjs/store/defaultPromptConfigs.d.ts +0 -33
- package/dist/cjs/store/defaultPromptConfigs.d.ts.map +0 -1
- package/dist/cjs/store/defaultPromptConfigs.js +0 -39
- package/dist/cjs/store/defaultPromptConfigs.js.map +0 -1
- package/dist/cjs/store/prompts.d.ts +0 -6
- package/dist/cjs/store/prompts.d.ts.map +0 -1
- package/dist/cjs/store/prompts.js +0 -40
- package/dist/cjs/store/prompts.js.map +0 -1
- package/dist/cjs/store/rules.d.ts +0 -7
- package/dist/cjs/store/rules.d.ts.map +0 -1
- package/dist/cjs/types.d.ts +0 -3
- package/dist/cjs/types.d.ts.map +0 -1
- package/dist/cjs/utils/case-function.d.ts +0 -9
- package/dist/cjs/utils/case-function.d.ts.map +0 -1
- package/dist/cjs/utils/full-stop-function.d.ts +0 -9
- package/dist/cjs/utils/full-stop-function.d.ts.map +0 -1
- package/dist/cjs/utils/leading-blank-function.d.ts +0 -8
- package/dist/cjs/utils/leading-blank-function.d.ts.map +0 -1
- package/dist/cjs/utils/rules.d.ts +0 -26
- package/dist/cjs/utils/rules.d.ts.map +0 -1
- package/dist/esm/ManualProcess.d.ts +0 -6
- package/dist/esm/ManualProcess.d.ts.map +0 -1
- package/dist/esm/ManualProcess.js +0 -107
- package/dist/esm/ManualProcess.js.map +0 -1
- package/dist/esm/Process.d.ts +0 -6
- package/dist/esm/Process.d.ts.map +0 -1
- package/dist/esm/Process.js +0 -172
- package/dist/esm/Process.js.map +0 -1
- package/dist/esm/Question.d.ts +0 -46
- package/dist/esm/Question.d.ts.map +0 -1
- package/dist/esm/SectionBody.d.ts +0 -4
- package/dist/esm/SectionBody.d.ts.map +0 -1
- package/dist/esm/SectionFooter.d.ts +0 -13
- package/dist/esm/SectionFooter.d.ts.map +0 -1
- package/dist/esm/SectionHeader.d.ts +0 -15
- package/dist/esm/SectionHeader.d.ts.map +0 -1
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/services/commitConfirmation.d.ts +0 -3
- package/dist/esm/services/commitConfirmation.d.ts.map +0 -1
- package/dist/esm/services/commitConfirmation.js +0 -120
- package/dist/esm/services/commitConfirmation.js.map +0 -1
- package/dist/esm/services/commitlintConfig.d.ts +0 -4
- package/dist/esm/services/commitlintConfig.d.ts.map +0 -1
- package/dist/esm/services/commitlintConfig.js +0 -196
- package/dist/esm/services/commitlintConfig.js.map +0 -1
- package/dist/esm/services/commitlintValidator.d.ts +0 -26
- package/dist/esm/services/commitlintValidator.d.ts.map +0 -1
- package/dist/esm/services/commitlintValidator.js +0 -142
- package/dist/esm/services/commitlintValidator.js.map +0 -1
- package/dist/esm/services/getRuleQuestionConfig.d.ts +0 -4
- package/dist/esm/services/getRuleQuestionConfig.d.ts.map +0 -1
- package/dist/esm/services/llm/anthropic.d.ts +0 -3
- package/dist/esm/services/llm/anthropic.d.ts.map +0 -1
- package/dist/esm/services/llm/anthropic.js +0 -116
- package/dist/esm/services/llm/anthropic.js.map +0 -1
- package/dist/esm/services/llm/config.d.ts +0 -5
- package/dist/esm/services/llm/config.d.ts.map +0 -1
- package/dist/esm/services/llm/config.js +0 -178
- package/dist/esm/services/llm/config.js.map +0 -1
- package/dist/esm/services/llm/index.d.ts +0 -6
- package/dist/esm/services/llm/index.d.ts.map +0 -1
- package/dist/esm/services/llm/index.js +0 -394
- package/dist/esm/services/llm/index.js.map +0 -1
- package/dist/esm/services/llm/models.d.ts +0 -34
- package/dist/esm/services/llm/models.d.ts.map +0 -1
- package/dist/esm/services/llm/models.js +0 -60
- package/dist/esm/services/llm/models.js.map +0 -1
- package/dist/esm/services/llm/openai.d.ts +0 -3
- package/dist/esm/services/llm/openai.d.ts.map +0 -1
- package/dist/esm/services/llm/openai.js +0 -109
- package/dist/esm/services/llm/openai.js.map +0 -1
- package/dist/esm/services/llm/types.d.ts +0 -71
- package/dist/esm/services/llm/types.d.ts.map +0 -1
- package/dist/esm/store/defaultPromptConfigs.d.ts +0 -33
- package/dist/esm/store/defaultPromptConfigs.d.ts.map +0 -1
- package/dist/esm/store/defaultPromptConfigs.js +0 -35
- package/dist/esm/store/defaultPromptConfigs.js.map +0 -1
- package/dist/esm/store/prompts.d.ts +0 -6
- package/dist/esm/store/prompts.d.ts.map +0 -1
- package/dist/esm/store/prompts.js +0 -38
- package/dist/esm/store/prompts.js.map +0 -1
- package/dist/esm/store/rules.d.ts +0 -7
- package/dist/esm/store/rules.d.ts.map +0 -1
- package/dist/esm/types.d.ts +0 -3
- package/dist/esm/types.d.ts.map +0 -1
- package/dist/esm/utils/case-function.d.ts +0 -9
- package/dist/esm/utils/case-function.d.ts.map +0 -1
- package/dist/esm/utils/full-stop-function.d.ts +0 -9
- package/dist/esm/utils/full-stop-function.d.ts.map +0 -1
- package/dist/esm/utils/leading-blank-function.d.ts +0 -8
- package/dist/esm/utils/leading-blank-function.d.ts.map +0 -1
- package/dist/esm/utils/rules.d.ts +0 -26
- package/dist/esm/utils/rules.d.ts.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -1,394 +0,0 @@
|
|
|
1
|
-
import { exec } from 'node:child_process';
|
|
2
|
-
import { promisify } from 'node:util';
|
|
3
|
-
import chalk from 'chalk';
|
|
4
|
-
import { generateCommitWithAnthropic } from './anthropic.js';
|
|
5
|
-
import { getLLMConfig, setLLMConfig } from './config.js';
|
|
6
|
-
import { OPENAI_MODEL_CHOICES, ANTHROPIC_MODEL_CHOICES } from './models.js';
|
|
7
|
-
import { generateCommitWithOpenAI } from './openai.js';
|
|
8
|
-
|
|
9
|
-
// @ts-ignore
|
|
10
|
-
const execAsync = promisify(exec);
|
|
11
|
-
async function generateCommitMessage(context) {
|
|
12
|
-
const config = getLLMConfig();
|
|
13
|
-
if (!config) {
|
|
14
|
-
throw new Error("LLM not configured. Please run selectLLMProvider first.");
|
|
15
|
-
}
|
|
16
|
-
// Check if we're in manual mode
|
|
17
|
-
if (config.mode === "manual") {
|
|
18
|
-
throw new Error("Manual mode enabled. Skipping AI generation.");
|
|
19
|
-
}
|
|
20
|
-
// Validate provider only, not model
|
|
21
|
-
if (!isValidProvider(config.provider)) {
|
|
22
|
-
throw new Error(`Invalid LLM provider: ${config.provider}. Please reconfigure with a valid provider.`);
|
|
23
|
-
}
|
|
24
|
-
// Get git diff for better context
|
|
25
|
-
try {
|
|
26
|
-
// Get staged files for scope inference
|
|
27
|
-
const { stdout: stagedFiles } = await execAsync("git diff --name-only --cached");
|
|
28
|
-
context.files = stagedFiles;
|
|
29
|
-
// Get directory structure for better scope inference
|
|
30
|
-
if (stagedFiles.trim()) {
|
|
31
|
-
const directories = stagedFiles
|
|
32
|
-
.split("\n")
|
|
33
|
-
.filter(Boolean)
|
|
34
|
-
.map((file) => {
|
|
35
|
-
const parts = file.split("/");
|
|
36
|
-
return parts.length > 1 ? parts[0] : "root";
|
|
37
|
-
})
|
|
38
|
-
.filter((v, index, a) => a.indexOf(v) === index) // Remove duplicates
|
|
39
|
-
.join(", ");
|
|
40
|
-
// eslint-disable-next-line @elsikora-typescript/restrict-plus-operands
|
|
41
|
-
context.files += `\n\nModified directories: ${directories}`;
|
|
42
|
-
}
|
|
43
|
-
// Get the diff for content analysis
|
|
44
|
-
const { stdout: diff } = await execAsync("git diff --cached");
|
|
45
|
-
if (!context.diff)
|
|
46
|
-
context.diff = diff;
|
|
47
|
-
}
|
|
48
|
-
catch {
|
|
49
|
-
console.warn("Failed to get git diff information, continuing without it");
|
|
50
|
-
}
|
|
51
|
-
// Generate commit with selected provider
|
|
52
|
-
if (config.provider === "openai") {
|
|
53
|
-
return generateCommitWithOpenAI(config.apiKey, config.model, context);
|
|
54
|
-
}
|
|
55
|
-
else if (config.provider === "anthropic") {
|
|
56
|
-
return generateCommitWithAnthropic(config.apiKey, config.model, context);
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
// This shouldn't happen due to the validation above, but just in case
|
|
60
|
-
throw new Error(`Unsupported provider: ${config.provider}`);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-module-boundary-types
|
|
64
|
-
async function selectLLMProvider(inquirer) {
|
|
65
|
-
// Check if we have a partial config
|
|
66
|
-
const existingConfig = getLLMConfig();
|
|
67
|
-
let provider;
|
|
68
|
-
let model;
|
|
69
|
-
let mode = "auto"; // Default mode
|
|
70
|
-
const isProviderExist = Boolean(existingConfig?.provider);
|
|
71
|
-
const isModelExist = Boolean(existingConfig?.model) && existingConfig?.model !== "undefined";
|
|
72
|
-
if (existingConfig && isProviderExist && isModelExist) {
|
|
73
|
-
// We have a saved config
|
|
74
|
-
provider = existingConfig.provider;
|
|
75
|
-
model = existingConfig.model;
|
|
76
|
-
mode = existingConfig.mode ?? "auto";
|
|
77
|
-
const modelDisplay = model ?? "[not set]";
|
|
78
|
-
// eslint-disable-next-line @elsikora-sonar/no-nested-conditional
|
|
79
|
-
const providerDisplay = provider ? (provider === "openai" ? "OpenAI" : "Anthropic") : "[not set]";
|
|
80
|
-
const modeDisplay = mode || "auto";
|
|
81
|
-
// First check if we want to use the existing config at all
|
|
82
|
-
const { useExisting } = await inquirer.prompt([
|
|
83
|
-
{
|
|
84
|
-
// eslint-disable-next-line @elsikora-typescript/naming-convention
|
|
85
|
-
default: true,
|
|
86
|
-
message: `Use saved configuration? (Provider: ${providerDisplay}, Model: ${modelDisplay}, Mode: ${modeDisplay})`,
|
|
87
|
-
name: "useExisting",
|
|
88
|
-
type: "confirm",
|
|
89
|
-
},
|
|
90
|
-
]);
|
|
91
|
-
if (useExisting) {
|
|
92
|
-
// We're using existing config, but we need to check if it's complete
|
|
93
|
-
// We have a provider but it's invalid
|
|
94
|
-
if (provider && !isValidProvider(provider)) {
|
|
95
|
-
console.log(chalk.yellow(`Provider "${provider}" is not supported. Please select a valid provider below.`));
|
|
96
|
-
// Fall through to ask for a new provider
|
|
97
|
-
}
|
|
98
|
-
else if (!provider) {
|
|
99
|
-
console.log(chalk.yellow(`No AI provider specified in configuration. Please select a provider below.`));
|
|
100
|
-
// Fall through to ask for a provider
|
|
101
|
-
}
|
|
102
|
-
else if (!model && mode === "auto") {
|
|
103
|
-
// We have a valid provider but no model in auto mode
|
|
104
|
-
console.log(chalk.yellow("No model saved in configuration. Please select a model."));
|
|
105
|
-
if (provider === "openai") {
|
|
106
|
-
const response = await inquirer.prompt([
|
|
107
|
-
{
|
|
108
|
-
choices: OPENAI_MODEL_CHOICES,
|
|
109
|
-
message: "Select an OpenAI model:",
|
|
110
|
-
name: "model",
|
|
111
|
-
type: "list",
|
|
112
|
-
},
|
|
113
|
-
]);
|
|
114
|
-
if (response.model === "custom") {
|
|
115
|
-
const customResponse = await inquirer.prompt([
|
|
116
|
-
{
|
|
117
|
-
message: "Enter the OpenAI model name:",
|
|
118
|
-
name: "customModel",
|
|
119
|
-
type: "input",
|
|
120
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
121
|
-
validate: (input) => {
|
|
122
|
-
if (!input)
|
|
123
|
-
return "Model name is required";
|
|
124
|
-
return true;
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
]);
|
|
128
|
-
model = customResponse.customModel;
|
|
129
|
-
}
|
|
130
|
-
else {
|
|
131
|
-
model = response.model;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
else if (provider === "anthropic") {
|
|
135
|
-
const response = await inquirer.prompt([
|
|
136
|
-
{
|
|
137
|
-
choices: ANTHROPIC_MODEL_CHOICES,
|
|
138
|
-
message: "Select an Anthropic model:",
|
|
139
|
-
name: "model",
|
|
140
|
-
type: "list",
|
|
141
|
-
},
|
|
142
|
-
]);
|
|
143
|
-
if (response.model === "custom") {
|
|
144
|
-
const customResponse = await inquirer.prompt([
|
|
145
|
-
{
|
|
146
|
-
message: "Enter the Anthropic model name:",
|
|
147
|
-
name: "customModel",
|
|
148
|
-
type: "input",
|
|
149
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
150
|
-
validate: (input) => {
|
|
151
|
-
if (!input)
|
|
152
|
-
return "Model name is required";
|
|
153
|
-
return true;
|
|
154
|
-
},
|
|
155
|
-
},
|
|
156
|
-
]);
|
|
157
|
-
model = customResponse.customModel;
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
model = response.model;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
// Update the existing config with the selected model
|
|
164
|
-
existingConfig.model = model;
|
|
165
|
-
// Save the updated config to file with the selected model
|
|
166
|
-
setLLMConfig({
|
|
167
|
-
apiKey: existingConfig.apiKey || "",
|
|
168
|
-
mode: existingConfig.mode ?? "auto",
|
|
169
|
-
model,
|
|
170
|
-
provider: existingConfig.provider,
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
// In manual mode, we don't need a model or provider, so skip forward
|
|
174
|
-
if (mode === "manual") {
|
|
175
|
-
// Even in manual mode, save the config to remember the mode choice
|
|
176
|
-
// eslint-disable-next-line @elsikora/typescript/no-non-null-assertion
|
|
177
|
-
const oldConfig = getLLMConfig();
|
|
178
|
-
setLLMConfig({
|
|
179
|
-
...oldConfig,
|
|
180
|
-
mode: "manual",
|
|
181
|
-
});
|
|
182
|
-
console.log(chalk.green(`✅ Manual commit mode configured successfully!`));
|
|
183
|
-
return;
|
|
184
|
-
}
|
|
185
|
-
// Now check if we need an API key (only in auto mode)
|
|
186
|
-
if (existingConfig.apiKey) {
|
|
187
|
-
// We have a complete config with API key
|
|
188
|
-
console.log(chalk.green(`✅ Using existing configuration.`));
|
|
189
|
-
return;
|
|
190
|
-
}
|
|
191
|
-
else {
|
|
192
|
-
// Double-check environment variables again
|
|
193
|
-
const environmentVariableName = provider === "openai" ? "OPENAI_API_KEY" : "ANTHROPIC_API_KEY";
|
|
194
|
-
let environmentApiKey;
|
|
195
|
-
try {
|
|
196
|
-
if (typeof process !== "undefined" && process?.env) {
|
|
197
|
-
environmentApiKey = provider === "openai" ? process.env.OPENAI_API_KEY : process.env.ANTHROPIC_API_KEY;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
catch {
|
|
201
|
-
// Ignore error
|
|
202
|
-
}
|
|
203
|
-
if (environmentApiKey) {
|
|
204
|
-
// Found API key in environment variable
|
|
205
|
-
console.log(chalk.green(`✅ Found ${provider === "openai" ? "OpenAI" : "Anthropic"} API key in environment variable ${environmentVariableName}`));
|
|
206
|
-
existingConfig.apiKey = environmentApiKey;
|
|
207
|
-
setLLMConfig(existingConfig);
|
|
208
|
-
return;
|
|
209
|
-
}
|
|
210
|
-
console.log(chalk.yellow(`No ${provider === "openai" ? "OpenAI" : "Anthropic"} API key found in environment.`));
|
|
211
|
-
console.log(chalk.blue(`Tip: Set the ${environmentVariableName} environment variable to avoid entering your API key each time.`));
|
|
212
|
-
console.log(chalk.blue(`You can create a .env file in your project root with ${environmentVariableName}=your-key-here`));
|
|
213
|
-
const { apiKey } = await inquirer.prompt([
|
|
214
|
-
{
|
|
215
|
-
message: `Enter your ${provider === "openai" ? "OpenAI" : "Anthropic"} API key:`,
|
|
216
|
-
name: "apiKey",
|
|
217
|
-
type: "password",
|
|
218
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type,@elsikora-sonar/function-return-type
|
|
219
|
-
validate: (input) => {
|
|
220
|
-
if (!input)
|
|
221
|
-
return "API key is required";
|
|
222
|
-
if (provider === "openai" && !input.startsWith("sk-")) {
|
|
223
|
-
return 'OpenAI API keys typically start with "sk-"';
|
|
224
|
-
}
|
|
225
|
-
return true;
|
|
226
|
-
},
|
|
227
|
-
},
|
|
228
|
-
]);
|
|
229
|
-
// Update the config with the API key for this session only
|
|
230
|
-
// @ts-ignore
|
|
231
|
-
const config = { apiKey, mode, model, provider };
|
|
232
|
-
setLLMConfig(config);
|
|
233
|
-
console.log(chalk.green(`✅ Configuration completed successfully!`));
|
|
234
|
-
return;
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
// No config or user wants to change it, run the full setup
|
|
239
|
-
// First ask for commit mode preference
|
|
240
|
-
const modeResponse = await inquirer.prompt([
|
|
241
|
-
{
|
|
242
|
-
choices: [
|
|
243
|
-
{ name: "Manual (traditional commitizen)", value: "manual" },
|
|
244
|
-
{ name: "AI-powered (auto)", value: "auto" },
|
|
245
|
-
],
|
|
246
|
-
default: "manual",
|
|
247
|
-
message: "Select your preferred commit mode:",
|
|
248
|
-
name: "mode",
|
|
249
|
-
type: "list",
|
|
250
|
-
},
|
|
251
|
-
]);
|
|
252
|
-
mode = modeResponse.mode;
|
|
253
|
-
// If the user selected manual mode, we don't need provider or model
|
|
254
|
-
if (mode === "manual") {
|
|
255
|
-
// Save minimal config with just the mode
|
|
256
|
-
// Note: explicit provider/model values to make debugging easier
|
|
257
|
-
// eslint-disable-next-line @elsikora/typescript/no-non-null-assertion
|
|
258
|
-
const oldConfig = getLLMConfig();
|
|
259
|
-
setLLMConfig({
|
|
260
|
-
...oldConfig,
|
|
261
|
-
mode: "manual",
|
|
262
|
-
});
|
|
263
|
-
console.log(chalk.green(`✅ Manual commit mode configured successfully!`));
|
|
264
|
-
return;
|
|
265
|
-
}
|
|
266
|
-
// Only proceed with provider/model selection if in auto mode
|
|
267
|
-
const providerResponse = await inquirer.prompt([
|
|
268
|
-
{
|
|
269
|
-
choices: [
|
|
270
|
-
{ name: "OpenAI", value: "openai" },
|
|
271
|
-
{ name: "Anthropic", value: "anthropic" },
|
|
272
|
-
],
|
|
273
|
-
message: "Select an LLM provider:",
|
|
274
|
-
name: "provider",
|
|
275
|
-
type: "list",
|
|
276
|
-
},
|
|
277
|
-
]);
|
|
278
|
-
provider = providerResponse.provider;
|
|
279
|
-
// Check if API key is in environment variables
|
|
280
|
-
let environmentApiKey = null;
|
|
281
|
-
const environmentVariableName = provider === "openai" ? "OPENAI_API_KEY" : "ANTHROPIC_API_KEY";
|
|
282
|
-
try {
|
|
283
|
-
if (typeof process !== "undefined" && process?.env) {
|
|
284
|
-
environmentApiKey = provider === "openai" ? (process.env.OPENAI_API_KEY ?? null) : (process.env.ANTHROPIC_API_KEY ?? null);
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
catch (error) {
|
|
288
|
-
console.warn("Error accessing environment variables:", error);
|
|
289
|
-
}
|
|
290
|
-
let apiKey;
|
|
291
|
-
if (environmentApiKey) {
|
|
292
|
-
console.log(chalk.green(`✅ Found ${provider === "openai" ? "OpenAI" : "Anthropic"} API key in environment variable ${environmentVariableName}`));
|
|
293
|
-
apiKey = environmentApiKey;
|
|
294
|
-
}
|
|
295
|
-
else {
|
|
296
|
-
console.log(chalk.yellow(`No ${provider === "openai" ? "OpenAI" : "Anthropic"} API key found in environment.`));
|
|
297
|
-
console.log(chalk.blue(`Tip: Set the ${environmentVariableName} environment variable to avoid entering your API key each time.`));
|
|
298
|
-
const response = await inquirer.prompt([
|
|
299
|
-
{
|
|
300
|
-
message: `Enter your ${provider === "openai" ? "OpenAI" : "Anthropic"} API key:`,
|
|
301
|
-
name: "apiKey",
|
|
302
|
-
type: "password",
|
|
303
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type,@elsikora-sonar/function-return-type
|
|
304
|
-
validate: (input) => {
|
|
305
|
-
if (!input)
|
|
306
|
-
return "API key is required";
|
|
307
|
-
if (provider === "openai" && !input.startsWith("sk-")) {
|
|
308
|
-
return 'OpenAI API keys typically start with "sk-"';
|
|
309
|
-
}
|
|
310
|
-
return true;
|
|
311
|
-
},
|
|
312
|
-
},
|
|
313
|
-
]);
|
|
314
|
-
apiKey = response.apiKey;
|
|
315
|
-
}
|
|
316
|
-
// Now get models based on provider
|
|
317
|
-
if (provider === "openai") {
|
|
318
|
-
// Display model selection
|
|
319
|
-
const response = await inquirer.prompt([
|
|
320
|
-
{
|
|
321
|
-
choices: OPENAI_MODEL_CHOICES,
|
|
322
|
-
message: "Select an OpenAI model:",
|
|
323
|
-
name: "model",
|
|
324
|
-
type: "list",
|
|
325
|
-
},
|
|
326
|
-
]);
|
|
327
|
-
// If user selected custom, ask for model name
|
|
328
|
-
if (response.model === "custom") {
|
|
329
|
-
const customResponse = await inquirer.prompt([
|
|
330
|
-
{
|
|
331
|
-
message: "Enter the OpenAI model name:",
|
|
332
|
-
name: "customModel",
|
|
333
|
-
type: "input",
|
|
334
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
335
|
-
validate: (input) => {
|
|
336
|
-
if (!input)
|
|
337
|
-
return "Model name is required";
|
|
338
|
-
return true;
|
|
339
|
-
},
|
|
340
|
-
},
|
|
341
|
-
]);
|
|
342
|
-
model = customResponse.customModel;
|
|
343
|
-
}
|
|
344
|
-
else {
|
|
345
|
-
model = response.model;
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
else if (provider === "anthropic") {
|
|
349
|
-
// For Anthropic, use hardcoded list
|
|
350
|
-
const response = await inquirer.prompt([
|
|
351
|
-
{
|
|
352
|
-
choices: ANTHROPIC_MODEL_CHOICES,
|
|
353
|
-
message: "Select an Anthropic model:",
|
|
354
|
-
name: "model",
|
|
355
|
-
type: "list",
|
|
356
|
-
},
|
|
357
|
-
]);
|
|
358
|
-
// If user selected custom, ask for model name
|
|
359
|
-
if (response.model === "custom") {
|
|
360
|
-
const customResponse = await inquirer.prompt([
|
|
361
|
-
{
|
|
362
|
-
message: "Enter the Anthropic model name:",
|
|
363
|
-
name: "customModel",
|
|
364
|
-
type: "input",
|
|
365
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
366
|
-
validate: (input) => {
|
|
367
|
-
if (!input)
|
|
368
|
-
return "Model name is required";
|
|
369
|
-
return true;
|
|
370
|
-
},
|
|
371
|
-
},
|
|
372
|
-
]);
|
|
373
|
-
model = customResponse.customModel;
|
|
374
|
-
}
|
|
375
|
-
else {
|
|
376
|
-
model = response.model;
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
else {
|
|
380
|
-
throw new Error(`Invalid provider: ${provider}`);
|
|
381
|
-
}
|
|
382
|
-
// Save the complete config
|
|
383
|
-
// @ts-ignore
|
|
384
|
-
const config = { apiKey, mode, model, provider };
|
|
385
|
-
setLLMConfig(config);
|
|
386
|
-
console.log(chalk.green(`✅ AI-powered commit mode configured successfully!`));
|
|
387
|
-
}
|
|
388
|
-
// We'll only validate provider, not model
|
|
389
|
-
function isValidProvider(provider) {
|
|
390
|
-
return provider === "openai" || provider === "anthropic";
|
|
391
|
-
}
|
|
392
|
-
|
|
393
|
-
export { generateCommitMessage, getLLMConfig, selectLLMProvider, setLLMConfig };
|
|
394
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/services/llm/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Centralized model definitions for LLM providers
|
|
3
|
-
*/
|
|
4
|
-
export declare const OPENAI_MODELS: {
|
|
5
|
-
GPT35_TURBO: string;
|
|
6
|
-
GPT4: string;
|
|
7
|
-
GPT4_TURBO: string;
|
|
8
|
-
GPT45_PREVIEW: string;
|
|
9
|
-
GPT4O: string;
|
|
10
|
-
GPT4O_MINI: string;
|
|
11
|
-
O1: string;
|
|
12
|
-
O1_MINI: string;
|
|
13
|
-
O3_MINI: string;
|
|
14
|
-
};
|
|
15
|
-
export declare const ANTHROPIC_MODELS: {
|
|
16
|
-
CLAUDE_3_HAIKU: string;
|
|
17
|
-
CLAUDE_3_OPUS: string;
|
|
18
|
-
CLAUDE_3_SONNET: string;
|
|
19
|
-
CLAUDE_35_HAIKU: string;
|
|
20
|
-
CLAUDE_35_SONNET: string;
|
|
21
|
-
CLAUDE_35_SONNET_V2: string;
|
|
22
|
-
CLAUDE_37_SONNET: string;
|
|
23
|
-
};
|
|
24
|
-
export declare const OPENAI_MODEL_CHOICES: Array<{
|
|
25
|
-
name: string;
|
|
26
|
-
value: string;
|
|
27
|
-
}>;
|
|
28
|
-
export declare const ANTHROPIC_MODEL_CHOICES: Array<{
|
|
29
|
-
name: string;
|
|
30
|
-
value: string;
|
|
31
|
-
}>;
|
|
32
|
-
export declare function getAnthropicModels(): Array<string>;
|
|
33
|
-
export declare function getOpenAIModels(): Array<string>;
|
|
34
|
-
//# sourceMappingURL=models.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../src/services/llm/models.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,aAAa,EAAE;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAoBhB,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;CAczB,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACd,CAWA,CAAC;AAGF,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACd,CASA,CAAC;AAEF,wBAAgB,kBAAkB,IAAI,KAAK,CAAC,MAAM,CAAC,CAElD;AAGD,wBAAgB,eAAe,IAAI,KAAK,CAAC,MAAM,CAAC,CAE/C"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Centralized model definitions for LLM providers
|
|
3
|
-
*/
|
|
4
|
-
// OpenAI Models
|
|
5
|
-
const OPENAI_MODELS = {
|
|
6
|
-
// GPT-3.5 models
|
|
7
|
-
GPT35_TURBO: "gpt-3.5-turbo",
|
|
8
|
-
// Legacy GPT-4 models
|
|
9
|
-
GPT4: "gpt-4",
|
|
10
|
-
GPT4_TURBO: "gpt-4-turbo",
|
|
11
|
-
// GPT-4.5 Preview
|
|
12
|
-
GPT45_PREVIEW: "gpt-4.5-preview",
|
|
13
|
-
// GPT-4o Family
|
|
14
|
-
GPT4O: "gpt-4o",
|
|
15
|
-
GPT4O_MINI: "gpt-4o-mini",
|
|
16
|
-
// O1 Family (Next-gen models)
|
|
17
|
-
O1: "o1",
|
|
18
|
-
O1_MINI: "o1-mini",
|
|
19
|
-
O3_MINI: "o3-mini",
|
|
20
|
-
};
|
|
21
|
-
// Anthropic Models
|
|
22
|
-
const ANTHROPIC_MODELS = {
|
|
23
|
-
CLAUDE_3_HAIKU: "claude-3-haiku-20240307",
|
|
24
|
-
// Claude 3 Family
|
|
25
|
-
CLAUDE_3_OPUS: "claude-3-opus-20240229",
|
|
26
|
-
CLAUDE_3_SONNET: "claude-3-sonnet-20240229",
|
|
27
|
-
CLAUDE_35_HAIKU: "claude-3-5-haiku-20241022",
|
|
28
|
-
CLAUDE_35_SONNET: "claude-3-5-sonnet-20240620",
|
|
29
|
-
// Claude 3.5 Family
|
|
30
|
-
CLAUDE_35_SONNET_V2: "claude-3-5-sonnet-20241022",
|
|
31
|
-
// Claude 3.7 Family
|
|
32
|
-
CLAUDE_37_SONNET: "claude-3-7-sonnet-20250219",
|
|
33
|
-
};
|
|
34
|
-
// Model choices for OpenAI UI
|
|
35
|
-
const OPENAI_MODEL_CHOICES = [
|
|
36
|
-
{ name: "GPT-4o", value: OPENAI_MODELS.GPT4O },
|
|
37
|
-
{ name: "GPT-4o Mini", value: OPENAI_MODELS.GPT4O_MINI },
|
|
38
|
-
{ name: "O1", value: OPENAI_MODELS.O1 },
|
|
39
|
-
{ name: "O1 Mini", value: OPENAI_MODELS.O1_MINI },
|
|
40
|
-
{ name: "O3 Mini", value: OPENAI_MODELS.O3_MINI },
|
|
41
|
-
{ name: "GPT-4.5 Preview", value: OPENAI_MODELS.GPT45_PREVIEW },
|
|
42
|
-
{ name: "GPT-4 Turbo", value: OPENAI_MODELS.GPT4_TURBO },
|
|
43
|
-
{ name: "GPT-4", value: OPENAI_MODELS.GPT4 },
|
|
44
|
-
{ name: "GPT-3.5 Turbo", value: OPENAI_MODELS.GPT35_TURBO },
|
|
45
|
-
{ name: "Custom Model...", value: "custom" },
|
|
46
|
-
];
|
|
47
|
-
// Model choices for Anthropic UI
|
|
48
|
-
const ANTHROPIC_MODEL_CHOICES = [
|
|
49
|
-
{ name: "Claude 3.7 Sonnet", value: ANTHROPIC_MODELS.CLAUDE_37_SONNET },
|
|
50
|
-
{ name: "Claude 3.5 Sonnet v2", value: ANTHROPIC_MODELS.CLAUDE_35_SONNET_V2 },
|
|
51
|
-
{ name: "Claude 3.5 Sonnet", value: ANTHROPIC_MODELS.CLAUDE_35_SONNET },
|
|
52
|
-
{ name: "Claude 3.5 Haiku", value: ANTHROPIC_MODELS.CLAUDE_35_HAIKU },
|
|
53
|
-
{ name: "Claude 3 Opus", value: ANTHROPIC_MODELS.CLAUDE_3_OPUS },
|
|
54
|
-
{ name: "Claude 3 Sonnet", value: ANTHROPIC_MODELS.CLAUDE_3_SONNET },
|
|
55
|
-
{ name: "Claude 3 Haiku", value: ANTHROPIC_MODELS.CLAUDE_3_HAIKU },
|
|
56
|
-
{ name: "Custom Model...", value: "custom" },
|
|
57
|
-
];
|
|
58
|
-
|
|
59
|
-
export { ANTHROPIC_MODELS, ANTHROPIC_MODEL_CHOICES, OPENAI_MODELS, OPENAI_MODEL_CHOICES };
|
|
60
|
-
//# sourceMappingURL=models.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sources":["../../../../../src/services/llm/models.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;AAEG;AAEH;AACa,MAAA,aAAa,GAUtB;;AAEH,IAAA,WAAW,EAAE,eAAe;;AAE5B,IAAA,IAAI,EAAE,OAAO;AAEb,IAAA,UAAU,EAAE,aAAa;;AAEzB,IAAA,aAAa,EAAE,iBAAiB;;AAEhC,IAAA,KAAK,EAAE,QAAQ;AAEf,IAAA,UAAU,EAAE,aAAa;;AAGzB,IAAA,EAAE,EAAE,IAAI;AACR,IAAA,OAAO,EAAE,SAAS;AAElB,IAAA,OAAO,EAAE,SAAS;;AAGnB;AACa,MAAA,gBAAgB,GAQzB;AACH,IAAA,cAAc,EAAE,yBAAyB;;AAGzC,IAAA,aAAa,EAAE,wBAAwB;AACvC,IAAA,eAAe,EAAE,0BAA0B;AAC3C,IAAA,eAAe,EAAE,2BAA2B;AAE5C,IAAA,gBAAgB,EAAE,4BAA4B;;AAE9C,IAAA,mBAAmB,EAAE,4BAA4B;;AAEjD,IAAA,gBAAgB,EAAE,4BAA4B;;AAG/C;AACa,MAAA,oBAAoB,GAG5B;IACJ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE;IAC9C,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,CAAC,UAAU,EAAE;IACxD,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,EAAE;IACvC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE;IACjD,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE;IACjD,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,aAAa,CAAC,aAAa,EAAE;IAC/D,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,CAAC,UAAU,EAAE;IACxD,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,IAAI,EAAE;IAC5C,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,CAAC,WAAW,EAAE;AAC3D,IAAA,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,QAAQ,EAAE;;AAG7C;AACa,MAAA,uBAAuB,GAG/B;IACJ,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,EAAE;IACvE,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,gBAAgB,CAAC,mBAAmB,EAAE;IAC7E,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,EAAE;IACvE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,gBAAgB,CAAC,eAAe,EAAE;IACrE,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,gBAAgB,CAAC,aAAa,EAAE;IAChE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,gBAAgB,CAAC,eAAe,EAAE;IACpE,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,CAAC,cAAc,EAAE;AAClE,IAAA,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,QAAQ,EAAE;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/services/llm/openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAIjE,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,CAgH9H"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import OpenAI from 'openai';
|
|
2
|
-
|
|
3
|
-
async function generateCommitWithOpenAI(apiKey, model, context) {
|
|
4
|
-
const openai = new OpenAI({
|
|
5
|
-
apiKey: apiKey,
|
|
6
|
-
});
|
|
7
|
-
const typeOptions = context.typeEnum
|
|
8
|
-
?.map((type) => {
|
|
9
|
-
const description = context.typeDescriptions?.[type]?.description ?? "";
|
|
10
|
-
const emoji = context.typeDescriptions?.[type]?.emoji ?? "";
|
|
11
|
-
const title = context.typeDescriptions?.[type]?.title ?? "";
|
|
12
|
-
// eslint-disable-next-line @elsikora-sonar/no-nested-template-literals
|
|
13
|
-
return `${type}${emoji ? ` (${emoji})` : ""}: ${description}${title ? ` (${title})` : ""}`;
|
|
14
|
-
})
|
|
15
|
-
.join("\n") ?? "";
|
|
16
|
-
const systemPrompt = `You are a commit message generator. Based on the git changes, generate a conventional commit message that follows the commit conventions.
|
|
17
|
-
|
|
18
|
-
The commit should follow this format:
|
|
19
|
-
<type>[(scope)]: <subject>
|
|
20
|
-
[BLANK LINE]
|
|
21
|
-
[body]
|
|
22
|
-
[BLANK LINE]
|
|
23
|
-
[footer]
|
|
24
|
-
|
|
25
|
-
Type constraints:
|
|
26
|
-
${context.typeEnum ? "- Allowed types: " + context.typeEnum.join(", ") : ""}
|
|
27
|
-
${context.typeCase ? "- Case style: " + context.typeCase.join(", ") : ""}
|
|
28
|
-
${context.typeEmpty === undefined ? "" : "- Can be empty: " + (context.typeEmpty ? "yes" : "no")}
|
|
29
|
-
|
|
30
|
-
Available types:
|
|
31
|
-
${typeOptions}
|
|
32
|
-
|
|
33
|
-
Scope constraints:
|
|
34
|
-
${context.scopeCase ? "- Case style: " + context.scopeCase.join(", ") : ""}
|
|
35
|
-
${context.scopeEmpty === undefined ? "" : "- Can be empty: " + (context.scopeEmpty ? "yes" : "no")}
|
|
36
|
-
${context.scopeMaxLength ? "- Max length: " + context.scopeMaxLength + " characters" : ""}
|
|
37
|
-
|
|
38
|
-
Scope guidelines:
|
|
39
|
-
- The scope should represent the area of the codebase being modified
|
|
40
|
-
- If the changes affect multiple areas, use a comma-separated list or select the most significant area
|
|
41
|
-
- If unsure, use "global" as the scope
|
|
42
|
-
- If the scope is not relevant, it can be omitted
|
|
43
|
-
- Analyze the changed files and determine the most appropriate scope based on directories, modules or components
|
|
44
|
-
- Scopes are usually short (one or two words) and lowercase
|
|
45
|
-
|
|
46
|
-
Subject constraints:
|
|
47
|
-
${context.subject.case ? "- Case style: " + context.subject.case.join(", ") : ""}
|
|
48
|
-
${context.subject.empty === undefined ? "" : "- Can be empty: " + (context.subject.empty ? "yes" : "no")}
|
|
49
|
-
${context.subject.maxLength ? "- Max length: " + context.subject.maxLength + " characters" : ""}
|
|
50
|
-
${context.subject.minLength ? "- Min length: " + context.subject.minLength + " characters" : ""}
|
|
51
|
-
${context.subject.fullStop ? "- End with '" + context.subject.fullStop.value + "': " + (context.subject.fullStop.required ? "yes" : "no") : ""}
|
|
52
|
-
|
|
53
|
-
Header constraints:
|
|
54
|
-
${context.headerCase ? "- Case style: " + context.headerCase.join(", ") : ""}
|
|
55
|
-
${context.headerMaxLength ? "- Max length: " + context.headerMaxLength + " characters" : ""}
|
|
56
|
-
${context.headerMinLength ? "- Min length: " + context.headerMinLength + " characters" : ""}
|
|
57
|
-
${context.headerFullStop ? "- End with '" + context.headerFullStop.value + "': " + (context.headerFullStop.required ? "yes" : "no") : ""}
|
|
58
|
-
|
|
59
|
-
Body constraints:
|
|
60
|
-
${context.body?.maxLength ? "- Max length: " + context.body.maxLength + " characters" : ""}
|
|
61
|
-
${context.body?.maxLineLength ? "- Max line length: " + context.body.maxLineLength + " characters" : ""}
|
|
62
|
-
${context.body?.leadingBlank === undefined ? "" : "- Leading blank line: " + (context.body.leadingBlank ? "required" : "not required")}
|
|
63
|
-
${context.body?.fullStop ? "- End with '" + context.body.fullStop.value + "': " + (context.body.fullStop.required ? "yes" : "no") : ""}
|
|
64
|
-
|
|
65
|
-
Footer constraints:
|
|
66
|
-
${context.footerLeadingBlank === undefined ? "" : "- Leading blank line: " + (context.footerLeadingBlank ? "required" : "not required")}
|
|
67
|
-
${context.footerMaxLineLength ? "- Max line length: " + context.footerMaxLineLength + " characters" : ""}
|
|
68
|
-
|
|
69
|
-
Return a JSON object with these fields:
|
|
70
|
-
{
|
|
71
|
-
"type": "the commit type",
|
|
72
|
-
"scope": "the commit scope (optional)",
|
|
73
|
-
"subject": "the commit subject line",
|
|
74
|
-
"body": "the commit body (optional)",
|
|
75
|
-
"isBreaking": boolean,
|
|
76
|
-
"breakingBody": "description of breaking changes (if isBreaking is true)",
|
|
77
|
-
"issues": ["list of issue references"],
|
|
78
|
-
"references": ["list of other references"]
|
|
79
|
-
}`;
|
|
80
|
-
const userPrompt = `Here are the changes to commit:
|
|
81
|
-
${context.diff ? `Diff:\n${context.diff}\n` : ""}
|
|
82
|
-
${context.files ? `Files changed:\n${context.files}` : ""}
|
|
83
|
-
|
|
84
|
-
Based on these changes, generate an appropriate commit message following the conventions.`;
|
|
85
|
-
try {
|
|
86
|
-
const response = await openai.chat.completions.create({
|
|
87
|
-
messages: [
|
|
88
|
-
{ content: systemPrompt, role: "system" },
|
|
89
|
-
{ content: userPrompt, role: "user" },
|
|
90
|
-
],
|
|
91
|
-
model: model,
|
|
92
|
-
response_format: { type: "json_object" },
|
|
93
|
-
});
|
|
94
|
-
// eslint-disable-next-line @elsikora-typescript/no-unsafe-member-access,@elsikora-typescript/no-unsafe-assignment
|
|
95
|
-
const content = response.choices[0]?.message.content;
|
|
96
|
-
if (!content) {
|
|
97
|
-
throw new Error("Empty response from OpenAI");
|
|
98
|
-
}
|
|
99
|
-
// eslint-disable-next-line @elsikora-typescript/no-unsafe-argument
|
|
100
|
-
return JSON.parse(content);
|
|
101
|
-
}
|
|
102
|
-
catch (error) {
|
|
103
|
-
console.error("Error generating commit with OpenAI:", error);
|
|
104
|
-
throw error;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
export { generateCommitWithOpenAI };
|
|
109
|
-
//# sourceMappingURL=openai.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sources":["../../../../../src/services/llm/openai.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|