cadr-cli 0.0.1 → 1.9.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.
Files changed (121) hide show
  1. package/dist/adr.d.ts +50 -0
  2. package/dist/adr.d.ts.map +1 -0
  3. package/dist/adr.js +156 -0
  4. package/dist/adr.js.map +1 -0
  5. package/dist/adr.test.d.ts +8 -0
  6. package/dist/adr.test.d.ts.map +1 -0
  7. package/dist/adr.test.js +256 -0
  8. package/dist/adr.test.js.map +1 -0
  9. package/dist/analysis.d.ts +24 -0
  10. package/dist/analysis.d.ts.map +1 -0
  11. package/dist/analysis.js +281 -0
  12. package/dist/analysis.js.map +1 -0
  13. package/dist/analysis.test.d.ts +8 -0
  14. package/dist/analysis.test.d.ts.map +1 -0
  15. package/dist/analysis.test.js +351 -0
  16. package/dist/analysis.test.js.map +1 -0
  17. package/dist/commands/analyze.d.ts +14 -0
  18. package/dist/commands/analyze.d.ts.map +1 -0
  19. package/dist/commands/analyze.js +56 -0
  20. package/dist/commands/analyze.js.map +1 -0
  21. package/dist/commands/init.d.ts +12 -0
  22. package/dist/commands/init.d.ts.map +1 -0
  23. package/dist/commands/init.js +93 -0
  24. package/dist/commands/init.js.map +1 -0
  25. package/dist/commands/init.test.d.ts +2 -0
  26. package/dist/commands/init.test.d.ts.map +1 -0
  27. package/dist/commands/init.test.js +56 -0
  28. package/dist/commands/init.test.js.map +1 -0
  29. package/dist/config.d.ts +40 -0
  30. package/dist/config.d.ts.map +1 -0
  31. package/dist/config.js +208 -0
  32. package/dist/config.js.map +1 -0
  33. package/dist/config.test.d.ts +2 -0
  34. package/dist/config.test.d.ts.map +1 -0
  35. package/dist/config.test.js +97 -0
  36. package/dist/config.test.js.map +1 -0
  37. package/dist/git.d.ts +42 -0
  38. package/dist/git.d.ts.map +1 -1
  39. package/dist/git.js +157 -0
  40. package/dist/git.js.map +1 -1
  41. package/dist/index.d.ts +2 -3
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +78 -62
  44. package/dist/index.js.map +1 -1
  45. package/dist/index.test.d.ts +2 -0
  46. package/dist/index.test.d.ts.map +1 -0
  47. package/dist/index.test.js +51 -0
  48. package/dist/index.test.js.map +1 -0
  49. package/dist/llm.d.ts +73 -0
  50. package/dist/llm.d.ts.map +1 -0
  51. package/dist/llm.js +263 -0
  52. package/dist/llm.js.map +1 -0
  53. package/dist/llm.test.d.ts +2 -0
  54. package/dist/llm.test.d.ts.map +1 -0
  55. package/dist/llm.test.js +592 -0
  56. package/dist/llm.test.js.map +1 -0
  57. package/dist/logger.d.ts.map +1 -1
  58. package/dist/logger.js +5 -3
  59. package/dist/logger.js.map +1 -1
  60. package/dist/logger.test.d.ts +2 -0
  61. package/dist/logger.test.d.ts.map +1 -0
  62. package/dist/logger.test.js +78 -0
  63. package/dist/logger.test.js.map +1 -0
  64. package/dist/prompts.d.ts +49 -0
  65. package/dist/prompts.d.ts.map +1 -0
  66. package/dist/prompts.js +195 -0
  67. package/dist/prompts.js.map +1 -0
  68. package/dist/prompts.test.d.ts +2 -0
  69. package/dist/prompts.test.d.ts.map +1 -0
  70. package/dist/prompts.test.js +427 -0
  71. package/dist/prompts.test.js.map +1 -0
  72. package/dist/providers/gemini.d.ts +3 -0
  73. package/dist/providers/gemini.d.ts.map +1 -0
  74. package/dist/providers/gemini.js +39 -0
  75. package/dist/providers/gemini.js.map +1 -0
  76. package/dist/providers/index.d.ts +2 -0
  77. package/dist/providers/index.d.ts.map +1 -0
  78. package/dist/providers/index.js +6 -0
  79. package/dist/providers/index.js.map +1 -0
  80. package/dist/providers/openai.d.ts +3 -0
  81. package/dist/providers/openai.d.ts.map +1 -0
  82. package/dist/providers/openai.js +25 -0
  83. package/dist/providers/openai.js.map +1 -0
  84. package/dist/providers/registry.d.ts +4 -0
  85. package/dist/providers/registry.d.ts.map +1 -0
  86. package/dist/providers/registry.js +16 -0
  87. package/dist/providers/registry.js.map +1 -0
  88. package/dist/providers/types.d.ts +12 -0
  89. package/dist/providers/types.d.ts.map +1 -0
  90. package/dist/providers/types.js +5 -0
  91. package/dist/providers/types.js.map +1 -0
  92. package/dist/version.test.d.ts +3 -0
  93. package/dist/version.test.d.ts.map +1 -0
  94. package/dist/version.test.js +25 -0
  95. package/dist/version.test.js.map +1 -0
  96. package/package.json +14 -5
  97. package/src/adr.test.ts +278 -0
  98. package/src/adr.ts +136 -0
  99. package/src/analysis.test.ts +396 -0
  100. package/src/analysis.ts +262 -0
  101. package/src/commands/analyze.ts +56 -0
  102. package/src/commands/init.test.ts +27 -0
  103. package/src/commands/init.ts +99 -0
  104. package/src/config.test.ts +79 -0
  105. package/src/config.ts +214 -0
  106. package/src/git.ts +240 -0
  107. package/src/index.test.ts +59 -0
  108. package/src/index.ts +80 -60
  109. package/src/llm.test.ts +701 -0
  110. package/src/llm.ts +344 -0
  111. package/src/logger.test.ts +90 -0
  112. package/src/logger.ts +6 -3
  113. package/src/prompts.test.ts +515 -0
  114. package/src/prompts.ts +174 -0
  115. package/src/providers/gemini.ts +41 -0
  116. package/src/providers/index.ts +1 -0
  117. package/src/providers/openai.ts +22 -0
  118. package/src/providers/registry.ts +16 -0
  119. package/src/providers/types.ts +14 -0
  120. package/src/version.test.ts +29 -0
  121. package/bin/cadr.js +0 -16
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analysis.test.js","sourceRoot":"","sources":["../src/analysis.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Analyze Command
3
+ *
4
+ * Triggers LLM-powered analysis of code changes.
5
+ * Thin wrapper around analysis orchestration module.
6
+ */
7
+ /**
8
+ * Execute the analyze command
9
+ * Analyzes code changes for architectural significance
10
+ *
11
+ * @param args - Command line arguments (e.g., ['--staged'], ['--all'])
12
+ */
13
+ export declare function analyzeCommand(args?: string[]): Promise<void>;
14
+ //# sourceMappingURL=analyze.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAqCvE"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ /**
3
+ * Analyze Command
4
+ *
5
+ * Triggers LLM-powered analysis of code changes.
6
+ * Thin wrapper around analysis orchestration module.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.analyzeCommand = analyzeCommand;
10
+ const analysis_1 = require("../analysis");
11
+ const logger_1 = require("../logger");
12
+ /**
13
+ * Execute the analyze command
14
+ * Analyzes code changes for architectural significance
15
+ *
16
+ * @param args - Command line arguments (e.g., ['--staged'], ['--all'])
17
+ */
18
+ async function analyzeCommand(args = []) {
19
+ try {
20
+ // Parse command line flags to determine diff options
21
+ const diffOptions = { mode: 'all' }; // Default to all uncommitted
22
+ // Check for --base flag (implies branch-diff mode)
23
+ const baseIndex = args.indexOf('--base');
24
+ if (baseIndex !== -1 && baseIndex + 1 < args.length) {
25
+ diffOptions.mode = 'branch-diff';
26
+ diffOptions.base = args[baseIndex + 1];
27
+ // Check for optional --head flag
28
+ const headIndex = args.indexOf('--head');
29
+ if (headIndex !== -1 && headIndex + 1 < args.length) {
30
+ diffOptions.head = args[headIndex + 1];
31
+ }
32
+ }
33
+ else if (args.includes('--staged')) {
34
+ diffOptions.mode = 'staged';
35
+ }
36
+ else if (args.includes('--all')) {
37
+ diffOptions.mode = 'all';
38
+ }
39
+ logger_1.loggerInstance.info('Analyze command started', {
40
+ mode: diffOptions.mode,
41
+ base: diffOptions.base,
42
+ head: diffOptions.head
43
+ });
44
+ await (0, analysis_1.runAnalysis)(diffOptions);
45
+ logger_1.loggerInstance.info('Analyze command completed');
46
+ }
47
+ catch (error) {
48
+ // Fail-open: log error but don't throw
49
+ logger_1.loggerInstance.error('Analyze command failed', { error });
50
+ // eslint-disable-next-line no-console
51
+ console.error('\nāŒ Analysis command failed');
52
+ // eslint-disable-next-line no-console
53
+ console.error('Please check the logs for more details.\n');
54
+ }
55
+ }
56
+ //# sourceMappingURL=analyze.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAYH,wCAqCC;AA/CD,0CAA0C;AAE1C,sCAAqD;AAErD;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAAC,OAAiB,EAAE;IACtD,IAAI,CAAC;QACH,qDAAqD;QACrD,MAAM,WAAW,GAAgB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,6BAA6B;QAE/E,mDAAmD;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACpD,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC;YACjC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAEvC,iCAAiC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpD,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,WAAW,CAAC,IAAI,GAAG,QAAQ,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC;QAC3B,CAAC;QAED,uBAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;YACrC,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,WAAW,CAAC,IAAI;SACvB,CAAC,CAAC;QACH,MAAM,IAAA,sBAAW,EAAC,WAAW,CAAC,CAAC;QAC/B,uBAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,uCAAuC;QACvC,uBAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClD,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC7C,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Init Command
3
+ *
4
+ * Interactive command to create cadr.yaml configuration file.
5
+ * Handles user prompts and configuration creation.
6
+ */
7
+ /**
8
+ * Execute the init command
9
+ * Creates configuration file interactively
10
+ */
11
+ export declare function initCommand(): Promise<void>;
12
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;GAGG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAkFjD"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ /**
3
+ * Init Command
4
+ *
5
+ * Interactive command to create cadr.yaml configuration file.
6
+ * Handles user prompts and configuration creation.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.initCommand = initCommand;
10
+ const config_1 = require("../config");
11
+ const logger_1 = require("../logger");
12
+ const fs_1 = require("fs");
13
+ /**
14
+ * Execute the init command
15
+ * Creates configuration file interactively
16
+ */
17
+ async function initCommand() {
18
+ try {
19
+ const configPath = (0, config_1.getDefaultConfigPath)();
20
+ // Check if config already exists
21
+ if ((0, fs_1.existsSync)(configPath)) {
22
+ // eslint-disable-next-line no-console
23
+ console.log(`\nā„¹ļø Configuration file already exists: ${configPath}`);
24
+ // eslint-disable-next-line no-console
25
+ console.log('šŸ’” To reconfigure, delete the file and run `cadr init` again.\n');
26
+ return;
27
+ }
28
+ // Create configuration interactively
29
+ const config = await (0, config_1.createConfig)(configPath);
30
+ if (!config) {
31
+ // eslint-disable-next-line no-console
32
+ console.error('\nāŒ Failed to create configuration');
33
+ // eslint-disable-next-line no-console
34
+ console.error('Please try again or check file permissions.\n');
35
+ return;
36
+ }
37
+ // Validate the created config
38
+ const validation = (0, config_1.validateConfig)(config);
39
+ if (!validation.valid) {
40
+ logger_1.loggerInstance.warn('Created config has validation warnings', {
41
+ errors: validation.errors,
42
+ });
43
+ }
44
+ // Display next steps
45
+ // eslint-disable-next-line no-console
46
+ console.log('šŸ“‹ Configuration Summary:');
47
+ // eslint-disable-next-line no-console
48
+ console.log(` Provider: ${config.provider}`);
49
+ // eslint-disable-next-line no-console
50
+ console.log(` Model: ${config.analysis_model}`);
51
+ // eslint-disable-next-line no-console
52
+ console.log(` API Key Env: ${config.api_key_env}`);
53
+ // eslint-disable-next-line no-console
54
+ console.log(` Timeout: ${config.timeout_seconds}s`);
55
+ if (config.ignore_patterns && config.ignore_patterns.length > 0) {
56
+ // eslint-disable-next-line no-console
57
+ console.log(` Ignore Patterns: ${config.ignore_patterns.join(', ')}`);
58
+ }
59
+ // Check if API key is set
60
+ if (!process.env[config.api_key_env]) {
61
+ // eslint-disable-next-line no-console
62
+ console.warn(`\nāš ļø Warning: ${config.api_key_env} is not set in your environment`);
63
+ // eslint-disable-next-line no-console
64
+ console.warn('Set it before using analysis:');
65
+ // eslint-disable-next-line no-console
66
+ console.warn(` export ${config.api_key_env}="your-api-key-here"`);
67
+ // eslint-disable-next-line no-console
68
+ const providerLink = config.provider === 'gemini'
69
+ ? 'https://aistudio.google.com/app/apikey'
70
+ : 'https://platform.openai.com/api-keys';
71
+ // eslint-disable-next-line no-console
72
+ console.warn(`\n Get your API key from: ${providerLink}`);
73
+ }
74
+ // eslint-disable-next-line no-console
75
+ console.log('\nšŸŽ‰ Ready to analyze!');
76
+ // eslint-disable-next-line no-console
77
+ console.log('Next steps:');
78
+ // eslint-disable-next-line no-console
79
+ console.log(' 1. Stage your changes: git add <files>');
80
+ // eslint-disable-next-line no-console
81
+ console.log(' 2. Run analysis: cadr --analyze\n');
82
+ logger_1.loggerInstance.info('Init command completed successfully');
83
+ }
84
+ catch (error) {
85
+ // Fail-open: log error but don't throw
86
+ logger_1.loggerInstance.error('Init command failed', { error });
87
+ // eslint-disable-next-line no-console
88
+ console.error('\nāŒ An unexpected error occurred during initialization');
89
+ // eslint-disable-next-line no-console
90
+ console.error('Please check the logs for more details.\n');
91
+ }
92
+ }
93
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=init.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.test.d.ts","sourceRoot":"","sources":["../../src/commands/init.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const init_1 = require("./init");
37
+ const config = __importStar(require("../config"));
38
+ // Mock dependencies
39
+ jest.mock('../config');
40
+ describe('Init Command', () => {
41
+ beforeEach(() => {
42
+ jest.clearAllMocks();
43
+ });
44
+ describe('initCommand', () => {
45
+ test('calls createConfig when no config exists', async () => {
46
+ config.createConfig.mockResolvedValue({ provider: 'openai' });
47
+ await (0, init_1.initCommand)();
48
+ expect(config.createConfig).toHaveBeenCalled();
49
+ });
50
+ test('handles config creation errors gracefully', async () => {
51
+ config.createConfig.mockRejectedValue(new Error('Permission denied'));
52
+ await expect((0, init_1.initCommand)()).resolves.not.toThrow();
53
+ });
54
+ });
55
+ });
56
+ //# sourceMappingURL=init.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.test.js","sourceRoot":"","sources":["../../src/commands/init.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAAqC;AACrC,kDAAoC;AAEpC,oBAAoB;AACpB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAEvB,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,IAAI,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,CAAC,YAA0B,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE7E,MAAM,IAAA,kBAAW,GAAE,CAAC;YAEpB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,CAAC,YAA0B,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAErF,MAAM,MAAM,CAAC,IAAA,kBAAW,GAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Configuration schema for LLM analysis
3
+ */
4
+ export interface AnalysisConfig {
5
+ provider: 'openai' | 'gemini';
6
+ analysis_model: string;
7
+ api_key_env: string;
8
+ timeout_seconds: number;
9
+ ignore_patterns?: string[];
10
+ }
11
+ /**
12
+ * Configuration validation result
13
+ */
14
+ export interface ConfigValidationResult {
15
+ valid: boolean;
16
+ errors: string[];
17
+ }
18
+ /**
19
+ * Load and validate configuration from YAML file
20
+ * @param configPath - Path to configuration file
21
+ * @returns Promise resolving to validated config or null on error
22
+ */
23
+ export declare function loadConfig(configPath: string): Promise<AnalysisConfig | null>;
24
+ /**
25
+ * Validate configuration object against schema
26
+ * @param config - Configuration object to validate
27
+ * @returns Validation result with errors if any
28
+ */
29
+ export declare function validateConfig(config: unknown): ConfigValidationResult;
30
+ /**
31
+ * Create configuration interactively
32
+ * @param configPath - Path where config should be created
33
+ * @returns Promise resolving to created config or null on error
34
+ */
35
+ export declare function createConfig(configPath: string): Promise<AnalysisConfig | null>;
36
+ /**
37
+ * Get default configuration file path
38
+ */
39
+ export declare function getDefaultConfigPath(): string;
40
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAoBD;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CA0CnF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,sBAAsB,CAgBtE;AAcD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAyErF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
package/dist/config.js ADDED
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.loadConfig = loadConfig;
37
+ exports.validateConfig = validateConfig;
38
+ exports.createConfig = createConfig;
39
+ exports.getDefaultConfigPath = getDefaultConfigPath;
40
+ const yaml = __importStar(require("js-yaml"));
41
+ const yup = __importStar(require("yup"));
42
+ const fs_1 = require("fs");
43
+ const readline = __importStar(require("readline"));
44
+ const logger_1 = require("./logger");
45
+ /**
46
+ * Yup validation schema for configuration
47
+ */
48
+ const configSchema = yup.object({
49
+ provider: yup
50
+ .string()
51
+ .oneOf(['openai', 'gemini'])
52
+ .required('Provider must be one of: "openai", "gemini"'),
53
+ analysis_model: yup.string().required('Analysis model is required'),
54
+ api_key_env: yup.string().required('API key environment variable name is required'),
55
+ timeout_seconds: yup
56
+ .number()
57
+ .min(1, 'timeout_seconds must be at least 1 second')
58
+ .max(60, 'timeout_seconds must not exceed 60 seconds')
59
+ .required('timeout_seconds is required'),
60
+ ignore_patterns: yup.array().of(yup.string()).optional(),
61
+ });
62
+ /**
63
+ * Load and validate configuration from YAML file
64
+ * @param configPath - Path to configuration file
65
+ * @returns Promise resolving to validated config or null on error
66
+ */
67
+ async function loadConfig(configPath) {
68
+ try {
69
+ // Check if config file exists
70
+ if (!(0, fs_1.existsSync)(configPath)) {
71
+ logger_1.loggerInstance.warn('Configuration file not found', { configPath });
72
+ return null;
73
+ }
74
+ // Read and parse YAML
75
+ const fileContent = (0, fs_1.readFileSync)(configPath, 'utf-8');
76
+ const parsedConfig = yaml.load(fileContent);
77
+ if (!parsedConfig || typeof parsedConfig !== 'object') {
78
+ logger_1.loggerInstance.error('Invalid YAML configuration', { configPath });
79
+ return null;
80
+ }
81
+ // Validate configuration
82
+ const validationResult = validateConfig(parsedConfig);
83
+ if (!validationResult.valid) {
84
+ logger_1.loggerInstance.error('Configuration validation failed', {
85
+ configPath,
86
+ errors: validationResult.errors,
87
+ });
88
+ return null;
89
+ }
90
+ const config = parsedConfig;
91
+ // Warn if API key environment variable is not set
92
+ if (!process.env[config.api_key_env]) {
93
+ logger_1.loggerInstance.warn('API key environment variable is not set', {
94
+ api_key_env: config.api_key_env,
95
+ });
96
+ }
97
+ logger_1.loggerInstance.info('Configuration loaded successfully', { configPath, provider: config.provider });
98
+ return config;
99
+ }
100
+ catch (error) {
101
+ logger_1.loggerInstance.error('Failed to load configuration', { error, configPath });
102
+ return null;
103
+ }
104
+ }
105
+ /**
106
+ * Validate configuration object against schema
107
+ * @param config - Configuration object to validate
108
+ * @returns Validation result with errors if any
109
+ */
110
+ function validateConfig(config) {
111
+ try {
112
+ configSchema.validateSync(config, { abortEarly: false });
113
+ return { valid: true, errors: [] };
114
+ }
115
+ catch (error) {
116
+ if (error instanceof yup.ValidationError) {
117
+ return {
118
+ valid: false,
119
+ errors: error.errors,
120
+ };
121
+ }
122
+ return {
123
+ valid: false,
124
+ errors: ['Unknown validation error'],
125
+ };
126
+ }
127
+ }
128
+ /**
129
+ * Prompt user for input with default value
130
+ */
131
+ function prompt(rl, question, defaultValue) {
132
+ return new Promise((resolve) => {
133
+ const promptText = defaultValue ? `${question} (${defaultValue}): ` : `${question}: `;
134
+ rl.question(promptText, (answer) => {
135
+ resolve(answer.trim() || defaultValue || '');
136
+ });
137
+ });
138
+ }
139
+ /**
140
+ * Create configuration interactively
141
+ * @param configPath - Path where config should be created
142
+ * @returns Promise resolving to created config or null on error
143
+ */
144
+ async function createConfig(configPath) {
145
+ try {
146
+ const rl = readline.createInterface({
147
+ input: process.stdin,
148
+ output: process.stdout,
149
+ });
150
+ // eslint-disable-next-line no-console
151
+ console.log('\nšŸ”§ cADR Configuration Setup\n');
152
+ // Prompt for configuration values
153
+ const provider = await prompt(rl, 'LLM Provider', 'openai');
154
+ // Choose sensible defaults based on provider
155
+ const defaultModel = provider === 'gemini' ? 'gemini-1.5-pro' : 'gpt-4';
156
+ const defaultApiKeyEnv = provider === 'gemini' ? 'GEMINI_API_KEY' : 'OPENAI_API_KEY';
157
+ const analysis_model = await prompt(rl, 'Analysis Model', defaultModel);
158
+ const api_key_env = await prompt(rl, 'API Key Environment Variable', defaultApiKeyEnv);
159
+ const timeoutInput = await prompt(rl, 'Timeout (seconds)', '15');
160
+ const timeout_seconds = parseInt(timeoutInput, 10) || 15;
161
+ const ignorePatternsInput = await prompt(rl, 'Ignore Patterns (comma-separated, optional)', '*.md,package-lock.json');
162
+ const ignore_patterns = ignorePatternsInput
163
+ .split(',')
164
+ .map((p) => p.trim())
165
+ .filter((p) => p.length > 0) || undefined;
166
+ rl.close();
167
+ // Build configuration object
168
+ const config = {
169
+ provider: provider,
170
+ analysis_model,
171
+ api_key_env,
172
+ timeout_seconds,
173
+ ...(ignore_patterns && ignore_patterns.length > 0 ? { ignore_patterns } : {}),
174
+ };
175
+ // Validate configuration
176
+ const validationResult = validateConfig(config);
177
+ if (!validationResult.valid) {
178
+ // eslint-disable-next-line no-console
179
+ console.error('\nāŒ Configuration validation failed:');
180
+ // eslint-disable-next-line no-console
181
+ validationResult.errors.forEach((error) => console.error(` - ${error}`));
182
+ return null;
183
+ }
184
+ // Convert to YAML
185
+ const yamlContent = yaml.dump(config, {
186
+ indent: 2,
187
+ lineWidth: -1,
188
+ noRefs: true,
189
+ });
190
+ // Write to file
191
+ (0, fs_1.writeFileSync)(configPath, yamlContent, 'utf-8');
192
+ logger_1.loggerInstance.info('Configuration file created successfully', { configPath });
193
+ // eslint-disable-next-line no-console
194
+ console.log(`\nāœ… Configuration saved to: ${configPath}\n`);
195
+ return config;
196
+ }
197
+ catch (error) {
198
+ logger_1.loggerInstance.error('Failed to create configuration', { error, configPath });
199
+ return null;
200
+ }
201
+ }
202
+ /**
203
+ * Get default configuration file path
204
+ */
205
+ function getDefaultConfigPath() {
206
+ return 'cadr.yaml';
207
+ }
208
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=config.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.test.d.ts","sourceRoot":"","sources":["../src/config.test.ts"],"names":[],"mappings":""}