@dongowu/git-ai-cli 1.0.18 → 1.0.20
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 +78 -6
- package/README_EN.md +75 -4
- package/dist/cli.js +2 -135
- package/dist/cli.js.map +1 -1
- package/dist/cli_main.d.ts +2 -0
- package/dist/cli_main.d.ts.map +1 -0
- package/dist/cli_main.js +189 -0
- package/dist/cli_main.js.map +1 -0
- package/dist/commands/commit.d.ts.map +1 -1
- package/dist/commands/commit.js +26 -8
- package/dist/commands/commit.js.map +1 -1
- package/dist/commands/config_manage.d.ts +14 -0
- package/dist/commands/config_manage.d.ts.map +1 -0
- package/dist/commands/config_manage.js +185 -0
- package/dist/commands/config_manage.js.map +1 -0
- package/dist/commands/hook.d.ts.map +1 -1
- package/dist/commands/hook.js +58 -6
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/msg.d.ts +1 -0
- package/dist/commands/msg.d.ts.map +1 -1
- package/dist/commands/msg.js +28 -5
- package/dist/commands/msg.js.map +1 -1
- package/dist/commands/report.d.ts +7 -2
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +90 -14
- package/dist/commands/report.js.map +1 -1
- package/dist/utils/agent.d.ts.map +1 -1
- package/dist/utils/agent.js +29 -1
- package/dist/utils/agent.js.map +1 -1
- package/dist/utils/agent_lite.d.ts +5 -0
- package/dist/utils/agent_lite.d.ts.map +1 -0
- package/dist/utils/agent_lite.js +263 -0
- package/dist/utils/agent_lite.js.map +1 -0
- package/dist/utils/ai.d.ts.map +1 -1
- package/dist/utils/ai.js +169 -17
- package/dist/utils/ai.js.map +1 -1
- package/dist/utils/config.d.ts +5 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +64 -5
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/git.d.ts +9 -0
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js +188 -50
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/update.d.ts +3 -1
- package/dist/utils/update.d.ts.map +1 -1
- package/dist/utils/update.js +53 -2
- package/dist/utils/update.js.map +1 -1
- package/package.json +1 -1
- package/release_notes.md +4 -4
package/dist/utils/ai.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
import { runAgentLoop } from './agent.js';
|
|
3
|
+
import { runAgentLite } from './agent_lite.js';
|
|
3
4
|
import { getFileStats } from './git.js';
|
|
4
5
|
import chalk from 'chalk';
|
|
5
6
|
function getTimeoutMs() {
|
|
@@ -9,6 +10,38 @@ function getTimeoutMs() {
|
|
|
9
10
|
return parsed;
|
|
10
11
|
return 120_000; // 2 minutes
|
|
11
12
|
}
|
|
13
|
+
function parseBooleanEnv(value) {
|
|
14
|
+
if (!value)
|
|
15
|
+
return undefined;
|
|
16
|
+
const normalized = value.trim().toLowerCase();
|
|
17
|
+
if (['1', 'true', 'yes', 'y', 'on'].includes(normalized))
|
|
18
|
+
return true;
|
|
19
|
+
if (['0', 'false', 'no', 'n', 'off'].includes(normalized))
|
|
20
|
+
return false;
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
function getMaxOutputTokens(numChoices) {
|
|
24
|
+
const raw = process.env.GIT_AI_MAX_OUTPUT_TOKENS || process.env.OCO_TOKENS_MAX_OUTPUT;
|
|
25
|
+
const parsed = raw ? Number.parseInt(raw, 10) : Number.NaN;
|
|
26
|
+
const base = Number.isFinite(parsed) && parsed > 0 ? parsed : 500;
|
|
27
|
+
return base * Math.max(numChoices, 1);
|
|
28
|
+
}
|
|
29
|
+
function redactSecrets(input) {
|
|
30
|
+
if (!input)
|
|
31
|
+
return input;
|
|
32
|
+
// Generic "api key: xxxx" patterns.
|
|
33
|
+
let out = input.replace(/(api[_ -]?key\s*[:=]\s*)([^\s,;]+)/gi, (_m, p1, p2) => {
|
|
34
|
+
const s = String(p2);
|
|
35
|
+
if (s.length <= 8)
|
|
36
|
+
return `${p1}********`;
|
|
37
|
+
return `${p1}${s.slice(0, 2)}****${s.slice(-2)}`;
|
|
38
|
+
});
|
|
39
|
+
// Common OpenAI-style keys: sk-...
|
|
40
|
+
out = out.replace(/\bsk-[A-Za-z0-9]{8,}\b/g, (m) => `${m.slice(0, 4)}****${m.slice(-2)}`);
|
|
41
|
+
// Avoid leaking long tokens in error messages.
|
|
42
|
+
out = out.replace(/\b[A-Za-z0-9_-]{24,}\b/g, (m) => `${m.slice(0, 3)}****${m.slice(-3)}`);
|
|
43
|
+
return out;
|
|
44
|
+
}
|
|
12
45
|
function formatAgentFailureReason(error) {
|
|
13
46
|
const err = error;
|
|
14
47
|
const status = typeof err?.status === 'number' ? String(err.status) : '';
|
|
@@ -18,19 +51,30 @@ function formatAgentFailureReason(error) {
|
|
|
18
51
|
const rawMsg = (typeof err?.error?.message === 'string' && err.error.message) ||
|
|
19
52
|
(typeof err?.message === 'string' && err.message) ||
|
|
20
53
|
'';
|
|
21
|
-
const compactMsg = rawMsg.replace(/\s+/g, ' ').trim();
|
|
54
|
+
const compactMsg = redactSecrets(rawMsg).replace(/\s+/g, ' ').trim();
|
|
22
55
|
const shortMsg = compactMsg.length > 180 ? compactMsg.slice(0, 180) + '...' : compactMsg;
|
|
23
56
|
const parts = [status || name, code, type, shortMsg].filter(Boolean);
|
|
24
57
|
return parts.join(' ');
|
|
25
58
|
}
|
|
26
|
-
function
|
|
59
|
+
function resolveAgentStrategy(_config) {
|
|
60
|
+
const raw = (process.env.GIT_AI_AGENT_STRATEGY || '').trim().toLowerCase();
|
|
61
|
+
if (raw === 'tools' || raw === 'tool' || raw === 'function' || raw === 'functions')
|
|
62
|
+
return 'tools';
|
|
63
|
+
if (raw === 'lite' || raw === 'local' || raw === 'fast')
|
|
64
|
+
return 'lite';
|
|
65
|
+
// Default: lite (fewer API calls, works for providers without tool calling).
|
|
66
|
+
// Users can opt-in to tool calling with GIT_AI_AGENT_STRATEGY=tools.
|
|
67
|
+
return 'lite';
|
|
68
|
+
}
|
|
69
|
+
function resolveAgentModel(config, strategy) {
|
|
27
70
|
const envModel = process.env.GIT_AI_AGENT_MODEL;
|
|
28
71
|
if (envModel && envModel.trim())
|
|
29
72
|
return envModel.trim();
|
|
30
73
|
const configured = config.agentModel;
|
|
31
74
|
if (configured && configured.trim())
|
|
32
75
|
return configured.trim();
|
|
33
|
-
|
|
76
|
+
// DeepSeek reasoner models are often not tool-capable; switch to a tool-capable model only when needed.
|
|
77
|
+
if (strategy === 'tools' && config.provider === 'deepseek') {
|
|
34
78
|
const base = (config.model || '').trim();
|
|
35
79
|
if (base.toLowerCase().includes('reasoner')) {
|
|
36
80
|
return 'deepseek-chat';
|
|
@@ -38,6 +82,75 @@ function resolveAgentModel(config) {
|
|
|
38
82
|
}
|
|
39
83
|
return config.model;
|
|
40
84
|
}
|
|
85
|
+
function isAgentDisabled() {
|
|
86
|
+
return parseBooleanEnv(process.env.GIT_AI_DISABLE_AGENT) === true;
|
|
87
|
+
}
|
|
88
|
+
function isAutoAgentEnabled() {
|
|
89
|
+
const raw = parseBooleanEnv(process.env.GIT_AI_AUTO_AGENT);
|
|
90
|
+
if (raw === undefined)
|
|
91
|
+
return true;
|
|
92
|
+
return raw;
|
|
93
|
+
}
|
|
94
|
+
function stripCodeFences(text) {
|
|
95
|
+
return text.replace(/^```[a-z]*\n?/i, '').replace(/```$/i, '').trim();
|
|
96
|
+
}
|
|
97
|
+
function tryParseMessagesJson(content) {
|
|
98
|
+
try {
|
|
99
|
+
const parsed = JSON.parse(content);
|
|
100
|
+
if (Array.isArray(parsed)) {
|
|
101
|
+
const arr = parsed.filter((item) => typeof item === 'string');
|
|
102
|
+
return arr.map((s) => s.trim()).filter(Boolean);
|
|
103
|
+
}
|
|
104
|
+
if (parsed && typeof parsed === 'object') {
|
|
105
|
+
const anyObj = parsed;
|
|
106
|
+
if (typeof anyObj.message === 'string') {
|
|
107
|
+
const msg = anyObj.message.trim();
|
|
108
|
+
return msg ? [msg] : [];
|
|
109
|
+
}
|
|
110
|
+
if (Array.isArray(anyObj.messages)) {
|
|
111
|
+
const arr = anyObj.messages.filter((item) => typeof item === 'string');
|
|
112
|
+
return arr.map((s) => s.trim()).filter(Boolean);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
catch {
|
|
117
|
+
// ignore
|
|
118
|
+
}
|
|
119
|
+
return null;
|
|
120
|
+
}
|
|
121
|
+
function normalizeAIError(error) {
|
|
122
|
+
if (error instanceof Error) {
|
|
123
|
+
const safe = redactSecrets(error.message || '');
|
|
124
|
+
const e = new Error(safe);
|
|
125
|
+
e.cause = error;
|
|
126
|
+
return e;
|
|
127
|
+
}
|
|
128
|
+
return new Error(redactSecrets(String(error)));
|
|
129
|
+
}
|
|
130
|
+
function shouldFallbackFromAgent(error) {
|
|
131
|
+
const err = error;
|
|
132
|
+
const status = typeof err?.status === 'number' ? err.status : undefined;
|
|
133
|
+
const type = typeof err?.type === 'string' ? err.type : '';
|
|
134
|
+
// If auth/endpoint is wrong, basic mode will fail too: don't spam the user with a second failure.
|
|
135
|
+
if (status === 401 || status === 403 || type === 'authentication_error')
|
|
136
|
+
return false;
|
|
137
|
+
if (status === 404)
|
|
138
|
+
return false;
|
|
139
|
+
// Rate limits / transient errors: agent uses more calls; basic mode may succeed.
|
|
140
|
+
if (status === 429)
|
|
141
|
+
return true;
|
|
142
|
+
if (status && status >= 500)
|
|
143
|
+
return true;
|
|
144
|
+
const msg = (typeof err?.error?.message === 'string' && err.error.message) ||
|
|
145
|
+
(typeof err?.message === 'string' && err.message) ||
|
|
146
|
+
'';
|
|
147
|
+
const lowered = String(msg).toLowerCase();
|
|
148
|
+
// Tool calling compatibility issues: fall back to basic mode.
|
|
149
|
+
if (lowered.includes('tool') || lowered.includes('tool_choice') || lowered.includes('function'))
|
|
150
|
+
return true;
|
|
151
|
+
// Default: keep previous behavior (fallback), unless it's clearly an auth/endpoint issue.
|
|
152
|
+
return true;
|
|
153
|
+
}
|
|
41
154
|
const DEFAULT_SYSTEM_PROMPT_EN = `You are an expert at writing Git commit messages following the Conventional Commits specification.
|
|
42
155
|
|
|
43
156
|
Based on the git diff provided, generate a concise and descriptive commit message.
|
|
@@ -125,22 +238,42 @@ export async function generateCommitMessage(client, input, config, numChoices =
|
|
|
125
238
|
diff = '';
|
|
126
239
|
};
|
|
127
240
|
// Auto-enable Agent for critical branches in Git Flow
|
|
128
|
-
|
|
129
|
-
|
|
241
|
+
// Critical: release/hotfix/master/main - always use Agent
|
|
242
|
+
// Feature: feature/*/bugfix/*/dev/* - use Agent for impact analysis
|
|
243
|
+
const branch = input.branchName || '';
|
|
244
|
+
const isCriticalBranch = /^(release|hotfix)\//.test(branch) || /^(master|main)$/.test(branch);
|
|
245
|
+
const isFeatureBranch = /^(feature|bugfix|dev)\//.test(branch);
|
|
246
|
+
const autoAgentEnabled = isAutoAgentEnabled();
|
|
247
|
+
const agentDisabled = isAgentDisabled();
|
|
248
|
+
const shouldRunAgent = !agentDisabled &&
|
|
249
|
+
(input.forceAgent || (autoAgentEnabled && (input.truncated || isCriticalBranch || isFeatureBranch))) &&
|
|
250
|
+
numChoices === 1;
|
|
130
251
|
// Trigger Agent Mode if diff is truncated OR forced by user OR critical branch
|
|
131
252
|
if (shouldRunAgent) {
|
|
132
253
|
try {
|
|
133
254
|
const stats = await getFileStats();
|
|
134
255
|
if (stats.length > 0) {
|
|
135
|
-
const
|
|
136
|
-
|
|
137
|
-
|
|
256
|
+
const agentStrategy = resolveAgentStrategy(config);
|
|
257
|
+
const agentModel = resolveAgentModel(config, agentStrategy);
|
|
258
|
+
if (!input.quiet) {
|
|
259
|
+
const label = agentStrategy === 'tools' ? 'tools' : 'lite';
|
|
260
|
+
if (agentModel !== config.model) {
|
|
261
|
+
console.log(chalk.gray(`\n🧠 Agent (${label}) model: ${agentModel} (base model: ${config.model})`));
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
console.log(chalk.gray(`\n🧠 Agent strategy: ${label}`));
|
|
265
|
+
}
|
|
138
266
|
}
|
|
139
|
-
const agentMessage =
|
|
267
|
+
const agentMessage = agentStrategy === 'tools'
|
|
268
|
+
? await runAgentLoop(client, config, stats, input.branchName, input.quiet, agentModel)
|
|
269
|
+
: await runAgentLite(client, config, stats, input.branchName, input.quiet, agentModel);
|
|
140
270
|
return [agentMessage];
|
|
141
271
|
}
|
|
142
272
|
}
|
|
143
273
|
catch (error) {
|
|
274
|
+
if (!shouldFallbackFromAgent(error)) {
|
|
275
|
+
throw normalizeAIError(error);
|
|
276
|
+
}
|
|
144
277
|
if (!input.quiet) {
|
|
145
278
|
const reason = formatAgentFailureReason(error);
|
|
146
279
|
const suffix = reason ? ` (${reason})` : '';
|
|
@@ -165,10 +298,10 @@ export async function generateCommitMessage(client, input, config, numChoices =
|
|
|
165
298
|
const isZh = config.locale === 'zh';
|
|
166
299
|
const lines = [];
|
|
167
300
|
if (numChoices > 1) {
|
|
168
|
-
// Add instruction for multiple choices
|
|
301
|
+
// Add instruction for multiple choices (JSON array for robustness)
|
|
169
302
|
const multiInstruction = isZh
|
|
170
|
-
? `\n
|
|
171
|
-
: `\
|
|
303
|
+
? `\n请仅输出 JSON 数组,包含 ${numChoices} 条不同的 commit message(字符串数组),不要输出其他内容。`
|
|
304
|
+
: `\nRespond with a JSON array of ${numChoices} distinct commit message strings. Output JSON only.`;
|
|
172
305
|
systemPrompt += multiInstruction;
|
|
173
306
|
}
|
|
174
307
|
if (input.recentCommits?.length) {
|
|
@@ -216,16 +349,35 @@ export async function generateCommitMessage(client, input, config, numChoices =
|
|
|
216
349
|
{ role: 'user', content: lines.join('\n\n') },
|
|
217
350
|
],
|
|
218
351
|
temperature: 0.7,
|
|
219
|
-
max_tokens:
|
|
352
|
+
max_tokens: getMaxOutputTokens(numChoices),
|
|
220
353
|
});
|
|
221
354
|
const content = response.choices[0]?.message?.content?.trim();
|
|
222
355
|
if (!content) {
|
|
223
356
|
throw new Error('Failed to generate commit message: empty response');
|
|
224
357
|
}
|
|
225
|
-
const
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
358
|
+
const normalized = stripCodeFences(content);
|
|
359
|
+
let messages = [];
|
|
360
|
+
if (numChoices > 1) {
|
|
361
|
+
const parsed = tryParseMessagesJson(normalized);
|
|
362
|
+
if (parsed && parsed.length) {
|
|
363
|
+
messages = parsed;
|
|
364
|
+
}
|
|
365
|
+
else {
|
|
366
|
+
messages = normalized
|
|
367
|
+
.split('---')
|
|
368
|
+
.map((msg) => msg.trim())
|
|
369
|
+
.filter(Boolean);
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
else {
|
|
373
|
+
const parsed = tryParseMessagesJson(normalized);
|
|
374
|
+
if (parsed && parsed.length === 1) {
|
|
375
|
+
messages = parsed;
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
messages = [normalized];
|
|
379
|
+
}
|
|
380
|
+
}
|
|
229
381
|
if (config.enableFooter) {
|
|
230
382
|
return messages.map((msg) => `${msg}\n\n🤖 Generated by git-ai 🚀`);
|
|
231
383
|
}
|
package/dist/utils/ai.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/utils/ai.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/utils/ai.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/config.d.ts
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import type { AIConfig } from '../types.js';
|
|
2
|
+
export declare function getMergedConfig(): Partial<AIConfig>;
|
|
2
3
|
export declare function getConfig(): AIConfig | null;
|
|
4
|
+
export declare function getLocalConfigError(): {
|
|
5
|
+
path: string;
|
|
6
|
+
error: string;
|
|
7
|
+
} | null;
|
|
3
8
|
export declare function setConfig(newConfig: Partial<AIConfig>): void;
|
|
4
9
|
export declare function clearConfig(): void;
|
|
5
10
|
export declare function getConfigPath(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAyG5C,wBAAgB,eAAe,IAAI,OAAO,CAAC,QAAQ,CAAC,CAiBnD;AAED,wBAAgB,SAAS,IAAI,QAAQ,GAAG,IAAI,CAS3C;AAED,wBAAgB,mBAAmB,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAG5E;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAM5D;AAED,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
|
package/dist/utils/config.js
CHANGED
|
@@ -39,20 +39,68 @@ const config = new Conf({
|
|
|
39
39
|
},
|
|
40
40
|
},
|
|
41
41
|
});
|
|
42
|
+
let lastLocalConfigError = null;
|
|
43
|
+
function getLocalConfigPath() {
|
|
44
|
+
return join(process.cwd(), '.git-ai.json');
|
|
45
|
+
}
|
|
46
|
+
function parseBooleanEnv(value) {
|
|
47
|
+
if (!value)
|
|
48
|
+
return undefined;
|
|
49
|
+
const normalized = value.trim().toLowerCase();
|
|
50
|
+
if (['1', 'true', 'yes', 'y', 'on'].includes(normalized))
|
|
51
|
+
return true;
|
|
52
|
+
if (['0', 'false', 'no', 'n', 'off'].includes(normalized))
|
|
53
|
+
return false;
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
42
56
|
function getLocalConfig() {
|
|
43
|
-
const localPath =
|
|
57
|
+
const localPath = getLocalConfigPath();
|
|
58
|
+
lastLocalConfigError = null;
|
|
44
59
|
if (existsSync(localPath)) {
|
|
45
60
|
try {
|
|
46
61
|
const content = readFileSync(localPath, 'utf-8');
|
|
47
62
|
return JSON.parse(content);
|
|
48
63
|
}
|
|
49
|
-
catch {
|
|
50
|
-
|
|
64
|
+
catch (error) {
|
|
65
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
66
|
+
lastLocalConfigError = message;
|
|
51
67
|
}
|
|
52
68
|
}
|
|
53
69
|
return {};
|
|
54
70
|
}
|
|
55
|
-
|
|
71
|
+
function getEnvConfig(baseProvider) {
|
|
72
|
+
const env = {};
|
|
73
|
+
const provider = process.env.GIT_AI_PROVIDER || process.env.OCO_AI_PROVIDER;
|
|
74
|
+
const inferredProvider = provider || baseProvider;
|
|
75
|
+
if (provider)
|
|
76
|
+
env.provider = provider;
|
|
77
|
+
const apiKey = process.env.GIT_AI_API_KEY ||
|
|
78
|
+
process.env.OCO_API_KEY ||
|
|
79
|
+
(inferredProvider === 'deepseek' ? process.env.DEEPSEEK_API_KEY : undefined) ||
|
|
80
|
+
(inferredProvider === 'openai' ? process.env.OPENAI_API_KEY : undefined);
|
|
81
|
+
if (apiKey)
|
|
82
|
+
env.apiKey = apiKey;
|
|
83
|
+
const baseUrl = process.env.GIT_AI_BASE_URL;
|
|
84
|
+
if (baseUrl)
|
|
85
|
+
env.baseUrl = baseUrl;
|
|
86
|
+
const model = process.env.GIT_AI_MODEL || process.env.OCO_MODEL;
|
|
87
|
+
if (model)
|
|
88
|
+
env.model = model;
|
|
89
|
+
const agentModel = process.env.GIT_AI_AGENT_MODEL;
|
|
90
|
+
if (agentModel)
|
|
91
|
+
env.agentModel = agentModel;
|
|
92
|
+
const localeRaw = process.env.GIT_AI_LOCALE;
|
|
93
|
+
if (localeRaw === 'zh' || localeRaw === 'en')
|
|
94
|
+
env.locale = localeRaw;
|
|
95
|
+
const customPrompt = process.env.GIT_AI_CUSTOM_PROMPT;
|
|
96
|
+
if (customPrompt)
|
|
97
|
+
env.customPrompt = customPrompt;
|
|
98
|
+
const enableFooter = parseBooleanEnv(process.env.GIT_AI_ENABLE_FOOTER);
|
|
99
|
+
if (enableFooter !== undefined)
|
|
100
|
+
env.enableFooter = enableFooter;
|
|
101
|
+
return env;
|
|
102
|
+
}
|
|
103
|
+
export function getMergedConfig() {
|
|
56
104
|
const globalConfig = {
|
|
57
105
|
provider: config.get('provider'),
|
|
58
106
|
apiKey: config.get('apiKey'),
|
|
@@ -64,13 +112,24 @@ export function getConfig() {
|
|
|
64
112
|
enableFooter: config.get('enableFooter'),
|
|
65
113
|
};
|
|
66
114
|
const localConfig = getLocalConfig();
|
|
67
|
-
const
|
|
115
|
+
const merged = { ...globalConfig, ...localConfig };
|
|
116
|
+
const envConfig = getEnvConfig(merged.provider);
|
|
117
|
+
const finalConfig = { ...merged, ...envConfig };
|
|
118
|
+
return finalConfig;
|
|
119
|
+
}
|
|
120
|
+
export function getConfig() {
|
|
121
|
+
const finalConfig = getMergedConfig();
|
|
68
122
|
// Provider is mandatory (either global or local)
|
|
69
123
|
if (!finalConfig.provider) {
|
|
70
124
|
return null;
|
|
71
125
|
}
|
|
72
126
|
return finalConfig;
|
|
73
127
|
}
|
|
128
|
+
export function getLocalConfigError() {
|
|
129
|
+
if (!lastLocalConfigError)
|
|
130
|
+
return null;
|
|
131
|
+
return { path: getLocalConfigPath(), error: lastLocalConfigError };
|
|
132
|
+
}
|
|
74
133
|
export function setConfig(newConfig) {
|
|
75
134
|
for (const [key, value] of Object.entries(newConfig)) {
|
|
76
135
|
if (value !== undefined) {
|
package/dist/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAW;IAChC,WAAW,EAAE,YAAY;IACzB,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;YAClB,OAAO,EAAE,IAAI;SACd;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI;SACd;KACF;CACF,CAAC,CAAC;AAEH,SAAS,cAAc;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/git.d.ts
CHANGED
|
@@ -8,6 +8,10 @@ export interface FileStat {
|
|
|
8
8
|
insertions: number;
|
|
9
9
|
deletions: number;
|
|
10
10
|
}
|
|
11
|
+
export interface UnstagedFileEntry {
|
|
12
|
+
path: string;
|
|
13
|
+
status: string;
|
|
14
|
+
}
|
|
11
15
|
export declare function getFileStats(): Promise<FileStat[]>;
|
|
12
16
|
export declare function getFileDiff(file: string): Promise<string>;
|
|
13
17
|
export declare function isBlacklisted(filename: string): boolean;
|
|
@@ -19,7 +23,12 @@ export declare function getFilteredDiff(files: string[]): Promise<{
|
|
|
19
23
|
export declare function commit(message: string): Promise<void>;
|
|
20
24
|
export declare function getUserName(): Promise<string>;
|
|
21
25
|
export declare function getRecentCommits(days: number): Promise<string[]>;
|
|
26
|
+
export declare function getCommitsInRange(options: {
|
|
27
|
+
since?: string;
|
|
28
|
+
until?: string;
|
|
29
|
+
}): Promise<string[]>;
|
|
22
30
|
export declare function searchCode(pattern: string): Promise<string>;
|
|
23
31
|
export declare function getUnstagedFiles(): Promise<string[]>;
|
|
24
32
|
export declare function addFiles(files: string[]): Promise<void>;
|
|
33
|
+
export declare function getUnstagedFileEntries(): Promise<UnstagedFileEntry[]>;
|
|
25
34
|
//# sourceMappingURL=git.d.ts.map
|
package/dist/utils/git.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"AA+IA,wBAAsB,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAOvD;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAOpD;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAOrD;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAGrD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAGxD;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAiBxD;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO/D;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAYvD;AAkCD,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EAAE,GACd,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CA2BvE;AAED,wBAAsB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3D;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAOnD;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAEtE;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAyCpB;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAuBjE;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAG1D;AAED,wBAAsB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAG7D;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CA+B3E"}
|