orcommit 1.0.4 → 1.1.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.
Files changed (40) hide show
  1. package/README.md +226 -59
  2. package/dist/cli.d.ts +4 -0
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +31 -0
  5. package/dist/cli.js.map +1 -1
  6. package/dist/data/thinking-phrases.d.ts +11 -0
  7. package/dist/data/thinking-phrases.d.ts.map +1 -0
  8. package/dist/data/thinking-phrases.js +146 -0
  9. package/dist/data/thinking-phrases.js.map +1 -0
  10. package/dist/modules/api.d.ts.map +1 -1
  11. package/dist/modules/api.js +2 -9
  12. package/dist/modules/api.js.map +1 -1
  13. package/dist/modules/core.d.ts +7 -1
  14. package/dist/modules/core.d.ts.map +1 -1
  15. package/dist/modules/core.js +326 -120
  16. package/dist/modules/core.js.map +1 -1
  17. package/dist/modules/diff-filter.d.ts.map +1 -1
  18. package/dist/modules/diff-filter.js +83 -21
  19. package/dist/modules/diff-filter.js.map +1 -1
  20. package/dist/modules/git.d.ts +9 -0
  21. package/dist/modules/git.d.ts.map +1 -1
  22. package/dist/modules/git.js +40 -0
  23. package/dist/modules/git.js.map +1 -1
  24. package/dist/modules/promo.d.ts +9 -0
  25. package/dist/modules/promo.d.ts.map +1 -0
  26. package/dist/modules/promo.js +66 -0
  27. package/dist/modules/promo.js.map +1 -0
  28. package/dist/modules/spinner.d.ts +90 -0
  29. package/dist/modules/spinner.d.ts.map +1 -0
  30. package/dist/modules/spinner.js +205 -0
  31. package/dist/modules/spinner.js.map +1 -0
  32. package/dist/types/index.d.ts +3 -0
  33. package/dist/types/index.d.ts.map +1 -1
  34. package/dist/types/index.js.map +1 -1
  35. package/dist/utils/formatting.d.ts +58 -0
  36. package/dist/utils/formatting.d.ts.map +1 -0
  37. package/dist/utils/formatting.js +120 -0
  38. package/dist/utils/formatting.js.map +1 -0
  39. package/package.json +42 -5
  40. package/preview.png +0 -0
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Beautiful animated spinner with rotating phrases
3
+ */
4
+ declare const COLOR_SCHEMES: {
5
+ cyan: import("chalk").ChalkInstance;
6
+ magenta: import("chalk").ChalkInstance;
7
+ yellow: import("chalk").ChalkInstance;
8
+ blue: import("chalk").ChalkInstance;
9
+ green: import("chalk").ChalkInstance;
10
+ red: import("chalk").ChalkInstance;
11
+ };
12
+ type ColorScheme = keyof typeof COLOR_SCHEMES;
13
+ interface SpinnerOptions {
14
+ text?: string;
15
+ color?: ColorScheme;
16
+ showPhrase?: boolean;
17
+ phraseInterval?: number;
18
+ style?: 'dots' | 'line' | 'brain';
19
+ }
20
+ export declare class AnimatedSpinner {
21
+ private intervalId?;
22
+ private frameIndex;
23
+ private currentPhrase;
24
+ private phraseChangeCounter;
25
+ private text;
26
+ private color;
27
+ private showPhrase;
28
+ private phraseInterval;
29
+ private frames;
30
+ private startTime;
31
+ constructor(options?: SpinnerOptions);
32
+ /**
33
+ * Start the spinner animation
34
+ */
35
+ start(): void;
36
+ /**
37
+ * Update spinner text
38
+ */
39
+ update(text: string): void;
40
+ /**
41
+ * Stop the spinner with success
42
+ */
43
+ succeed(text?: string): void;
44
+ /**
45
+ * Stop the spinner with error
46
+ */
47
+ fail(text?: string): void;
48
+ /**
49
+ * Stop the spinner with warning
50
+ */
51
+ warn(text?: string): void;
52
+ /**
53
+ * Stop the spinner with info
54
+ */
55
+ info(text?: string): void;
56
+ /**
57
+ * Stop the spinner
58
+ */
59
+ private stop;
60
+ /**
61
+ * Render current frame
62
+ */
63
+ private render;
64
+ /**
65
+ * Clear current line
66
+ */
67
+ private clearLine;
68
+ /**
69
+ * Get a random color for phrases
70
+ */
71
+ private getRandomColor;
72
+ /**
73
+ * Format elapsed time
74
+ */
75
+ private formatElapsed;
76
+ }
77
+ /**
78
+ * Create a new animated spinner
79
+ */
80
+ export declare function createSpinner(options?: SpinnerOptions): AnimatedSpinner;
81
+ /**
82
+ * Quick helper for AI thinking spinner
83
+ */
84
+ export declare function createAIThinkingSpinner(text?: string): AnimatedSpinner;
85
+ /**
86
+ * Quick helper for processing spinner (no phrases)
87
+ */
88
+ export declare function createProcessingSpinner(text?: string): AnimatedSpinner;
89
+ export {};
90
+ //# sourceMappingURL=spinner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/modules/spinner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,QAAA,MAAM,aAAa;;;;;;;CAOlB,CAAC;AAEF,KAAK,WAAW,GAAG,MAAM,OAAO,aAAa,CAAC;AAE9C,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CACnC;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,SAAS,CAAS;gBAEd,OAAO,GAAE,cAAmB;IAuBxC;;OAEG;IACH,KAAK,IAAI,IAAI;IAwBb;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK1B;;OAEG;IACH,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5B;;OAEG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAIzB;;OAEG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAIzB;;OAEG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAIzB;;OAEG;IACH,OAAO,CAAC,IAAI;IAyBZ;;OAEG;IACH,OAAO,CAAC,MAAM;IAmBd;;OAEG;IACH,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,aAAa;CAQtB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,eAAe,CAEvE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,GAAE,MAAyB,GAAG,eAAe,CAOxF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,GAAE,MAAqB,GAAG,eAAe,CAOpF"}
@@ -0,0 +1,205 @@
1
+ /**
2
+ * Beautiful animated spinner with rotating phrases
3
+ */
4
+ import chalk from 'chalk';
5
+ import { getRandomThinkingPhrase } from '../data/thinking-phrases.js';
6
+ // Spinner frames with different styles
7
+ const SPINNER_FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
8
+ const BRAIN_FRAMES = ['🧠', '💭', '💡', '✨', '⚡', '🔮', '🎯', '🚀'];
9
+ const DOT_FRAMES = ['⣾', '⣽', '⣻', '⢿', '⡿', '⣟', '⣯', '⣷'];
10
+ // Color schemes for different moods
11
+ const COLOR_SCHEMES = {
12
+ cyan: chalk.cyan,
13
+ magenta: chalk.magenta,
14
+ yellow: chalk.yellow,
15
+ blue: chalk.blue,
16
+ green: chalk.green,
17
+ red: chalk.red,
18
+ };
19
+ export class AnimatedSpinner {
20
+ intervalId;
21
+ frameIndex = 0;
22
+ currentPhrase;
23
+ phraseChangeCounter = 0;
24
+ text;
25
+ color;
26
+ showPhrase;
27
+ phraseInterval;
28
+ frames;
29
+ startTime;
30
+ constructor(options = {}) {
31
+ this.text = options.text || 'Processing';
32
+ this.color = options.color || 'cyan';
33
+ this.showPhrase = options.showPhrase ?? true;
34
+ this.phraseInterval = options.phraseInterval || 3000; // Change phrase every 3 seconds
35
+ this.currentPhrase = getRandomThinkingPhrase();
36
+ this.startTime = Date.now();
37
+ // Select frames based on style
38
+ switch (options.style) {
39
+ case 'brain':
40
+ this.frames = BRAIN_FRAMES;
41
+ break;
42
+ case 'dots':
43
+ this.frames = DOT_FRAMES;
44
+ break;
45
+ case 'line':
46
+ default:
47
+ this.frames = SPINNER_FRAMES;
48
+ break;
49
+ }
50
+ }
51
+ /**
52
+ * Start the spinner animation
53
+ */
54
+ start() {
55
+ if (this.intervalId) {
56
+ return; // Already running
57
+ }
58
+ // Hide cursor
59
+ process.stdout.write('\x1B[?25l');
60
+ this.render();
61
+ this.intervalId = setInterval(() => {
62
+ this.frameIndex = (this.frameIndex + 1) % this.frames.length;
63
+ this.phraseChangeCounter++;
64
+ // Change phrase periodically
65
+ if (this.phraseChangeCounter * 80 >= this.phraseInterval) {
66
+ this.currentPhrase = getRandomThinkingPhrase();
67
+ this.phraseChangeCounter = 0;
68
+ }
69
+ this.render();
70
+ }, 80); // ~12.5 FPS
71
+ }
72
+ /**
73
+ * Update spinner text
74
+ */
75
+ update(text) {
76
+ this.text = text;
77
+ this.render();
78
+ }
79
+ /**
80
+ * Stop the spinner with success
81
+ */
82
+ succeed(text) {
83
+ this.stop('✓', text, 'green');
84
+ }
85
+ /**
86
+ * Stop the spinner with error
87
+ */
88
+ fail(text) {
89
+ this.stop('✖', text, 'red');
90
+ }
91
+ /**
92
+ * Stop the spinner with warning
93
+ */
94
+ warn(text) {
95
+ this.stop('⚠', text, 'yellow');
96
+ }
97
+ /**
98
+ * Stop the spinner with info
99
+ */
100
+ info(text) {
101
+ this.stop('ℹ', text, 'blue');
102
+ }
103
+ /**
104
+ * Stop the spinner
105
+ */
106
+ stop(symbol, text, color) {
107
+ if (this.intervalId) {
108
+ clearInterval(this.intervalId);
109
+ this.intervalId = undefined;
110
+ }
111
+ // Clear line and show final message
112
+ this.clearLine();
113
+ const finalText = text || this.text;
114
+ const finalColor = color || this.color;
115
+ const colorFn = COLOR_SCHEMES[finalColor];
116
+ const elapsed = this.formatElapsed();
117
+ if (this.showPhrase) {
118
+ console.log(colorFn(`${symbol} ${finalText}`) + chalk.gray(` ${elapsed}`));
119
+ }
120
+ else {
121
+ console.log(colorFn(`${symbol} ${finalText}`));
122
+ }
123
+ // Show cursor
124
+ process.stdout.write('\x1B[?25h');
125
+ }
126
+ /**
127
+ * Render current frame
128
+ */
129
+ render() {
130
+ const frame = this.frames[this.frameIndex] || '';
131
+ const colorFn = COLOR_SCHEMES[this.color];
132
+ this.clearLine();
133
+ if (this.showPhrase) {
134
+ // Show main text + colorful phrase
135
+ const phraseColor = this.getRandomColor();
136
+ process.stdout.write(colorFn(`${frame} ${this.text}`) +
137
+ chalk.gray(' · ') +
138
+ phraseColor(this.currentPhrase));
139
+ }
140
+ else {
141
+ process.stdout.write(colorFn(`${frame} ${this.text}`));
142
+ }
143
+ }
144
+ /**
145
+ * Clear current line
146
+ */
147
+ clearLine() {
148
+ if (process.stdout.clearLine && process.stdout.cursorTo) {
149
+ process.stdout.clearLine(0);
150
+ process.stdout.cursorTo(0);
151
+ }
152
+ else {
153
+ // Fallback for environments without clearLine support
154
+ process.stdout.write('\r\x1b[K');
155
+ }
156
+ }
157
+ /**
158
+ * Get a random color for phrases
159
+ */
160
+ getRandomColor() {
161
+ const colors = [chalk.cyan, chalk.magenta, chalk.yellow, chalk.blue, chalk.green];
162
+ return colors[Math.floor(Math.random() * colors.length)] || chalk.white;
163
+ }
164
+ /**
165
+ * Format elapsed time
166
+ */
167
+ formatElapsed() {
168
+ const elapsed = Date.now() - this.startTime;
169
+ if (elapsed < 1000) {
170
+ return `${elapsed}ms`;
171
+ }
172
+ else {
173
+ return `${(elapsed / 1000).toFixed(1)}s`;
174
+ }
175
+ }
176
+ }
177
+ /**
178
+ * Create a new animated spinner
179
+ */
180
+ export function createSpinner(options) {
181
+ return new AnimatedSpinner(options);
182
+ }
183
+ /**
184
+ * Quick helper for AI thinking spinner
185
+ */
186
+ export function createAIThinkingSpinner(text = 'AI is thinking') {
187
+ return new AnimatedSpinner({
188
+ text,
189
+ color: 'cyan',
190
+ showPhrase: true,
191
+ style: 'line',
192
+ });
193
+ }
194
+ /**
195
+ * Quick helper for processing spinner (no phrases)
196
+ */
197
+ export function createProcessingSpinner(text = 'Processing') {
198
+ return new AnimatedSpinner({
199
+ text,
200
+ color: 'blue',
201
+ showPhrase: false,
202
+ style: 'dots',
203
+ });
204
+ }
205
+ //# sourceMappingURL=spinner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../src/modules/spinner.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ export interface UserPreferences {
19
19
  readonly autoConfirm: boolean;
