@elsikora/commitizen-plugin-commitlint-ai 1.1.0 → 2.0.0-dev.1
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 +245 -59
- package/dist/cjs/application/constant/config-file-directory.constant.d.ts +5 -0
- package/dist/cjs/application/constant/config-file-directory.constant.d.ts.map +1 -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 +5 -0
- package/dist/cjs/application/constant/config-module-name.constant.d.ts.map +1 -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 +3 -0
- package/dist/cjs/application/constant/index.d.ts.map +1 -0
- package/dist/cjs/application/index.d.ts +3 -0
- package/dist/cjs/application/index.d.ts.map +1 -0
- package/dist/cjs/application/interface/cli-interface-service-select-options.interface.d.ts +22 -0
- package/dist/cjs/application/interface/cli-interface-service-select-options.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/cli-interface-service.interface.d.ts +106 -0
- package/dist/cjs/application/interface/cli-interface-service.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/command-service.interface.d.ts +20 -0
- package/dist/cjs/application/interface/command-service.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/commit-repository.interface.d.ts +33 -0
- package/dist/cjs/application/interface/commit-repository.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/commit-validator.interface.d.ts +30 -0
- package/dist/cjs/application/interface/commit-validator.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/config-service.interface.d.ts +48 -0
- package/dist/cjs/application/interface/config-service.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/config.interface.d.ts +28 -0
- package/dist/cjs/application/interface/config.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/file-system-service.interface.d.ts +62 -0
- package/dist/cjs/application/interface/file-system-service.interface.d.ts.map +1 -0
- package/dist/cjs/application/interface/index.d.ts +10 -0
- package/dist/cjs/application/interface/index.d.ts.map +1 -0
- package/dist/cjs/application/interface/llm-service.interface.d.ts +44 -0
- package/dist/cjs/application/interface/llm-service.interface.d.ts.map +1 -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.d.ts.map +1 -0
- package/dist/cjs/application/use-case/configure-llm.use-case.js +367 -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 +19 -0
- package/dist/cjs/application/use-case/generate-commit-message.use-case.d.ts.map +1 -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 +5 -0
- package/dist/cjs/application/use-case/index.d.ts.map +1 -0
- package/dist/cjs/application/use-case/manual-commit.use-case.d.ts +17 -0
- package/dist/cjs/application/use-case/manual-commit.use-case.d.ts.map +1 -0
- package/dist/cjs/application/use-case/manual-commit.use-case.js +79 -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 +27 -0
- package/dist/cjs/application/use-case/validate-commit-message.use-case.d.ts.map +1 -0
- package/dist/cjs/application/use-case/validate-commit-message.use-case.js +75 -0
- package/dist/cjs/application/use-case/validate-commit-message.use-case.js.map +1 -0
- package/dist/cjs/domain/constant/index.d.ts +2 -0
- package/dist/cjs/domain/constant/index.d.ts.map +1 -0
- package/dist/cjs/domain/constant/numeric.constant.d.ts +26 -0
- package/dist/cjs/domain/constant/numeric.constant.d.ts.map +1 -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 +35 -0
- package/dist/cjs/domain/entity/commit-message.entity.d.ts.map +1 -0
- package/dist/cjs/domain/entity/commit-message.entity.js +56 -0
- package/dist/cjs/domain/entity/commit-message.entity.js.map +1 -0
- package/dist/cjs/domain/entity/index.d.ts +3 -0
- package/dist/cjs/domain/entity/index.d.ts.map +1 -0
- package/dist/cjs/domain/entity/llm-configuration.entity.d.ts +66 -0
- package/dist/cjs/domain/entity/llm-configuration.entity.d.ts.map +1 -0
- package/dist/cjs/domain/entity/llm-configuration.entity.js +96 -0
- package/dist/cjs/domain/entity/llm-configuration.entity.js.map +1 -0
- package/dist/cjs/domain/enum/anthropic-model.enum.d.ts +19 -0
- package/dist/cjs/domain/enum/anthropic-model.enum.d.ts.map +1 -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 +34 -0
- package/dist/cjs/domain/enum/aws-bedrock-model.enum.d.ts.map +1 -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 +18 -0
- package/dist/cjs/domain/enum/azure-openai-model.enum.d.ts.map +1 -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 +8 -0
- package/dist/cjs/domain/enum/commit-mode.enum.d.ts.map +1 -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 +17 -0
- package/dist/cjs/domain/enum/google-model.enum.d.ts.map +1 -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 +10 -0
- package/dist/cjs/domain/enum/index.d.ts.map +1 -0
- package/dist/cjs/domain/enum/llm-provider.enum.d.ts +12 -0
- package/dist/cjs/domain/enum/llm-provider.enum.d.ts.map +1 -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 +10 -0
- package/dist/cjs/domain/enum/log-level.enum.d.ts.map +1 -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 +25 -0
- package/dist/cjs/domain/enum/ollama-model.enum.d.ts.map +1 -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 +26 -0
- package/dist/cjs/domain/enum/openai-model.enum.d.ts.map +1 -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 +4 -0
- package/dist/cjs/domain/index.d.ts.map +1 -0
- package/dist/cjs/domain/value-object/api-key.value-object.d.ts +27 -0
- package/dist/cjs/domain/value-object/api-key.value-object.d.ts.map +1 -0
- package/dist/cjs/domain/value-object/api-key.value-object.js +49 -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 +33 -0
- package/dist/cjs/domain/value-object/commit-body.value-object.d.ts.map +1 -0
- package/dist/cjs/domain/value-object/commit-body.value-object.js +59 -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 +30 -0
- package/dist/cjs/domain/value-object/commit-header.value-object.d.ts.map +1 -0
- package/dist/cjs/domain/value-object/commit-header.value-object.js +57 -0
- package/dist/cjs/domain/value-object/commit-header.value-object.js.map +1 -0
- package/dist/cjs/domain/value-object/index.d.ts +4 -0
- package/dist/cjs/domain/value-object/index.d.ts.map +1 -0
- package/dist/cjs/index.d.ts +4 -13
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +73 -85
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.d.ts +39 -0
- package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.d.ts.map +1 -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 +2 -0
- package/dist/cjs/infrastructure/commit-validator/index.d.ts.map +1 -0
- package/dist/cjs/infrastructure/di/container.d.ts +18 -0
- package/dist/cjs/infrastructure/di/container.d.ts.map +1 -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 +2 -0
- package/dist/cjs/infrastructure/di/index.d.ts.map +1 -0
- package/dist/cjs/infrastructure/git/git-commit.repository.d.ts +37 -0
- package/dist/cjs/infrastructure/git/git-commit.repository.d.ts.map +1 -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 +2 -0
- package/dist/cjs/infrastructure/git/index.d.ts.map +1 -0
- package/dist/cjs/infrastructure/index.d.ts +5 -0
- package/dist/cjs/infrastructure/index.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/anthropic-llm.service.d.ts +40 -0
- package/dist/cjs/infrastructure/llm/anthropic-llm.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/anthropic-llm.service.js +310 -0
- package/dist/cjs/infrastructure/llm/anthropic-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.d.ts +61 -0
- package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.js +505 -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 +46 -0
- package/dist/cjs/infrastructure/llm/azure-openai-llm.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/azure-openai-llm.service.js +338 -0
- package/dist/cjs/infrastructure/llm/azure-openai-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/google-llm.service.d.ts +46 -0
- package/dist/cjs/infrastructure/llm/google-llm.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/google-llm.service.js +322 -0
- package/dist/cjs/infrastructure/llm/google-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/index.d.ts +7 -0
- package/dist/cjs/infrastructure/llm/index.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/ollama-llm.service.d.ts +46 -0
- package/dist/cjs/infrastructure/llm/ollama-llm.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/ollama-llm.service.js +369 -0
- package/dist/cjs/infrastructure/llm/ollama-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/llm/openai-llm.service.d.ts +46 -0
- package/dist/cjs/infrastructure/llm/openai-llm.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/llm/openai-llm.service.js +326 -0
- package/dist/cjs/infrastructure/llm/openai-llm.service.js.map +1 -0
- package/dist/cjs/infrastructure/service/cosmic-config.service.d.ts +65 -0
- package/dist/cjs/infrastructure/service/cosmic-config.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/service/cosmic-config.service.js +174 -0
- package/dist/cjs/infrastructure/service/cosmic-config.service.js.map +1 -0
- package/dist/cjs/infrastructure/service/index.d.ts +5 -0
- package/dist/cjs/infrastructure/service/index.d.ts.map +1 -0
- package/dist/cjs/infrastructure/service/node-command.service.d.ts +44 -0
- package/dist/cjs/infrastructure/service/node-command.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/service/node-command.service.js +152 -0
- package/dist/cjs/infrastructure/service/node-command.service.js.map +1 -0
- package/dist/cjs/infrastructure/service/node-file-system.service.d.ts +63 -0
- package/dist/cjs/infrastructure/service/node-file-system.service.d.ts.map +1 -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 +115 -0
- package/dist/cjs/infrastructure/service/prompts-cli-interface.service.d.ts.map +1 -0
- package/dist/cjs/infrastructure/service/prompts-cli-interface.service.js +315 -0
- package/dist/cjs/infrastructure/service/prompts-cli-interface.service.js.map +1 -0
- package/dist/cjs/presentation/commitizen.adapter.d.ts +24 -0
- package/dist/cjs/presentation/commitizen.adapter.d.ts.map +1 -0
- package/dist/cjs/presentation/commitizen.adapter.js +292 -0
- package/dist/cjs/presentation/commitizen.adapter.js.map +1 -0
- package/dist/cjs/presentation/index.d.ts +2 -0
- package/dist/cjs/presentation/index.d.ts.map +1 -0
- package/dist/esm/application/constant/config-file-directory.constant.d.ts +5 -0
- package/dist/esm/application/constant/config-file-directory.constant.d.ts.map +1 -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 +5 -0
- package/dist/esm/application/constant/config-module-name.constant.d.ts.map +1 -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 +3 -0
- package/dist/esm/application/constant/index.d.ts.map +1 -0
- package/dist/esm/application/index.d.ts +3 -0
- package/dist/esm/application/index.d.ts.map +1 -0
- package/dist/esm/application/interface/cli-interface-service-select-options.interface.d.ts +22 -0
- package/dist/esm/application/interface/cli-interface-service-select-options.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/cli-interface-service.interface.d.ts +106 -0
- package/dist/esm/application/interface/cli-interface-service.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/command-service.interface.d.ts +20 -0
- package/dist/esm/application/interface/command-service.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/commit-repository.interface.d.ts +33 -0
- package/dist/esm/application/interface/commit-repository.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/commit-validator.interface.d.ts +30 -0
- package/dist/esm/application/interface/commit-validator.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/config-service.interface.d.ts +48 -0
- package/dist/esm/application/interface/config-service.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/config.interface.d.ts +28 -0
- package/dist/esm/application/interface/config.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/file-system-service.interface.d.ts +62 -0
- package/dist/esm/application/interface/file-system-service.interface.d.ts.map +1 -0
- package/dist/esm/application/interface/index.d.ts +10 -0
- package/dist/esm/application/interface/index.d.ts.map +1 -0
- package/dist/esm/application/interface/llm-service.interface.d.ts +44 -0
- package/dist/esm/application/interface/llm-service.interface.d.ts.map +1 -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.d.ts.map +1 -0
- package/dist/esm/application/use-case/configure-llm.use-case.js +365 -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 +19 -0
- package/dist/esm/application/use-case/generate-commit-message.use-case.d.ts.map +1 -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 +5 -0
- package/dist/esm/application/use-case/index.d.ts.map +1 -0
- package/dist/esm/application/use-case/manual-commit.use-case.d.ts +17 -0
- package/dist/esm/application/use-case/manual-commit.use-case.d.ts.map +1 -0
- package/dist/esm/application/use-case/manual-commit.use-case.js +77 -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 +27 -0
- package/dist/esm/application/use-case/validate-commit-message.use-case.d.ts.map +1 -0
- package/dist/esm/application/use-case/validate-commit-message.use-case.js +73 -0
- package/dist/esm/application/use-case/validate-commit-message.use-case.js.map +1 -0
- package/dist/esm/domain/constant/index.d.ts +2 -0
- package/dist/esm/domain/constant/index.d.ts.map +1 -0
- package/dist/esm/domain/constant/numeric.constant.d.ts +26 -0
- package/dist/esm/domain/constant/numeric.constant.d.ts.map +1 -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 +35 -0
- package/dist/esm/domain/entity/commit-message.entity.d.ts.map +1 -0
- package/dist/esm/domain/entity/commit-message.entity.js +54 -0
- package/dist/esm/domain/entity/commit-message.entity.js.map +1 -0
- package/dist/esm/domain/entity/index.d.ts +3 -0
- package/dist/esm/domain/entity/index.d.ts.map +1 -0
- package/dist/esm/domain/entity/llm-configuration.entity.d.ts +66 -0
- package/dist/esm/domain/entity/llm-configuration.entity.d.ts.map +1 -0
- package/dist/esm/domain/entity/llm-configuration.entity.js +94 -0
- package/dist/esm/domain/entity/llm-configuration.entity.js.map +1 -0
- package/dist/esm/domain/enum/anthropic-model.enum.d.ts +19 -0
- package/dist/esm/domain/enum/anthropic-model.enum.d.ts.map +1 -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 +34 -0
- package/dist/esm/domain/enum/aws-bedrock-model.enum.d.ts.map +1 -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 +18 -0
- package/dist/esm/domain/enum/azure-openai-model.enum.d.ts.map +1 -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 +8 -0
- package/dist/esm/domain/enum/commit-mode.enum.d.ts.map +1 -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 +17 -0
- package/dist/esm/domain/enum/google-model.enum.d.ts.map +1 -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 +10 -0
- package/dist/esm/domain/enum/index.d.ts.map +1 -0
- package/dist/esm/domain/enum/llm-provider.enum.d.ts +12 -0
- package/dist/esm/domain/enum/llm-provider.enum.d.ts.map +1 -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 +10 -0
- package/dist/esm/domain/enum/log-level.enum.d.ts.map +1 -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 +25 -0
- package/dist/esm/domain/enum/ollama-model.enum.d.ts.map +1 -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 +26 -0
- package/dist/esm/domain/enum/openai-model.enum.d.ts.map +1 -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 +4 -0
- package/dist/esm/domain/index.d.ts.map +1 -0
- package/dist/esm/domain/value-object/api-key.value-object.d.ts +27 -0
- package/dist/esm/domain/value-object/api-key.value-object.d.ts.map +1 -0
- package/dist/esm/domain/value-object/api-key.value-object.js +47 -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 +33 -0
- package/dist/esm/domain/value-object/commit-body.value-object.d.ts.map +1 -0
- package/dist/esm/domain/value-object/commit-body.value-object.js +57 -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 +30 -0
- package/dist/esm/domain/value-object/commit-header.value-object.d.ts.map +1 -0
- package/dist/esm/domain/value-object/commit-header.value-object.js +55 -0
- package/dist/esm/domain/value-object/commit-header.value-object.js.map +1 -0
- package/dist/esm/domain/value-object/index.d.ts +4 -0
- package/dist/esm/domain/value-object/index.d.ts.map +1 -0
- package/dist/esm/index.d.ts +4 -13
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +29 -84
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.d.ts +39 -0
- package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.d.ts.map +1 -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 +2 -0
- package/dist/esm/infrastructure/commit-validator/index.d.ts.map +1 -0
- package/dist/esm/infrastructure/di/container.d.ts +18 -0
- package/dist/esm/infrastructure/di/container.d.ts.map +1 -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 +2 -0
- package/dist/esm/infrastructure/di/index.d.ts.map +1 -0
- package/dist/esm/infrastructure/git/git-commit.repository.d.ts +37 -0
- package/dist/esm/infrastructure/git/git-commit.repository.d.ts.map +1 -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 +2 -0
- package/dist/esm/infrastructure/git/index.d.ts.map +1 -0
- package/dist/esm/infrastructure/index.d.ts +5 -0
- package/dist/esm/infrastructure/index.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/anthropic-llm.service.d.ts +40 -0
- package/dist/esm/infrastructure/llm/anthropic-llm.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/anthropic-llm.service.js +308 -0
- package/dist/esm/infrastructure/llm/anthropic-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.d.ts +61 -0
- package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.js +503 -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 +46 -0
- package/dist/esm/infrastructure/llm/azure-openai-llm.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/azure-openai-llm.service.js +336 -0
- package/dist/esm/infrastructure/llm/azure-openai-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/google-llm.service.d.ts +46 -0
- package/dist/esm/infrastructure/llm/google-llm.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/google-llm.service.js +320 -0
- package/dist/esm/infrastructure/llm/google-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/index.d.ts +7 -0
- package/dist/esm/infrastructure/llm/index.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/ollama-llm.service.d.ts +46 -0
- package/dist/esm/infrastructure/llm/ollama-llm.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/ollama-llm.service.js +367 -0
- package/dist/esm/infrastructure/llm/ollama-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/llm/openai-llm.service.d.ts +46 -0
- package/dist/esm/infrastructure/llm/openai-llm.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/llm/openai-llm.service.js +324 -0
- package/dist/esm/infrastructure/llm/openai-llm.service.js.map +1 -0
- package/dist/esm/infrastructure/service/cosmic-config.service.d.ts +65 -0
- package/dist/esm/infrastructure/service/cosmic-config.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/service/cosmic-config.service.js +172 -0
- package/dist/esm/infrastructure/service/cosmic-config.service.js.map +1 -0
- package/dist/esm/infrastructure/service/index.d.ts +5 -0
- package/dist/esm/infrastructure/service/index.d.ts.map +1 -0
- package/dist/esm/infrastructure/service/node-command.service.d.ts +44 -0
- package/dist/esm/infrastructure/service/node-command.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/service/node-command.service.js +150 -0
- package/dist/esm/infrastructure/service/node-command.service.js.map +1 -0
- package/dist/esm/infrastructure/service/node-file-system.service.d.ts +63 -0
- package/dist/esm/infrastructure/service/node-file-system.service.d.ts.map +1 -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 +115 -0
- package/dist/esm/infrastructure/service/prompts-cli-interface.service.d.ts.map +1 -0
- package/dist/esm/infrastructure/service/prompts-cli-interface.service.js +313 -0
- package/dist/esm/infrastructure/service/prompts-cli-interface.service.js.map +1 -0
- package/dist/esm/presentation/commitizen.adapter.d.ts +24 -0
- package/dist/esm/presentation/commitizen.adapter.d.ts.map +1 -0
- package/dist/esm/presentation/commitizen.adapter.js +290 -0
- package/dist/esm/presentation/commitizen.adapter.js.map +1 -0
- package/dist/esm/presentation/index.d.ts +2 -0
- package/dist/esm/presentation/index.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/index.cjs +1 -2
- package/package.json +33 -24
- 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 -165
- 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/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 -20
- package/dist/cjs/services/commitlintValidator.d.ts.map +0 -1
- package/dist/cjs/services/commitlintValidator.js +0 -145
- 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 -161
- 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/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 -20
- 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
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var node_fs = require('node:fs');
|
|
4
|
-
var node_path = require('node:path');
|
|
5
|
-
var chalk = require('chalk');
|
|
6
|
-
|
|
7
|
-
// Store config in project directory
|
|
8
|
-
const CONFIG_DIR = "./.elsikora";
|
|
9
|
-
const CONFIG_FILE = node_path.join(CONFIG_DIR, "commitlint-ai.config.js");
|
|
10
|
-
// In-memory cache
|
|
11
|
-
let llmConfig = null;
|
|
12
|
-
// Track if we've already shown mode error
|
|
13
|
-
// eslint-disable-next-line @elsikora-typescript/naming-convention
|
|
14
|
-
let modeErrorShown = false;
|
|
15
|
-
// Check for API keys in environment variables
|
|
16
|
-
const getApiKeyFromEnvironment = (provider) => {
|
|
17
|
-
try {
|
|
18
|
-
if (typeof process === "undefined" || !process?.env) {
|
|
19
|
-
return null;
|
|
20
|
-
}
|
|
21
|
-
if (provider === "openai") {
|
|
22
|
-
return process.env.OPENAI_API_KEY ?? null;
|
|
23
|
-
}
|
|
24
|
-
else if (provider === "anthropic") {
|
|
25
|
-
return process.env.ANTHROPIC_API_KEY ?? null;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
catch (error) {
|
|
29
|
-
console.warn("Error accessing environment variables:", error);
|
|
30
|
-
}
|
|
31
|
-
return null;
|
|
32
|
-
};
|
|
33
|
-
// Try to load config from file
|
|
34
|
-
const loadConfigFromFile = () => {
|
|
35
|
-
try {
|
|
36
|
-
if (node_fs.existsSync(CONFIG_FILE)) {
|
|
37
|
-
// Check if there's an old JSON file and migrate it
|
|
38
|
-
const oldJsonFile = node_path.join(CONFIG_DIR, "commitlint-ai.json");
|
|
39
|
-
if (node_fs.existsSync(oldJsonFile)) {
|
|
40
|
-
try {
|
|
41
|
-
const oldConfigString = node_fs.readFileSync(oldJsonFile, "utf8");
|
|
42
|
-
const oldConfig = JSON.parse(oldConfigString);
|
|
43
|
-
// Save to the new JS format
|
|
44
|
-
saveConfigToFile({
|
|
45
|
-
...oldConfig,
|
|
46
|
-
apiKey: "",
|
|
47
|
-
});
|
|
48
|
-
return oldConfig;
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
// Ignore errors with old file
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
// Parse the ESM module format
|
|
55
|
-
const configContent = node_fs.readFileSync(CONFIG_FILE, "utf8");
|
|
56
|
-
try {
|
|
57
|
-
// Use a safer approach than regex + JSON.parse
|
|
58
|
-
// Execute the file as a JavaScript module using Node's module system
|
|
59
|
-
// This is a workaround since we can't directly import a dynamic path in ESM
|
|
60
|
-
// Simple approach: parse the JS object manually
|
|
61
|
-
const objectPattern = /export\s+default\s+(\{[\s\S]*?\});/;
|
|
62
|
-
const match = objectPattern.exec(configContent);
|
|
63
|
-
if (match?.[1]) {
|
|
64
|
-
// Extract the object text
|
|
65
|
-
const objectText = match[1];
|
|
66
|
-
// Extract property assignments with a more robust approach
|
|
67
|
-
const properties = {};
|
|
68
|
-
// Match each property in the format: key: value,
|
|
69
|
-
// eslint-disable-next-line @elsikora-sonar/slow-regex
|
|
70
|
-
const propertyRegex = /\s*(\w+)\s*:\s*["']?([^,"'}\s]+)["']?\s*,?/g;
|
|
71
|
-
// eslint-disable-next-line @elsikora-typescript/typedef
|
|
72
|
-
let propertyMatch;
|
|
73
|
-
// eslint-disable-next-line @elsikora-typescript/no-unsafe-argument
|
|
74
|
-
while ((propertyMatch = propertyRegex.exec(objectText)) !== null) {
|
|
75
|
-
const [, key, value] = propertyMatch;
|
|
76
|
-
// Remove quotes if present
|
|
77
|
-
// eslint-disable-next-line @elsikora-sonar/anchor-precedence,@elsikora-typescript/no-unsafe-assignment,@elsikora-typescript/no-unsafe-member-access,@elsikora-typescript/no-unsafe-call
|
|
78
|
-
const cleanValue = value.replaceAll(/^["']|["']$/g, "");
|
|
79
|
-
// eslint-disable-next-line @elsikora-typescript/no-unsafe-assignment,@elsikora-typescript/no-unsafe-member-access
|
|
80
|
-
properties[key] = cleanValue;
|
|
81
|
-
}
|
|
82
|
-
// Validate mode if present (but only show the error once)
|
|
83
|
-
if (properties.mode && properties.mode !== "auto" && properties.mode !== "manual") {
|
|
84
|
-
if (!modeErrorShown) {
|
|
85
|
-
// eslint-disable-next-line @elsikora-typescript/restrict-template-expressions
|
|
86
|
-
console.log(chalk.yellow(`Invalid mode "${properties.mode}" in config. Valid values are "auto" or "manual". Using default mode.`));
|
|
87
|
-
modeErrorShown = true;
|
|
88
|
-
}
|
|
89
|
-
properties.mode = "auto";
|
|
90
|
-
}
|
|
91
|
-
return properties;
|
|
92
|
-
}
|
|
93
|
-
return null;
|
|
94
|
-
}
|
|
95
|
-
catch (parseError) {
|
|
96
|
-
console.warn("Error parsing config file:", parseError);
|
|
97
|
-
return null;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
catch (error) {
|
|
102
|
-
console.warn("Error loading LLM config from file:", error);
|
|
103
|
-
}
|
|
104
|
-
return null;
|
|
105
|
-
};
|
|
106
|
-
// Save config to file (without API key)
|
|
107
|
-
const saveConfigToFile = (config) => {
|
|
108
|
-
try {
|
|
109
|
-
if (!node_fs.existsSync(CONFIG_DIR)) {
|
|
110
|
-
// eslint-disable-next-line @elsikora-typescript/naming-convention
|
|
111
|
-
node_fs.mkdirSync(CONFIG_DIR, { recursive: true });
|
|
112
|
-
}
|
|
113
|
-
// Only store provider, model, and mode (not the API key)
|
|
114
|
-
const storageConfig = {
|
|
115
|
-
mode: config.mode,
|
|
116
|
-
model: config.model,
|
|
117
|
-
provider: config.provider,
|
|
118
|
-
};
|
|
119
|
-
// Format as an ESM module with proper JS object format (no quotes around keys)
|
|
120
|
-
// Always include the mode field, using 'auto' as default if not specified
|
|
121
|
-
const jsContent = `export default {
|
|
122
|
-
provider: ${JSON.stringify(storageConfig.provider)},
|
|
123
|
-
model: ${JSON.stringify(storageConfig.model)},
|
|
124
|
-
mode: ${JSON.stringify(storageConfig.mode ?? "auto")}
|
|
125
|
-
};`;
|
|
126
|
-
node_fs.writeFileSync(CONFIG_FILE, jsContent, "utf8");
|
|
127
|
-
// Remove old JSON file if it exists
|
|
128
|
-
const oldJsonFile = node_path.join(CONFIG_DIR, "commitlint-ai.json");
|
|
129
|
-
if (node_fs.existsSync(oldJsonFile)) {
|
|
130
|
-
try {
|
|
131
|
-
// Use fs.unlink to delete the file - but we'll use writeFileSync with empty content instead
|
|
132
|
-
// to avoid needing to import fs.unlink
|
|
133
|
-
node_fs.writeFileSync(oldJsonFile, "", "utf8");
|
|
134
|
-
}
|
|
135
|
-
catch {
|
|
136
|
-
// Ignore errors with old file deletion
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
catch (error) {
|
|
141
|
-
console.warn("Error saving LLM config to file:", error);
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
const setLLMConfig = (config) => {
|
|
145
|
-
llmConfig = config;
|
|
146
|
-
if (config) {
|
|
147
|
-
// For debugging
|
|
148
|
-
console.log("Saving config:", JSON.stringify({ ...config, apiKey: "[REDACTED]" }));
|
|
149
|
-
saveConfigToFile(config);
|
|
150
|
-
}
|
|
151
|
-
};
|
|
152
|
-
const getLLMConfig = () => {
|
|
153
|
-
// If we already have a config in memory, return it
|
|
154
|
-
if (llmConfig) {
|
|
155
|
-
return llmConfig;
|
|
156
|
-
}
|
|
157
|
-
// Otherwise try to load from file
|
|
158
|
-
const fileConfig = loadConfigFromFile();
|
|
159
|
-
if (fileConfig) {
|
|
160
|
-
// Check if we have API key in environment
|
|
161
|
-
const apiKey = getApiKeyFromEnvironment(fileConfig.provider);
|
|
162
|
-
// We have both the saved config and an API key
|
|
163
|
-
if (apiKey) {
|
|
164
|
-
llmConfig = {
|
|
165
|
-
...fileConfig,
|
|
166
|
-
apiKey,
|
|
167
|
-
};
|
|
168
|
-
return llmConfig;
|
|
169
|
-
}
|
|
170
|
-
// Return the partial config (without API key) so we can ask for it
|
|
171
|
-
return {
|
|
172
|
-
...fileConfig,
|
|
173
|
-
apiKey: "", // Empty string signals that we need to ask for the key
|
|
174
|
-
};
|
|
175
|
-
}
|
|
176
|
-
return null;
|
|
177
|
-
};
|
|
178
|
-
|
|
179
|
-
exports.getLLMConfig = getLLMConfig;
|
|
180
|
-
exports.setLLMConfig = setLLMConfig;
|
|
181
|
-
//# sourceMappingURL=config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sources":["../../../../../src/services/llm/config.ts"],"sourcesContent":[null],"names":["join","existsSync","readFileSync","mkdirSync","writeFileSync"],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { CommitConfig, LLMPromptContext } from "./types.js";
|
|
2
|
-
export { getLLMConfig, setLLMConfig } from "./config.js";
|
|
3
|
-
export type * from "./types.js";
|
|
4
|
-
export declare function generateCommitMessage(context: LLMPromptContext): Promise<CommitConfig>;
|
|
5
|
-
export declare function selectLLMProvider(inquirer: any): Promise<void>;
|
|
6
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/llm/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAA+B,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAe9F,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACzD,mBAAmB,YAAY,CAAC;AAEhC,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,CAyD5F;AAGD,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAuWpE"}
|
|
@@ -1,399 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var node_child_process = require('node:child_process');
|
|
4
|
-
var node_util = require('node:util');
|
|
5
|
-
var chalk = require('chalk');
|
|
6
|
-
var anthropic = require('./anthropic.js');
|
|
7
|
-
var config = require('./config.js');
|
|
8
|
-
var models = require('./models.js');
|
|
9
|
-
var openai = require('./openai.js');
|
|
10
|
-
|
|
11
|
-
// @ts-ignore
|
|
12
|
-
const execAsync = node_util.promisify(node_child_process.exec);
|
|
13
|
-
async function generateCommitMessage(context) {
|
|
14
|
-
const config$1 = config.getLLMConfig();
|
|
15
|
-
if (!config$1) {
|
|
16
|
-
throw new Error("LLM not configured. Please run selectLLMProvider first.");
|
|
17
|
-
}
|
|
18
|
-
// Check if we're in manual mode
|
|
19
|
-
if (config$1.mode === "manual") {
|
|
20
|
-
throw new Error("Manual mode enabled. Skipping AI generation.");
|
|
21
|
-
}
|
|
22
|
-
// Validate provider only, not model
|
|
23
|
-
if (!isValidProvider(config$1.provider)) {
|
|
24
|
-
throw new Error(`Invalid LLM provider: ${config$1.provider}. Please reconfigure with a valid provider.`);
|
|
25
|
-
}
|
|
26
|
-
// Get git diff for better context
|
|
27
|
-
try {
|
|
28
|
-
// Get staged files for scope inference
|
|
29
|
-
const { stdout: stagedFiles } = await execAsync("git diff --name-only --cached");
|
|
30
|
-
context.files = stagedFiles;
|
|
31
|
-
// Get directory structure for better scope inference
|
|
32
|
-
if (stagedFiles.trim()) {
|
|
33
|
-
const directories = stagedFiles
|
|
34
|
-
.split("\n")
|
|
35
|
-
.filter(Boolean)
|
|
36
|
-
.map((file) => {
|
|
37
|
-
const parts = file.split("/");
|
|
38
|
-
return parts.length > 1 ? parts[0] : "root";
|
|
39
|
-
})
|
|
40
|
-
.filter((v, index, a) => a.indexOf(v) === index) // Remove duplicates
|
|
41
|
-
.join(", ");
|
|
42
|
-
// eslint-disable-next-line @elsikora-typescript/restrict-plus-operands
|
|
43
|
-
context.files += `\n\nModified directories: ${directories}`;
|
|
44
|
-
}
|
|
45
|
-
// Get the diff for content analysis
|
|
46
|
-
const { stdout: diff } = await execAsync("git diff --cached");
|
|
47
|
-
if (!context.diff)
|
|
48
|
-
context.diff = diff;
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
console.warn("Failed to get git diff information, continuing without it");
|
|
52
|
-
}
|
|
53
|
-
// Generate commit with selected provider
|
|
54
|
-
if (config$1.provider === "openai") {
|
|
55
|
-
return openai.generateCommitWithOpenAI(config$1.apiKey, config$1.model, context);
|
|
56
|
-
}
|
|
57
|
-
else if (config$1.provider === "anthropic") {
|
|
58
|
-
return anthropic.generateCommitWithAnthropic(config$1.apiKey, config$1.model, context);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
// This shouldn't happen due to the validation above, but just in case
|
|
62
|
-
throw new Error(`Unsupported provider: ${config$1.provider}`);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-module-boundary-types
|
|
66
|
-
async function selectLLMProvider(inquirer) {
|
|
67
|
-
// Check if we have a partial config
|
|
68
|
-
const existingConfig = config.getLLMConfig();
|
|
69
|
-
let provider;
|
|
70
|
-
let model;
|
|
71
|
-
let mode = "auto"; // Default mode
|
|
72
|
-
const isProviderExist = Boolean(existingConfig?.provider);
|
|
73
|
-
const isModelExist = Boolean(existingConfig?.model) && existingConfig?.model !== "undefined";
|
|
74
|
-
if (existingConfig && isProviderExist && isModelExist) {
|
|
75
|
-
// We have a saved config
|
|
76
|
-
provider = existingConfig.provider;
|
|
77
|
-
model = existingConfig.model;
|
|
78
|
-
mode = existingConfig.mode ?? "auto";
|
|
79
|
-
const modelDisplay = model ?? "[not set]";
|
|
80
|
-
// eslint-disable-next-line @elsikora-sonar/no-nested-conditional
|
|
81
|
-
const providerDisplay = provider ? (provider === "openai" ? "OpenAI" : "Anthropic") : "[not set]";
|
|
82
|
-
const modeDisplay = mode || "auto";
|
|
83
|
-
// First check if we want to use the existing config at all
|
|
84
|
-
const { useExisting } = await inquirer.prompt([
|
|
85
|
-
{
|
|
86
|
-
// eslint-disable-next-line @elsikora-typescript/naming-convention
|
|
87
|
-
default: true,
|
|
88
|
-
message: `Use saved configuration? (Provider: ${providerDisplay}, Model: ${modelDisplay}, Mode: ${modeDisplay})`,
|
|
89
|
-
name: "useExisting",
|
|
90
|
-
type: "confirm",
|
|
91
|
-
},
|
|
92
|
-
]);
|
|
93
|
-
if (useExisting) {
|
|
94
|
-
// We're using existing config, but we need to check if it's complete
|
|
95
|
-
// We have a provider but it's invalid
|
|
96
|
-
if (provider && !isValidProvider(provider)) {
|
|
97
|
-
console.log(chalk.yellow(`Provider "${provider}" is not supported. Please select a valid provider below.`));
|
|
98
|
-
// Fall through to ask for a new provider
|
|
99
|
-
}
|
|
100
|
-
else if (!provider) {
|
|
101
|
-
console.log(chalk.yellow(`No AI provider specified in configuration. Please select a provider below.`));
|
|
102
|
-
// Fall through to ask for a provider
|
|
103
|
-
}
|
|
104
|
-
else if (!model && mode === "auto") {
|
|
105
|
-
// We have a valid provider but no model in auto mode
|
|
106
|
-
console.log(chalk.yellow("No model saved in configuration. Please select a model."));
|
|
107
|
-
if (provider === "openai") {
|
|
108
|
-
const response = await inquirer.prompt([
|
|
109
|
-
{
|
|
110
|
-
choices: models.OPENAI_MODEL_CHOICES,
|
|
111
|
-
message: "Select an OpenAI model:",
|
|
112
|
-
name: "model",
|
|
113
|
-
type: "list",
|
|
114
|
-
},
|
|
115
|
-
]);
|
|
116
|
-
if (response.model === "custom") {
|
|
117
|
-
const customResponse = await inquirer.prompt([
|
|
118
|
-
{
|
|
119
|
-
message: "Enter the OpenAI model name:",
|
|
120
|
-
name: "customModel",
|
|
121
|
-
type: "input",
|
|
122
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
123
|
-
validate: (input) => {
|
|
124
|
-
if (!input)
|
|
125
|
-
return "Model name is required";
|
|
126
|
-
return true;
|
|
127
|
-
},
|
|
128
|
-
},
|
|
129
|
-
]);
|
|
130
|
-
model = customResponse.customModel;
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
model = response.model;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
else if (provider === "anthropic") {
|
|
137
|
-
const response = await inquirer.prompt([
|
|
138
|
-
{
|
|
139
|
-
choices: models.ANTHROPIC_MODEL_CHOICES,
|
|
140
|
-
message: "Select an Anthropic model:",
|
|
141
|
-
name: "model",
|
|
142
|
-
type: "list",
|
|
143
|
-
},
|
|
144
|
-
]);
|
|
145
|
-
if (response.model === "custom") {
|
|
146
|
-
const customResponse = await inquirer.prompt([
|
|
147
|
-
{
|
|
148
|
-
message: "Enter the Anthropic model name:",
|
|
149
|
-
name: "customModel",
|
|
150
|
-
type: "input",
|
|
151
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
152
|
-
validate: (input) => {
|
|
153
|
-
if (!input)
|
|
154
|
-
return "Model name is required";
|
|
155
|
-
return true;
|
|
156
|
-
},
|
|
157
|
-
},
|
|
158
|
-
]);
|
|
159
|
-
model = customResponse.customModel;
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
model = response.model;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
// Update the existing config with the selected model
|
|
166
|
-
existingConfig.model = model;
|
|
167
|
-
// Save the updated config to file with the selected model
|
|
168
|
-
config.setLLMConfig({
|
|
169
|
-
apiKey: existingConfig.apiKey || "",
|
|
170
|
-
mode: existingConfig.mode ?? "auto",
|
|
171
|
-
model,
|
|
172
|
-
provider: existingConfig.provider,
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
// In manual mode, we don't need a model or provider, so skip forward
|
|
176
|
-
if (mode === "manual") {
|
|
177
|
-
// Even in manual mode, save the config to remember the mode choice
|
|
178
|
-
// eslint-disable-next-line @elsikora/typescript/no-non-null-assertion
|
|
179
|
-
const oldConfig = config.getLLMConfig();
|
|
180
|
-
config.setLLMConfig({
|
|
181
|
-
...oldConfig,
|
|
182
|
-
mode: "manual",
|
|
183
|
-
});
|
|
184
|
-
console.log(chalk.green(`✅ Manual commit mode configured successfully!`));
|
|
185
|
-
return;
|
|
186
|
-
}
|
|
187
|
-
// Now check if we need an API key (only in auto mode)
|
|
188
|
-
if (existingConfig.apiKey) {
|
|
189
|
-
// We have a complete config with API key
|
|
190
|
-
console.log(chalk.green(`✅ Using existing configuration.`));
|
|
191
|
-
return;
|
|
192
|
-
}
|
|
193
|
-
else {
|
|
194
|
-
// Double-check environment variables again
|
|
195
|
-
const environmentVariableName = provider === "openai" ? "OPENAI_API_KEY" : "ANTHROPIC_API_KEY";
|
|
196
|
-
let environmentApiKey;
|
|
197
|
-
try {
|
|
198
|
-
if (typeof process !== "undefined" && process?.env) {
|
|
199
|
-
environmentApiKey = provider === "openai" ? process.env.OPENAI_API_KEY : process.env.ANTHROPIC_API_KEY;
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
catch {
|
|
203
|
-
// Ignore error
|
|
204
|
-
}
|
|
205
|
-
if (environmentApiKey) {
|
|
206
|
-
// Found API key in environment variable
|
|
207
|
-
console.log(chalk.green(`✅ Found ${provider === "openai" ? "OpenAI" : "Anthropic"} API key in environment variable ${environmentVariableName}`));
|
|
208
|
-
existingConfig.apiKey = environmentApiKey;
|
|
209
|
-
config.setLLMConfig(existingConfig);
|
|
210
|
-
return;
|
|
211
|
-
}
|
|
212
|
-
console.log(chalk.yellow(`No ${provider === "openai" ? "OpenAI" : "Anthropic"} API key found in environment.`));
|
|
213
|
-
console.log(chalk.blue(`Tip: Set the ${environmentVariableName} environment variable to avoid entering your API key each time.`));
|
|
214
|
-
console.log(chalk.blue(`You can create a .env file in your project root with ${environmentVariableName}=your-key-here`));
|
|
215
|
-
const { apiKey } = await inquirer.prompt([
|
|
216
|
-
{
|
|
217
|
-
message: `Enter your ${provider === "openai" ? "OpenAI" : "Anthropic"} API key:`,
|
|
218
|
-
name: "apiKey",
|
|
219
|
-
type: "password",
|
|
220
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type,@elsikora-sonar/function-return-type
|
|
221
|
-
validate: (input) => {
|
|
222
|
-
if (!input)
|
|
223
|
-
return "API key is required";
|
|
224
|
-
if (provider === "openai" && !input.startsWith("sk-")) {
|
|
225
|
-
return 'OpenAI API keys typically start with "sk-"';
|
|
226
|
-
}
|
|
227
|
-
return true;
|
|
228
|
-
},
|
|
229
|
-
},
|
|
230
|
-
]);
|
|
231
|
-
// Update the config with the API key for this session only
|
|
232
|
-
// @ts-ignore
|
|
233
|
-
const config$1 = { apiKey, mode, model, provider };
|
|
234
|
-
config.setLLMConfig(config$1);
|
|
235
|
-
console.log(chalk.green(`✅ Configuration completed successfully!`));
|
|
236
|
-
return;
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
// No config or user wants to change it, run the full setup
|
|
241
|
-
// First ask for commit mode preference
|
|
242
|
-
const modeResponse = await inquirer.prompt([
|
|
243
|
-
{
|
|
244
|
-
choices: [
|
|
245
|
-
{ name: "Manual (traditional commitizen)", value: "manual" },
|
|
246
|
-
{ name: "AI-powered (auto)", value: "auto" },
|
|
247
|
-
],
|
|
248
|
-
default: "manual",
|
|
249
|
-
message: "Select your preferred commit mode:",
|
|
250
|
-
name: "mode",
|
|
251
|
-
type: "list",
|
|
252
|
-
},
|
|
253
|
-
]);
|
|
254
|
-
mode = modeResponse.mode;
|
|
255
|
-
// If the user selected manual mode, we don't need provider or model
|
|
256
|
-
if (mode === "manual") {
|
|
257
|
-
// Save minimal config with just the mode
|
|
258
|
-
// Note: explicit provider/model values to make debugging easier
|
|
259
|
-
// eslint-disable-next-line @elsikora/typescript/no-non-null-assertion
|
|
260
|
-
const oldConfig = config.getLLMConfig();
|
|
261
|
-
config.setLLMConfig({
|
|
262
|
-
...oldConfig,
|
|
263
|
-
mode: "manual",
|
|
264
|
-
});
|
|
265
|
-
console.log(chalk.green(`✅ Manual commit mode configured successfully!`));
|
|
266
|
-
return;
|
|
267
|
-
}
|
|
268
|
-
// Only proceed with provider/model selection if in auto mode
|
|
269
|
-
const providerResponse = await inquirer.prompt([
|
|
270
|
-
{
|
|
271
|
-
choices: [
|
|
272
|
-
{ name: "OpenAI", value: "openai" },
|
|
273
|
-
{ name: "Anthropic", value: "anthropic" },
|
|
274
|
-
],
|
|
275
|
-
message: "Select an LLM provider:",
|
|
276
|
-
name: "provider",
|
|
277
|
-
type: "list",
|
|
278
|
-
},
|
|
279
|
-
]);
|
|
280
|
-
provider = providerResponse.provider;
|
|
281
|
-
// Check if API key is in environment variables
|
|
282
|
-
let environmentApiKey = null;
|
|
283
|
-
const environmentVariableName = provider === "openai" ? "OPENAI_API_KEY" : "ANTHROPIC_API_KEY";
|
|
284
|
-
try {
|
|
285
|
-
if (typeof process !== "undefined" && process?.env) {
|
|
286
|
-
environmentApiKey = provider === "openai" ? (process.env.OPENAI_API_KEY ?? null) : (process.env.ANTHROPIC_API_KEY ?? null);
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
catch (error) {
|
|
290
|
-
console.warn("Error accessing environment variables:", error);
|
|
291
|
-
}
|
|
292
|
-
let apiKey;
|
|
293
|
-
if (environmentApiKey) {
|
|
294
|
-
console.log(chalk.green(`✅ Found ${provider === "openai" ? "OpenAI" : "Anthropic"} API key in environment variable ${environmentVariableName}`));
|
|
295
|
-
apiKey = environmentApiKey;
|
|
296
|
-
}
|
|
297
|
-
else {
|
|
298
|
-
console.log(chalk.yellow(`No ${provider === "openai" ? "OpenAI" : "Anthropic"} API key found in environment.`));
|
|
299
|
-
console.log(chalk.blue(`Tip: Set the ${environmentVariableName} environment variable to avoid entering your API key each time.`));
|
|
300
|
-
const response = await inquirer.prompt([
|
|
301
|
-
{
|
|
302
|
-
message: `Enter your ${provider === "openai" ? "OpenAI" : "Anthropic"} API key:`,
|
|
303
|
-
name: "apiKey",
|
|
304
|
-
type: "password",
|
|
305
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type,@elsikora-sonar/function-return-type
|
|
306
|
-
validate: (input) => {
|
|
307
|
-
if (!input)
|
|
308
|
-
return "API key is required";
|
|
309
|
-
if (provider === "openai" && !input.startsWith("sk-")) {
|
|
310
|
-
return 'OpenAI API keys typically start with "sk-"';
|
|
311
|
-
}
|
|
312
|
-
return true;
|
|
313
|
-
},
|
|
314
|
-
},
|
|
315
|
-
]);
|
|
316
|
-
apiKey = response.apiKey;
|
|
317
|
-
}
|
|
318
|
-
// Now get models based on provider
|
|
319
|
-
if (provider === "openai") {
|
|
320
|
-
// Display model selection
|
|
321
|
-
const response = await inquirer.prompt([
|
|
322
|
-
{
|
|
323
|
-
choices: models.OPENAI_MODEL_CHOICES,
|
|
324
|
-
message: "Select an OpenAI model:",
|
|
325
|
-
name: "model",
|
|
326
|
-
type: "list",
|
|
327
|
-
},
|
|
328
|
-
]);
|
|
329
|
-
// If user selected custom, ask for model name
|
|
330
|
-
if (response.model === "custom") {
|
|
331
|
-
const customResponse = await inquirer.prompt([
|
|
332
|
-
{
|
|
333
|
-
message: "Enter the OpenAI model name:",
|
|
334
|
-
name: "customModel",
|
|
335
|
-
type: "input",
|
|
336
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
337
|
-
validate: (input) => {
|
|
338
|
-
if (!input)
|
|
339
|
-
return "Model name is required";
|
|
340
|
-
return true;
|
|
341
|
-
},
|
|
342
|
-
},
|
|
343
|
-
]);
|
|
344
|
-
model = customResponse.customModel;
|
|
345
|
-
}
|
|
346
|
-
else {
|
|
347
|
-
model = response.model;
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
else if (provider === "anthropic") {
|
|
351
|
-
// For Anthropic, use hardcoded list
|
|
352
|
-
const response = await inquirer.prompt([
|
|
353
|
-
{
|
|
354
|
-
choices: models.ANTHROPIC_MODEL_CHOICES,
|
|
355
|
-
message: "Select an Anthropic model:",
|
|
356
|
-
name: "model",
|
|
357
|
-
type: "list",
|
|
358
|
-
},
|
|
359
|
-
]);
|
|
360
|
-
// If user selected custom, ask for model name
|
|
361
|
-
if (response.model === "custom") {
|
|
362
|
-
const customResponse = await inquirer.prompt([
|
|
363
|
-
{
|
|
364
|
-
message: "Enter the Anthropic model name:",
|
|
365
|
-
name: "customModel",
|
|
366
|
-
type: "input",
|
|
367
|
-
// eslint-disable-next-line @elsikora-typescript/explicit-function-return-type
|
|
368
|
-
validate: (input) => {
|
|
369
|
-
if (!input)
|
|
370
|
-
return "Model name is required";
|
|
371
|
-
return true;
|
|
372
|
-
},
|
|
373
|
-
},
|
|
374
|
-
]);
|
|
375
|
-
model = customResponse.customModel;
|
|
376
|
-
}
|
|
377
|
-
else {
|
|
378
|
-
model = response.model;
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
|
-
else {
|
|
382
|
-
throw new Error(`Invalid provider: ${provider}`);
|
|
383
|
-
}
|
|
384
|
-
// Save the complete config
|
|
385
|
-
// @ts-ignore
|
|
386
|
-
const config$1 = { apiKey, mode, model, provider };
|
|
387
|
-
config.setLLMConfig(config$1);
|
|
388
|
-
console.log(chalk.green(`✅ AI-powered commit mode configured successfully!`));
|
|
389
|
-
}
|
|
390
|
-
// We'll only validate provider, not model
|
|
391
|
-
function isValidProvider(provider) {
|
|
392
|
-
return provider === "openai" || provider === "anthropic";
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
exports.getLLMConfig = config.getLLMConfig;
|
|
396
|
-
exports.setLLMConfig = config.setLLMConfig;
|
|
397
|
-
exports.generateCommitMessage = generateCommitMessage;
|
|
398
|
-
exports.selectLLMProvider = selectLLMProvider;
|
|
399
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/services/llm/index.ts"],"sourcesContent":[null],"names":["promisify","exec","config","getLLMConfig","generateCommitWithOpenAI","generateCommitWithAnthropic","OPENAI_MODEL_CHOICES","ANTHROPIC_MODEL_CHOICES","setLLMConfig"],"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"}
|