20
20
  readonly language: string;
21
21
  readonly commitFormat: 'conventional' | 'simple';
22
+ readonly customPrompt?: string;
22
23
  }
23
24
  export interface GitDiff {
24
25
  readonly files: GitFile[];
@@ -88,6 +89,8 @@ export interface CliOptions {
88
89
  readonly clearCache?: boolean;
89
90
  readonly push?: boolean;
90
91
  readonly autoPush?: boolean;
92
+ readonly prompt?: string;
93
+ readonly context?: string;
91
94
  }
92
95
  export type CommitType = 'feat' | 'fix' | 'docs' | 'style' | 'refactor' | 'test' | 'chore' | 'perf' | 'ci' | 'build' | 'revert';
93
96
  export declare abstract class BaseError extends Error {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAiHA,cAAc;AACd,MAAM,OAAgB,SAAU,SAAQ,KAAK;IAIW;IAAtD,YAAY,OAAe,EAA2B,KAAa;QACjE,KAAK,CAAC,OAAO,CAAC,CAAC;QADqC,UAAK,GAAL,KAAK,CAAQ;QAEjE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,SAAS;IAC/B,IAAI,GAAG,cAAc,CAAC;IACtB,WAAW,GAAG,KAAK,CAAC;CAC9B;AAED,MAAM,OAAO,QAAS,SAAQ,SAAS;IAC5B,IAAI,GAAG,WAAW,CAAC;IACnB,WAAW,GAAG,KAAK,CAAC;CAC9B;AAED,MAAM,OAAO,QAAS,SAAQ,SAAS;IAMnB;IALT,IAAI,GAAG,WAAW,CAAC;IACnB,WAAW,CAAU;IAE9B,YACE,OAAe,EACC,UAAmB,EACnC,KAAa;QAEb,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAHN,eAAU,GAAV,UAAU,CAAS;QAInC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAEO,qBAAqB,CAAC,UAAmB;QAC/C,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9B,OAAO,UAAU,KAAK,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,CAAC,CAAC;IACvE,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IAChC,IAAI,GAAG,eAAe,CAAC;IACvB,WAAW,GAAG,IAAI,CAAC;CAC7B;AAwBD,YAAY;AACZ,MAAM,CAAC,MAAM,cAAc,GAAqB;IAC9C,SAAS,EAAE;QACT,UAAU,EAAE;YACV,OAAO,EAAE,8BAA8B;YACvC,OAAO,EAAE,KAAK;SACf;QACD,MAAM,EAAE;YACN,OAAO,EAAE,2BAA2B;YACpC,OAAO,EAAE,KAAK;SACf;KACF;IACD,WAAW,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,SAAS,EAAE,GAAG;QACd,WAAW,EAAE,GAAG;QAChB,WAAW,EAAE,KAAK;QAClB,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,cAAc;KAC7B;IACD,OAAO,EAAE,OAAO;CACR,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,cAAc,EAAE,IAAI,EAAE,aAAa;IACnC,sBAAsB,EAAE,EAAE;IAC1B,uBAAuB,EAAE,CAAC;CAClB,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,IAAI,EAAE,KAAK;IACvB,SAAS,EAAE,KAAK,EAAE,KAAK;IACvB,cAAc,EAAE,CAAC;CACT,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,yDAAyD;IACzD,kBAAkB,EAAE,EAAE;IACtB,qDAAqD;IACrD,mBAAmB,EAAE,GAAG;IACxB,yCAAyC;IACzC,cAAc,EAAE,IAAI;IACpB,uCAAuC;IACvC,eAAe,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM;CAC5B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAqHA,cAAc;AACd,MAAM,OAAgB,SAAU,SAAQ,KAAK;IAIW;IAAtD,YAAY,OAAe,EAA2B,KAAa;QACjE,KAAK,CAAC,OAAO,CAAC,CAAC;QADqC,UAAK,GAAL,KAAK,CAAQ;QAEjE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,SAAS;IAC/B,IAAI,GAAG,cAAc,CAAC;IACtB,WAAW,GAAG,KAAK,CAAC;CAC9B;AAED,MAAM,OAAO,QAAS,SAAQ,SAAS;IAC5B,IAAI,GAAG,WAAW,CAAC;IACnB,WAAW,GAAG,KAAK,CAAC;CAC9B;AAED,MAAM,OAAO,QAAS,SAAQ,SAAS;IAMnB;IALT,IAAI,GAAG,WAAW,CAAC;IACnB,WAAW,CAAU;IAE9B,YACE,OAAe,EACC,UAAmB,EACnC,KAAa;QAEb,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAHN,eAAU,GAAV,UAAU,CAAS;QAInC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAEO,qBAAqB,CAAC,UAAmB;QAC/C,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9B,OAAO,UAAU,KAAK,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG,CAAC,CAAC;IACvE,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IAChC,IAAI,GAAG,eAAe,CAAC;IACvB,WAAW,GAAG,IAAI,CAAC;CAC7B;AAwBD,YAAY;AACZ,MAAM,CAAC,MAAM,cAAc,GAAqB;IAC9C,SAAS,EAAE;QACT,UAAU,EAAE;YACV,OAAO,EAAE,8BAA8B;YACvC,OAAO,EAAE,KAAK;SACf;QACD,MAAM,EAAE;YACN,OAAO,EAAE,2BAA2B;YACpC,OAAO,EAAE,KAAK;SACf;KACF;IACD,WAAW,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,SAAS,EAAE,GAAG;QACd,WAAW,EAAE,GAAG;QAChB,WAAW,EAAE,KAAK;QAClB,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,cAAc;KAC7B;IACD,OAAO,EAAE,OAAO;CACR,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,cAAc,EAAE,IAAI,EAAE,aAAa;IACnC,sBAAsB,EAAE,EAAE;IAC1B,uBAAuB,EAAE,CAAC;CAClB,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,WAAW,EAAE,CAAC;IACd,UAAU,EAAE,IAAI,EAAE,KAAK;IACvB,SAAS,EAAE,KAAK,EAAE,KAAK;IACvB,cAAc,EAAE,CAAC;CACT,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,yDAAyD;IACzD,kBAAkB,EAAE,EAAE;IACtB,qDAAqD;IACrD,mBAAmB,EAAE,GAAG;IACxB,yCAAyC;IACzC,cAAc,EAAE,IAAI;IACpB,uCAAuC;IACvC,eAAe,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM;CAC5B,CAAC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Text formatting and block wrapping utilities
3
+ */
4
+ /**
5
+ * Clean text by removing extra whitespace and line breaks
6
+ */
7
+ export declare function cleanText(text: string): string;
8
+ /**
9
+ * Wrap text in a named block
10
+ * @param blockName - Name of the block (e.g., 'IMPORTANT', 'CONTEXT', 'DIFF')
11
+ * @param content - Content to wrap
12
+ * @param cleanContent - Whether to clean the content first (default: true)
13
+ */
14
+ export declare function wrapInBlock(blockName: string, content: string, cleanContent?: boolean): string;
15
+ /**
16
+ * Create structured prompt with multiple blocks
17
+ * @param blocks - Array of {name, content, clean} objects
18
+ */
19
+ export declare function createStructuredPrompt(blocks: Array<{
20
+ name: string;
21
+ content: string;
22
+ clean?: boolean;
23
+ }>): string;
24
+ /**
25
+ * Wrap user feedback in IMPORTANT block
26
+ */
27
+ export declare function wrapUserFeedback(feedback: string): string;
28
+ /**
29
+ * Wrap diff content in DIFF_CONTENT block
30
+ */
31
+ export declare function wrapDiffContent(diff: string): string;
32
+ /**
33
+ * Wrap instructions in INSTRUCTIONS block
34
+ */
35
+ export declare function wrapInstructions(instructions: string): string;
36
+ /**
37
+ * Wrap examples in EXAMPLES block
38
+ */
39
+ export declare function wrapExamples(examples: string): string;
40
+ /**
41
+ * Wrap context in CONTEXT block
42
+ */
43
+ export declare function wrapContext(context: string): string;
44
+ /**
45
+ * Wrap rules in RULES block
46
+ */
47
+ export declare function wrapRules(rules: string): string;
48
+ /**
49
+ * Parse AI JSON response with fallback to plain text
50
+ * Handles various response formats: pure JSON, markdown-wrapped, or plain text
51
+ * @param response - AI response (should be JSON)
52
+ * @returns Object with assessment and commitMessage
53
+ */
54
+ export declare function parseAIResponse(response: string): {
55
+ assessment: string | null;
56
+ commitMessage: string;
57
+ };
58
+ //# sourceMappingURL=formatting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../src/utils/formatting.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM9C;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,OAAc,GAC3B,MAAM,CAGR;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAChE,MAAM,CAIR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG;IACjD,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB,CA+CA"}
@@ -0,0 +1,120 @@
1
+ /**
2
+ * Text formatting and block wrapping utilities
3
+ */
4
+ /**
5
+ * Clean text by removing extra whitespace and line breaks
6
+ */
7
+ export function cleanText(text) {
8
+ return text
9
+ .trim() // Remove leading/trailing whitespace
10
+ .replace(/ +/g, ' ') // Replace multiple spaces with single space
11
+ .replace(/\n{3,}/g, '\n\n') // Replace 3+ newlines with double newline
12
+ .replace(/\r\n/g, '\n'); // Normalize line endings
13
+ }
14
+ /**
15
+ * Wrap text in a named block
16
+ * @param blockName - Name of the block (e.g., 'IMPORTANT', 'CONTEXT', 'DIFF')
17
+ * @param content - Content to wrap
18
+ * @param cleanContent - Whether to clean the content first (default: true)
19
+ */
20
+ export function wrapInBlock(blockName, content, cleanContent = true) {
21
+ const processedContent = cleanContent ? cleanText(content) : content;
22
+ return `[${blockName}]\n${processedContent}\n[/${blockName}]`;
23
+ }
24
+ /**
25
+ * Create structured prompt with multiple blocks
26
+ * @param blocks - Array of {name, content, clean} objects
27
+ */
28
+ export function createStructuredPrompt(blocks) {
29
+ return blocks
30
+ .map(block => wrapInBlock(block.name, block.content, block.clean ?? true))
31
+ .join('\n\n');
32
+ }
33
+ /**
34
+ * Wrap user feedback in IMPORTANT block
35
+ */
36
+ export function wrapUserFeedback(feedback) {
37
+ return wrapInBlock('IMPORTANT_USER_FEEDBACK', feedback);
38
+ }
39
+ /**
40
+ * Wrap diff content in DIFF_CONTENT block
41
+ */
42
+ export function wrapDiffContent(diff) {
43
+ return wrapInBlock('DIFF_CONTENT', diff, false); // Don't clean diff content
44
+ }
45
+ /**
46
+ * Wrap instructions in INSTRUCTIONS block
47
+ */
48
+ export function wrapInstructions(instructions) {
49
+ return wrapInBlock('INSTRUCTIONS', instructions);
50
+ }
51
+ /**
52
+ * Wrap examples in EXAMPLES block
53
+ */
54
+ export function wrapExamples(examples) {
55
+ return wrapInBlock('EXAMPLES', examples);
56
+ }
57
+ /**
58
+ * Wrap context in CONTEXT block
59
+ */
60
+ export function wrapContext(context) {
61
+ return wrapInBlock('CONTEXT', context);
62
+ }
63
+ /**
64
+ * Wrap rules in RULES block
65
+ */
66
+ export function wrapRules(rules) {
67
+ return wrapInBlock('RULES', rules);
68
+ }
69
+ /**
70
+ * Parse AI JSON response with fallback to plain text
71
+ * Handles various response formats: pure JSON, markdown-wrapped, or plain text
72
+ * @param response - AI response (should be JSON)
73
+ * @returns Object with assessment and commitMessage
74
+ */
75
+ export function parseAIResponse(response) {
76
+ let cleanResponse = response.trim();
77
+ // Remove markdown code blocks if present (```json ... ``` or ``` ... ```)
78
+ const codeBlockMatch = cleanResponse.match(/```(?:json)?\s*(\{[\s\S]*?\})\s*```/);
79
+ if (codeBlockMatch && codeBlockMatch[1]) {
80
+ cleanResponse = codeBlockMatch[1].trim();
81
+ }
82
+ // Remove common prefixes that AI might add
83
+ cleanResponse = cleanResponse
84
+ .replace(/^(?:Here is|Here's|This is|The|A)\s+(?:the\s+)?(?:JSON|response|result)?:?\s*/i, '')
85
+ .trim();
86
+ try {
87
+ // Try to parse as JSON
88
+ const parsed = JSON.parse(cleanResponse);
89
+ if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) {
90
+ return {
91
+ assessment: parsed.codeAssessment || null,
92
+ commitMessage: parsed.commitMessage || response.trim()
93
+ };
94
+ }
95
+ }
96
+ catch (error) {
97
+ // JSON parsing failed - try to extract JSON from text
98
+ const jsonMatch = response.match(/\{[\s\S]*"(?:codeAssessment|commitMessage)"[\s\S]*\}/);
99
+ if (jsonMatch) {
100
+ try {
101
+ const parsed = JSON.parse(jsonMatch[0]);
102
+ if (parsed && typeof parsed === 'object') {
103
+ return {
104
+ assessment: parsed.codeAssessment || null,
105
+ commitMessage: parsed.commitMessage || response.trim()
106
+ };
107
+ }
108
+ }
109
+ catch {
110
+ // Continue to fallback
111
+ }
112
+ }
113
+ }
114
+ // Fallback: treat entire response as commit message (backward compatibility)
115
+ return {
116
+ assessment: null,
117
+ commitMessage: response.trim()
118
+ };
119
+ }
120
+ //# sourceMappingURL=formatting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../src/utils/formatting.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI;SACR,IAAI,EAAE,CAA2B,qCAAqC;SACtE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAY,4CAA4C;SAC5E,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAM,0CAA0C;SAC1E,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAS,yBAAyB;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CACzB,SAAiB,EACjB,OAAe,EACf,eAAwB,IAAI;IAE5B,MAAM,gBAAgB,GAAG,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACrE,OAAO,IAAI,SAAS,MAAM,gBAAgB,OAAO,SAAS,GAAG,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAiE;IAEjE,OAAO,MAAM;SACV,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;SACzE,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,WAAW,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,WAAW,CAAC,cAAc,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,2BAA2B;AAC9E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB;IACnD,OAAO,WAAW,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,OAAO,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,OAAO,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB;IAI9C,IAAI,aAAa,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEpC,0EAA0E;IAC1E,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAClF,IAAI,cAAc,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED,2CAA2C;IAC3C,aAAa,GAAG,aAAa;SAC1B,OAAO,CAAC,gFAAgF,EAAE,EAAE,CAAC;SAC7F,IAAI,EAAE,CAAC;IAEV,IAAI,CAAC;QACH,uBAAuB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEzC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,OAAO;gBACL,UAAU,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI;gBACzC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,QAAQ,CAAC,IAAI,EAAE;aACvD,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,sDAAsD;QACtD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACzF,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACzC,OAAO;wBACL,UAAU,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI;wBACzC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,QAAQ,CAAC,IAAI,EAAE;qBACvD,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,uBAAuB;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,OAAO;QACL,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE;KAC/B,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,16 +1,33 @@
1
1
  {
2
2
  "name": "orcommit",
3
- "version": "1.0.4",
4
- "description": "Efficient CLI tool for generating commit messages using OpenRouter and OpenAI APIs with chunked processing for large files",
3
+ "version": "1.1.1",
4
+ "description": "AI-powered commit message generator - Automated git commits using OpenAI, Claude, and OpenRouter APIs with intelligent diff processing, custom prompts, and interactive regeneration",
5
5
  "keywords": [
6
6
  "git",
7
7
  "commit",
8
8
  "ai",
9
9
  "openrouter",
10
10
  "openai",
11
+ "claude",
12
+ "anthropic",
11
13
  "cli",
12
14
  "typescript",
13
- "automation"
15
+ "automation",
16
+ "git-automation",
17
+ "commit-message",
18
+ "ai-commit",
19
+ "conventional-commits",
20
+ "gpt",
21
+ "gpt-4",
22
+ "developer-tools",
23
+ "productivity",
24
+ "git-hooks",
25
+ "ai-assistant",
26
+ "code-assistant",
27
+ "ollama",
28
+ "local-ai",
29
+ "multi-provider",
30
+ "interactive-cli"
14
31
  ],
15
32
  "main": "dist/index.js",
16
33
  "bin": {
@@ -37,7 +54,8 @@
37
54
  "files": [
38
55
  "dist/**/*",
39
56
  "README.md",
40
- "LICENSE"
57
+ "LICENSE",
58
+ "preview.png"
41
59
  ],
42
60
  "engines": {
43
61
  "node": ">=16.0.0"
@@ -46,7 +64,26 @@
46
64
  "type": "git",
47
65
  "url": "git+https://github.com/markolofsen/openrouter-commit.git"
48
66
  },
49
- "author": "Mark Olofsen",
67
+ "homepage": "https://reforms.ai",
68
+ "bugs": {
69
+ "url": "https://github.com/markolofsen/openrouter-commit/issues",
70
+ "email": "contact@reforms.ai"
71
+ },
72
+ "author": {
73
+ "name": "Mark Olofsen",
74
+ "email": "contact@reforms.ai",
75
+ "url": "https://reforms.ai"
76
+ },
77
+ "contributors": [
78
+ {
79
+ "name": "Reforms.ai Team",
80
+ "url": "https://reforms.ai"
81
+ }
82
+ ],
83
+ "funding": {
84
+ "type": "individual",
85
+ "url": "https://reforms.ai"
86
+ },
50
87
  "license": "MIT",
51
88
  "devDependencies": {
52
89
  "@types/jest": "^29.5.8",
package/preview.png ADDED
Binary file