codevault 1.3.0-beta.6 → 1.3.0-beta.7
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/dist/cli/commands/config-cmd.d.ts +3 -0
- package/dist/cli/commands/config-cmd.d.ts.map +1 -0
- package/dist/cli/commands/config-cmd.js +245 -0
- package/dist/cli/commands/config-cmd.js.map +1 -0
- package/dist/cli/commands/interactive-config.d.ts +2 -0
- package/dist/cli/commands/interactive-config.d.ts.map +1 -0
- package/dist/cli/commands/interactive-config.js +304 -0
- package/dist/cli/commands/interactive-config.js.map +1 -0
- package/dist/cli.js +6 -0
- package/dist/cli.js.map +1 -1
- package/dist/config/apply-env.d.ts +15 -0
- package/dist/config/apply-env.d.ts.map +1 -0
- package/dist/config/apply-env.js +75 -0
- package/dist/config/apply-env.js.map +1 -0
- package/dist/config/loader.d.ts +57 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +252 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/types.d.ts +37 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +2 -0
- package/dist/config/types.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-cmd.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/config-cmd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyBpC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2P7D"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { loadConfig, readGlobalConfig, readProjectConfig, saveGlobalConfig, saveProjectConfig, hasGlobalConfig, getGlobalConfigPath, getConfigSources } from '../../config/loader.js';
|
|
3
|
+
import { runInteractiveConfig } from './interactive-config.js';
|
|
4
|
+
function displayConfig(config, title) {
|
|
5
|
+
if (!config || Object.keys(config).length === 0) {
|
|
6
|
+
console.log(chalk.gray(` ${title}: (empty)`));
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
console.log(chalk.bold(` ${title}:`));
|
|
10
|
+
console.log(' ' + JSON.stringify(config, null, 2).split('\n').join('\n '));
|
|
11
|
+
}
|
|
12
|
+
export function registerConfigCommands(program) {
|
|
13
|
+
const configCommand = program
|
|
14
|
+
.command('config')
|
|
15
|
+
.description('Manage CodeVault configuration');
|
|
16
|
+
// config init - Interactive setup
|
|
17
|
+
configCommand
|
|
18
|
+
.command('init')
|
|
19
|
+
.description('Initialize global configuration (interactive)')
|
|
20
|
+
.option('--force', 'Overwrite existing configuration')
|
|
21
|
+
.option('--no-interactive', 'Skip interactive prompts, create basic config')
|
|
22
|
+
.action(async (options) => {
|
|
23
|
+
// Use interactive mode by default
|
|
24
|
+
if (options.interactive !== false) {
|
|
25
|
+
await runInteractiveConfig(options.force);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
// Non-interactive mode (legacy)
|
|
29
|
+
if (hasGlobalConfig() && !options.force) {
|
|
30
|
+
console.log(chalk.yellow('⚠️ Global configuration already exists at:'));
|
|
31
|
+
console.log(chalk.cyan(` ${getGlobalConfigPath()}`));
|
|
32
|
+
console.log('');
|
|
33
|
+
console.log('Use --force to overwrite, or edit the file directly.');
|
|
34
|
+
console.log('Run: ' + chalk.cyan('codevault config show --global'));
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
console.log(chalk.bold('🚀 CodeVault Configuration Setup\n'));
|
|
38
|
+
const config = {
|
|
39
|
+
defaultProvider: 'auto',
|
|
40
|
+
providers: {}
|
|
41
|
+
};
|
|
42
|
+
console.log('Configuration will be saved to:');
|
|
43
|
+
console.log(chalk.cyan(` ${getGlobalConfigPath()}\n`));
|
|
44
|
+
console.log(chalk.gray('You can configure providers now or later using:'));
|
|
45
|
+
console.log(chalk.cyan(' codevault config set <key> <value>\n'));
|
|
46
|
+
saveGlobalConfig(config);
|
|
47
|
+
console.log(chalk.green('✓ Global configuration initialized!'));
|
|
48
|
+
console.log('');
|
|
49
|
+
console.log('Next steps:');
|
|
50
|
+
console.log(chalk.cyan(' codevault config set providers.openai.apiKey YOUR_API_KEY'));
|
|
51
|
+
console.log(chalk.cyan(' codevault config set providers.openai.model text-embedding-3-large'));
|
|
52
|
+
});
|
|
53
|
+
// config set - Set configuration value
|
|
54
|
+
configCommand
|
|
55
|
+
.command('set <key> <value>')
|
|
56
|
+
.description('Set a configuration value')
|
|
57
|
+
.option('-l, --local [path]', 'Save to project config instead of global')
|
|
58
|
+
.action((key, value, options) => {
|
|
59
|
+
const isLocal = options.local !== undefined;
|
|
60
|
+
const basePath = typeof options.local === 'string' ? options.local : '.';
|
|
61
|
+
let config;
|
|
62
|
+
if (isLocal) {
|
|
63
|
+
config = readProjectConfig(basePath) || {};
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
config = readGlobalConfig() || {};
|
|
67
|
+
}
|
|
68
|
+
// Parse key path (e.g., "openai.apiKey" -> ["openai", "apiKey"])
|
|
69
|
+
const keyPath = key.split('.');
|
|
70
|
+
// Set the value
|
|
71
|
+
let current = config;
|
|
72
|
+
for (let i = 0; i < keyPath.length - 1; i++) {
|
|
73
|
+
const part = keyPath[i];
|
|
74
|
+
if (!current[part]) {
|
|
75
|
+
current[part] = {};
|
|
76
|
+
}
|
|
77
|
+
current = current[part];
|
|
78
|
+
}
|
|
79
|
+
const lastKey = keyPath[keyPath.length - 1];
|
|
80
|
+
// Try to parse value as JSON, otherwise use as string
|
|
81
|
+
let parsedValue = value;
|
|
82
|
+
if (value === 'true')
|
|
83
|
+
parsedValue = true;
|
|
84
|
+
else if (value === 'false')
|
|
85
|
+
parsedValue = false;
|
|
86
|
+
else if (!isNaN(Number(value)))
|
|
87
|
+
parsedValue = Number(value);
|
|
88
|
+
current[lastKey] = parsedValue;
|
|
89
|
+
// Save config
|
|
90
|
+
if (isLocal) {
|
|
91
|
+
saveProjectConfig(config, basePath);
|
|
92
|
+
console.log(chalk.green(`✓ Set ${key} in project config`));
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
saveGlobalConfig(config);
|
|
96
|
+
console.log(chalk.green(`✓ Set ${key} in global config`));
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
// config get - Get configuration value
|
|
100
|
+
configCommand
|
|
101
|
+
.command('get <key>')
|
|
102
|
+
.description('Get a configuration value')
|
|
103
|
+
.option('-g, --global', 'Get from global config only')
|
|
104
|
+
.option('-l, --local [path]', 'Get from project config only')
|
|
105
|
+
.action((key, options) => {
|
|
106
|
+
let config;
|
|
107
|
+
if (options.global) {
|
|
108
|
+
config = readGlobalConfig() || {};
|
|
109
|
+
}
|
|
110
|
+
else if (options.local !== undefined) {
|
|
111
|
+
const basePath = typeof options.local === 'string' ? options.local : '.';
|
|
112
|
+
config = readProjectConfig(basePath) || {};
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
config = loadConfig();
|
|
116
|
+
}
|
|
117
|
+
// Navigate key path
|
|
118
|
+
const keyPath = key.split('.');
|
|
119
|
+
let value = config;
|
|
120
|
+
for (const part of keyPath) {
|
|
121
|
+
if (value && typeof value === 'object') {
|
|
122
|
+
value = value[part];
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
value = undefined;
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
if (value === undefined) {
|
|
130
|
+
console.log(chalk.yellow(`Key '${key}' not found`));
|
|
131
|
+
}
|
|
132
|
+
else if (typeof value === 'object') {
|
|
133
|
+
console.log(JSON.stringify(value, null, 2));
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
console.log(value);
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
// config list - List all configuration
|
|
140
|
+
configCommand
|
|
141
|
+
.command('list')
|
|
142
|
+
.alias('show')
|
|
143
|
+
.description('Show current configuration')
|
|
144
|
+
.option('-g, --global', 'Show global config only')
|
|
145
|
+
.option('-l, --local [path]', 'Show project config only')
|
|
146
|
+
.option('-s, --sources', 'Show all configuration sources')
|
|
147
|
+
.action((options) => {
|
|
148
|
+
if (options.sources) {
|
|
149
|
+
const basePath = typeof options.local === 'string' ? options.local : '.';
|
|
150
|
+
const sources = getConfigSources(basePath);
|
|
151
|
+
console.log(chalk.bold('Configuration Sources:\n'));
|
|
152
|
+
displayConfig(sources.global, 'Global (~/.codevault/config.json)');
|
|
153
|
+
console.log('');
|
|
154
|
+
displayConfig(sources.project, 'Project (.codevault/config.json)');
|
|
155
|
+
console.log('');
|
|
156
|
+
displayConfig(sources.env, 'Environment Variables');
|
|
157
|
+
console.log('');
|
|
158
|
+
console.log(chalk.gray('Priority: Environment > Project > Global'));
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
if (options.global) {
|
|
162
|
+
const config = readGlobalConfig();
|
|
163
|
+
console.log(chalk.bold('Global Configuration:\n'));
|
|
164
|
+
if (!config || Object.keys(config).length === 0) {
|
|
165
|
+
console.log(chalk.gray(' (empty)'));
|
|
166
|
+
console.log('');
|
|
167
|
+
console.log('Initialize with: ' + chalk.cyan('codevault config init'));
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
console.log(JSON.stringify(config, null, 2));
|
|
171
|
+
}
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
if (options.local !== undefined) {
|
|
175
|
+
const basePath = typeof options.local === 'string' ? options.local : '.';
|
|
176
|
+
const config = readProjectConfig(basePath);
|
|
177
|
+
console.log(chalk.bold('Project Configuration:\n'));
|
|
178
|
+
if (!config || Object.keys(config).length === 0) {
|
|
179
|
+
console.log(chalk.gray(' (empty)'));
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
console.log(JSON.stringify(config, null, 2));
|
|
183
|
+
}
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
// Show merged config
|
|
187
|
+
const config = loadConfig();
|
|
188
|
+
console.log(chalk.bold('Merged Configuration:\n'));
|
|
189
|
+
console.log(JSON.stringify(config, null, 2));
|
|
190
|
+
console.log('');
|
|
191
|
+
console.log(chalk.gray('Tip: Use --sources to see individual config sources'));
|
|
192
|
+
});
|
|
193
|
+
// config unset - Remove configuration value
|
|
194
|
+
configCommand
|
|
195
|
+
.command('unset <key>')
|
|
196
|
+
.description('Remove a configuration value')
|
|
197
|
+
.option('-l, --local [path]', 'Remove from project config instead of global')
|
|
198
|
+
.action((key, options) => {
|
|
199
|
+
const isLocal = options.local !== undefined;
|
|
200
|
+
const basePath = typeof options.local === 'string' ? options.local : '.';
|
|
201
|
+
let config;
|
|
202
|
+
if (isLocal) {
|
|
203
|
+
config = readProjectConfig(basePath) || {};
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
config = readGlobalConfig() || {};
|
|
207
|
+
}
|
|
208
|
+
// Parse and navigate to parent of key
|
|
209
|
+
const keyPath = key.split('.');
|
|
210
|
+
let current = config;
|
|
211
|
+
for (let i = 0; i < keyPath.length - 1; i++) {
|
|
212
|
+
const part = keyPath[i];
|
|
213
|
+
if (!current[part]) {
|
|
214
|
+
console.log(chalk.yellow(`Key '${key}' not found`));
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
current = current[part];
|
|
218
|
+
}
|
|
219
|
+
const lastKey = keyPath[keyPath.length - 1];
|
|
220
|
+
if (!(lastKey in current)) {
|
|
221
|
+
console.log(chalk.yellow(`Key '${key}' not found`));
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
delete current[lastKey];
|
|
225
|
+
// Save config
|
|
226
|
+
if (isLocal) {
|
|
227
|
+
saveProjectConfig(config, basePath);
|
|
228
|
+
console.log(chalk.green(`✓ Removed ${key} from project config`));
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
saveGlobalConfig(config);
|
|
232
|
+
console.log(chalk.green(`✓ Removed ${key} from global config`));
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
// config path - Show config file paths
|
|
236
|
+
configCommand
|
|
237
|
+
.command('path')
|
|
238
|
+
.description('Show configuration file paths')
|
|
239
|
+
.action(() => {
|
|
240
|
+
console.log(chalk.bold('Configuration Paths:\n'));
|
|
241
|
+
console.log(chalk.cyan('Global: ') + getGlobalConfigPath());
|
|
242
|
+
console.log(chalk.cyan('Project: ') + '.codevault/config.json');
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
//# sourceMappingURL=config-cmd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-cmd.js","sourceRoot":"","sources":["../../../src/cli/commands/config-cmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive-config.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/interactive-config.ts"],"names":[],"mappings":"AA2FA,wBAAsB,oBAAoB,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA4QhF"}
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import { stdin as input, stdout as output } from 'process';
|
|
3
|
+
import * as readline from 'readline/promises';
|
|
4
|
+
import { saveGlobalConfig, hasGlobalConfig } from '../../config/loader.js';
|
|
5
|
+
class InteractivePrompt {
|
|
6
|
+
rl;
|
|
7
|
+
constructor() {
|
|
8
|
+
this.rl = readline.createInterface({ input, output });
|
|
9
|
+
}
|
|
10
|
+
async text(options) {
|
|
11
|
+
const defaultText = options.default ? chalk.gray(` (${options.default})`) : '';
|
|
12
|
+
const prompt = `${chalk.cyan('?')} ${options.message}${defaultText}: `;
|
|
13
|
+
while (true) {
|
|
14
|
+
const answer = await this.rl.question(prompt);
|
|
15
|
+
const value = answer.trim() || options.default || '';
|
|
16
|
+
if (options.validate) {
|
|
17
|
+
const result = options.validate(value);
|
|
18
|
+
if (result === true) {
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
else if (typeof result === 'string') {
|
|
22
|
+
console.log(chalk.red(` ✗ ${result}`));
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return value;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async password(options) {
|
|
30
|
+
// Simple password input (shown as text, but labeled as sensitive)
|
|
31
|
+
const prompt = `${chalk.cyan('?')} ${options.message} ${chalk.gray('(input hidden)')}: `;
|
|
32
|
+
const answer = await this.rl.question(prompt);
|
|
33
|
+
return answer.trim();
|
|
34
|
+
}
|
|
35
|
+
async confirm(options) {
|
|
36
|
+
const defaultText = options.default === 'y' ? 'Y/n' : 'y/N';
|
|
37
|
+
const prompt = `${chalk.cyan('?')} ${options.message} ${chalk.gray(`(${defaultText})`)}: `;
|
|
38
|
+
const answer = await this.rl.question(prompt);
|
|
39
|
+
const value = answer.trim().toLowerCase() || options.default || 'n';
|
|
40
|
+
return value === 'y' || value === 'yes';
|
|
41
|
+
}
|
|
42
|
+
async select(options) {
|
|
43
|
+
if (!options.choices || options.choices.length === 0) {
|
|
44
|
+
throw new Error('Choices required for select prompt');
|
|
45
|
+
}
|
|
46
|
+
console.log(chalk.cyan('?') + ' ' + options.message);
|
|
47
|
+
options.choices.forEach((choice, index) => {
|
|
48
|
+
const number = chalk.gray(`${index + 1}.`);
|
|
49
|
+
const description = choice.description ? chalk.gray(` - ${choice.description}`) : '';
|
|
50
|
+
console.log(` ${number} ${choice.title}${description}`);
|
|
51
|
+
});
|
|
52
|
+
while (true) {
|
|
53
|
+
const prompt = chalk.gray(` Select (1-${options.choices.length}): `);
|
|
54
|
+
const answer = await this.rl.question(prompt);
|
|
55
|
+
const num = parseInt(answer.trim(), 10);
|
|
56
|
+
if (num >= 1 && num <= options.choices.length) {
|
|
57
|
+
return options.choices[num - 1].value;
|
|
58
|
+
}
|
|
59
|
+
console.log(chalk.red(` ✗ Please enter a number between 1 and ${options.choices.length}`));
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
close() {
|
|
63
|
+
this.rl.close();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export async function runInteractiveConfig(force = false) {
|
|
67
|
+
const prompt = new InteractivePrompt();
|
|
68
|
+
try {
|
|
69
|
+
console.log(chalk.bold.cyan('\n🚀 CodeVault Interactive Configuration\n'));
|
|
70
|
+
// Check if config exists
|
|
71
|
+
if (hasGlobalConfig() && !force) {
|
|
72
|
+
console.log(chalk.yellow('⚠️ Global configuration already exists.\n'));
|
|
73
|
+
const overwrite = await prompt.confirm({
|
|
74
|
+
message: 'Do you want to overwrite it?',
|
|
75
|
+
default: 'n'
|
|
76
|
+
});
|
|
77
|
+
if (!overwrite) {
|
|
78
|
+
console.log(chalk.gray('\nConfiguration unchanged.'));
|
|
79
|
+
prompt.close();
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
console.log('');
|
|
83
|
+
}
|
|
84
|
+
const config = {
|
|
85
|
+
providers: {}
|
|
86
|
+
};
|
|
87
|
+
// Provider selection
|
|
88
|
+
const provider = await prompt.select({
|
|
89
|
+
message: 'Choose your embedding provider',
|
|
90
|
+
choices: [
|
|
91
|
+
{ title: 'OpenAI', value: 'openai', description: 'Cloud API, requires API key, best quality' },
|
|
92
|
+
{ title: 'Ollama', value: 'ollama', description: 'Local, free, no API key needed' },
|
|
93
|
+
{ title: 'Custom', value: 'custom', description: 'Custom OpenAI-compatible API' }
|
|
94
|
+
]
|
|
95
|
+
});
|
|
96
|
+
config.defaultProvider = provider === 'custom' ? 'openai' : provider;
|
|
97
|
+
// OpenAI / Custom configuration
|
|
98
|
+
if (provider === 'openai' || provider === 'custom') {
|
|
99
|
+
console.log(chalk.bold('\n📝 OpenAI Configuration\n'));
|
|
100
|
+
config.providers.openai = {};
|
|
101
|
+
// API Key
|
|
102
|
+
const apiKey = await prompt.password({
|
|
103
|
+
message: 'API Key',
|
|
104
|
+
validate: (val) => val.length > 0 || 'API key is required'
|
|
105
|
+
});
|
|
106
|
+
config.providers.openai.apiKey = apiKey;
|
|
107
|
+
// Base URL (for custom providers)
|
|
108
|
+
if (provider === 'custom') {
|
|
109
|
+
const baseUrl = await prompt.text({
|
|
110
|
+
message: 'Base URL',
|
|
111
|
+
default: 'https://api.openai.com/v1',
|
|
112
|
+
validate: (val) => {
|
|
113
|
+
try {
|
|
114
|
+
new URL(val);
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
return 'Invalid URL format';
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
config.providers.openai.baseUrl = baseUrl;
|
|
123
|
+
}
|
|
124
|
+
// Model selection
|
|
125
|
+
const useCustomModel = await prompt.confirm({
|
|
126
|
+
message: 'Use custom model name?',
|
|
127
|
+
default: 'n'
|
|
128
|
+
});
|
|
129
|
+
if (useCustomModel) {
|
|
130
|
+
const customModel = await prompt.text({
|
|
131
|
+
message: 'Model name',
|
|
132
|
+
default: 'text-embedding-3-large',
|
|
133
|
+
validate: (val) => val.length > 0 || 'Model name is required'
|
|
134
|
+
});
|
|
135
|
+
config.providers.openai.model = customModel;
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
const model = await prompt.select({
|
|
139
|
+
message: 'Select model',
|
|
140
|
+
choices: [
|
|
141
|
+
{ title: 'text-embedding-3-large', value: 'text-embedding-3-large', description: '3072 dims, best quality' },
|
|
142
|
+
{ title: 'text-embedding-3-small', value: 'text-embedding-3-small', description: '1536 dims, faster/cheaper' },
|
|
143
|
+
{ title: 'text-embedding-ada-002', value: 'text-embedding-ada-002', description: '1536 dims, legacy' },
|
|
144
|
+
{ title: 'Qwen/Qwen3-Embedding-8B', value: 'Qwen/Qwen3-Embedding-8B', description: '4096 dims, via Nebius' }
|
|
145
|
+
]
|
|
146
|
+
});
|
|
147
|
+
config.providers.openai.model = model;
|
|
148
|
+
}
|
|
149
|
+
// Dimensions
|
|
150
|
+
const useCustomDims = await prompt.confirm({
|
|
151
|
+
message: 'Custom embedding dimensions?',
|
|
152
|
+
default: 'n'
|
|
153
|
+
});
|
|
154
|
+
if (useCustomDims) {
|
|
155
|
+
const dims = await prompt.text({
|
|
156
|
+
message: 'Embedding dimensions',
|
|
157
|
+
default: '3072',
|
|
158
|
+
validate: (val) => {
|
|
159
|
+
const num = parseInt(val, 10);
|
|
160
|
+
return (num > 0 && num <= 10000) || 'Must be between 1 and 10000';
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
config.providers.openai.dimensions = parseInt(dims, 10);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
// Ollama configuration
|
|
167
|
+
if (provider === 'ollama') {
|
|
168
|
+
console.log(chalk.bold('\n📝 Ollama Configuration\n'));
|
|
169
|
+
config.providers.ollama = {};
|
|
170
|
+
const useCustomModel = await prompt.confirm({
|
|
171
|
+
message: 'Use custom Ollama model?',
|
|
172
|
+
default: 'n'
|
|
173
|
+
});
|
|
174
|
+
if (useCustomModel) {
|
|
175
|
+
const model = await prompt.text({
|
|
176
|
+
message: 'Model name',
|
|
177
|
+
default: 'nomic-embed-text',
|
|
178
|
+
validate: (val) => val.length > 0 || 'Model name is required'
|
|
179
|
+
});
|
|
180
|
+
config.providers.ollama.model = model;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
config.providers.ollama.model = 'nomic-embed-text';
|
|
184
|
+
}
|
|
185
|
+
const dims = await prompt.text({
|
|
186
|
+
message: 'Embedding dimensions',
|
|
187
|
+
default: '768',
|
|
188
|
+
validate: (val) => {
|
|
189
|
+
const num = parseInt(val, 10);
|
|
190
|
+
return (num > 0 && num <= 10000) || 'Must be between 1 and 10000';
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
config.providers.ollama.dimensions = parseInt(dims, 10);
|
|
194
|
+
}
|
|
195
|
+
// Advanced settings
|
|
196
|
+
console.log(chalk.bold('\n⚙️ Advanced Settings\n'));
|
|
197
|
+
const configAdvanced = await prompt.confirm({
|
|
198
|
+
message: 'Configure advanced settings? (rate limits, tokens, etc.)',
|
|
199
|
+
default: 'n'
|
|
200
|
+
});
|
|
201
|
+
if (configAdvanced) {
|
|
202
|
+
// Max tokens
|
|
203
|
+
const maxTokens = await prompt.text({
|
|
204
|
+
message: 'Max tokens per chunk',
|
|
205
|
+
default: '8192',
|
|
206
|
+
validate: (val) => {
|
|
207
|
+
const num = parseInt(val, 10);
|
|
208
|
+
return (num > 0) || 'Must be a positive number';
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
config.maxTokens = parseInt(maxTokens, 10);
|
|
212
|
+
// Rate limiting
|
|
213
|
+
const configRateLimit = await prompt.confirm({
|
|
214
|
+
message: 'Configure rate limiting?',
|
|
215
|
+
default: 'n'
|
|
216
|
+
});
|
|
217
|
+
if (configRateLimit) {
|
|
218
|
+
config.rateLimit = {};
|
|
219
|
+
const rpm = await prompt.text({
|
|
220
|
+
message: 'Requests per minute (RPM)',
|
|
221
|
+
default: '10000',
|
|
222
|
+
validate: (val) => {
|
|
223
|
+
const num = parseInt(val, 10);
|
|
224
|
+
return (num > 0) || 'Must be a positive number';
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
config.rateLimit.rpm = parseInt(rpm, 10);
|
|
228
|
+
const tpm = await prompt.text({
|
|
229
|
+
message: 'Tokens per minute (TPM)',
|
|
230
|
+
default: '600000',
|
|
231
|
+
validate: (val) => {
|
|
232
|
+
const num = parseInt(val, 10);
|
|
233
|
+
return (num > 0) || 'Must be a positive number';
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
config.rateLimit.tpm = parseInt(tpm, 10);
|
|
237
|
+
}
|
|
238
|
+
// Encryption
|
|
239
|
+
const configEncryption = await prompt.confirm({
|
|
240
|
+
message: 'Enable code chunk encryption?',
|
|
241
|
+
default: 'n'
|
|
242
|
+
});
|
|
243
|
+
if (configEncryption) {
|
|
244
|
+
config.encryption = { enabled: true };
|
|
245
|
+
const encKey = await prompt.password({
|
|
246
|
+
message: 'Encryption key (32-byte base64 or hex)',
|
|
247
|
+
validate: (val) => val.length > 0 || 'Encryption key is required'
|
|
248
|
+
});
|
|
249
|
+
config.encryption.key = encKey;
|
|
250
|
+
}
|
|
251
|
+
// Reranking
|
|
252
|
+
const configReranker = await prompt.confirm({
|
|
253
|
+
message: 'Configure API reranker?',
|
|
254
|
+
default: 'n'
|
|
255
|
+
});
|
|
256
|
+
if (configReranker) {
|
|
257
|
+
config.reranker = {};
|
|
258
|
+
const apiUrl = await prompt.text({
|
|
259
|
+
message: 'Reranker API URL',
|
|
260
|
+
validate: (val) => {
|
|
261
|
+
try {
|
|
262
|
+
new URL(val);
|
|
263
|
+
return true;
|
|
264
|
+
}
|
|
265
|
+
catch {
|
|
266
|
+
return 'Invalid URL format';
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
config.reranker.apiUrl = apiUrl;
|
|
271
|
+
const apiKey = await prompt.password({
|
|
272
|
+
message: 'Reranker API Key'
|
|
273
|
+
});
|
|
274
|
+
if (apiKey) {
|
|
275
|
+
config.reranker.apiKey = apiKey;
|
|
276
|
+
}
|
|
277
|
+
const model = await prompt.text({
|
|
278
|
+
message: 'Reranker model name',
|
|
279
|
+
default: 'rerank-v3.5'
|
|
280
|
+
});
|
|
281
|
+
if (model) {
|
|
282
|
+
config.reranker.model = model;
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
// Save configuration
|
|
287
|
+
console.log('');
|
|
288
|
+
saveGlobalConfig(config);
|
|
289
|
+
console.log(chalk.green('\n✓ Configuration saved successfully!\n'));
|
|
290
|
+
console.log(chalk.gray('Location: ~/.codevault/config.json\n'));
|
|
291
|
+
console.log('Next steps:');
|
|
292
|
+
console.log(chalk.cyan(' codevault index') + chalk.gray(' - Index your project'));
|
|
293
|
+
console.log(chalk.cyan(' codevault config list') + chalk.gray(' - View your configuration'));
|
|
294
|
+
console.log('');
|
|
295
|
+
}
|
|
296
|
+
catch (error) {
|
|
297
|
+
console.error(chalk.red('\n✗ Error:'), error.message);
|
|
298
|
+
process.exit(1);
|
|
299
|
+
}
|
|
300
|
+
finally {
|
|
301
|
+
prompt.close();
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
//# sourceMappingURL=interactive-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive-config.js","sourceRoot":"","sources":["../../../src/cli/commands/interactive-config.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -5,6 +5,7 @@ import { Command } from 'commander';
|
|
|
5
5
|
import fs from 'fs';
|
|
6
6
|
import path from 'path';
|
|
7
7
|
import { fileURLToPath } from 'url';
|
|
8
|
+
import { registerConfigCommands } from './cli/commands/config-cmd.js';
|
|
8
9
|
import { registerContextCommands } from './cli/commands/context.js';
|
|
9
10
|
import { resolveScopeWithPack } from './context/packs.js';
|
|
10
11
|
import { readCodemap } from './codemap/io.js';
|
|
@@ -13,10 +14,14 @@ import { searchCode } from './core/search.js';
|
|
|
13
14
|
import { startWatch } from './indexer/watch.js';
|
|
14
15
|
import { IndexerUI } from './utils/cli-ui.js';
|
|
15
16
|
import { indexProjectWithProgress } from './utils/indexer-with-progress.js';
|
|
17
|
+
import { applyConfigToEnv } from './config/apply-env.js';
|
|
16
18
|
import { createEmbeddingProvider, getModelProfile, getSizeLimits } from './providers/index.js';
|
|
17
19
|
const __filename = fileURLToPath(import.meta.url);
|
|
18
20
|
const __dirname = path.dirname(__filename);
|
|
19
21
|
const packageJson = JSON.parse(fs.readFileSync(path.join(__dirname, '..', 'package.json'), 'utf8'));
|
|
22
|
+
// Apply config to environment variables (CLI only - MCP uses env vars directly)
|
|
23
|
+
// This allows CLI users to use global config while MCP continues using env vars
|
|
24
|
+
applyConfigToEnv();
|
|
20
25
|
const program = new Command();
|
|
21
26
|
program
|
|
22
27
|
.name('codevault')
|
|
@@ -311,6 +316,7 @@ program
|
|
|
311
316
|
process.exit(1);
|
|
312
317
|
}
|
|
313
318
|
});
|
|
319
|
+
registerConfigCommands(program);
|
|
314
320
|
registerContextCommands(program);
|
|
315
321
|
program
|
|
316
322
|
.command('mcp')
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { CodevaultConfig } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Apply configuration to process.env for backward compatibility
|
|
4
|
+
* This allows existing code to work without changes
|
|
5
|
+
*
|
|
6
|
+
* @readonly Only reads config, modifies process.env (ephemeral)
|
|
7
|
+
* @param basePath Project path for loading config
|
|
8
|
+
*/
|
|
9
|
+
export declare function applyConfigToEnv(basePath?: string): void;
|
|
10
|
+
/**
|
|
11
|
+
* Get effective configuration (for display purposes)
|
|
12
|
+
* Shows what config is actually being used after merging
|
|
13
|
+
*/
|
|
14
|
+
export declare function getEffectiveConfig(basePath?: string): CodevaultConfig;
|
|
15
|
+
//# sourceMappingURL=apply-env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply-env.d.ts","sourceRoot":"","sources":["../../src/config/apply-env.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,SAAM,GAAG,IAAI,CAwErD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,SAAM,GAAG,eAAe,CAElE"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { loadConfig } from './loader.js';
|
|
2
|
+
/**
|
|
3
|
+
* Apply configuration to process.env for backward compatibility
|
|
4
|
+
* This allows existing code to work without changes
|
|
5
|
+
*
|
|
6
|
+
* @readonly Only reads config, modifies process.env (ephemeral)
|
|
7
|
+
* @param basePath Project path for loading config
|
|
8
|
+
*/
|
|
9
|
+
export function applyConfigToEnv(basePath = '.') {
|
|
10
|
+
const config = loadConfig(basePath);
|
|
11
|
+
// Only set env vars if they're not already set (env vars have priority)
|
|
12
|
+
// OpenAI provider
|
|
13
|
+
if (config.providers?.openai) {
|
|
14
|
+
if (!process.env.OPENAI_API_KEY && config.providers.openai.apiKey) {
|
|
15
|
+
process.env.OPENAI_API_KEY = config.providers.openai.apiKey;
|
|
16
|
+
}
|
|
17
|
+
if (!process.env.OPENAI_BASE_URL && config.providers.openai.baseUrl) {
|
|
18
|
+
process.env.OPENAI_BASE_URL = config.providers.openai.baseUrl;
|
|
19
|
+
}
|
|
20
|
+
if (!process.env.CODEVAULT_OPENAI_EMBEDDING_MODEL && config.providers.openai.model) {
|
|
21
|
+
process.env.CODEVAULT_OPENAI_EMBEDDING_MODEL = config.providers.openai.model;
|
|
22
|
+
}
|
|
23
|
+
if (!process.env.CODEVAULT_DIMENSIONS && config.providers.openai.dimensions) {
|
|
24
|
+
process.env.CODEVAULT_DIMENSIONS = String(config.providers.openai.dimensions);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
// Ollama provider
|
|
28
|
+
if (config.providers?.ollama) {
|
|
29
|
+
if (!process.env.CODEVAULT_OLLAMA_MODEL && config.providers.ollama.model) {
|
|
30
|
+
process.env.CODEVAULT_OLLAMA_MODEL = config.providers.ollama.model;
|
|
31
|
+
}
|
|
32
|
+
if (!process.env.CODEVAULT_DIMENSIONS && config.providers.ollama.dimensions) {
|
|
33
|
+
process.env.CODEVAULT_DIMENSIONS = String(config.providers.ollama.dimensions);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
// Max tokens
|
|
37
|
+
if (!process.env.CODEVAULT_MAX_TOKENS && config.maxTokens) {
|
|
38
|
+
process.env.CODEVAULT_MAX_TOKENS = String(config.maxTokens);
|
|
39
|
+
}
|
|
40
|
+
// Rate limiting
|
|
41
|
+
if (config.rateLimit) {
|
|
42
|
+
if (!process.env.CODEVAULT_RATE_LIMIT_RPM && config.rateLimit.rpm) {
|
|
43
|
+
process.env.CODEVAULT_RATE_LIMIT_RPM = String(config.rateLimit.rpm);
|
|
44
|
+
}
|
|
45
|
+
if (!process.env.CODEVAULT_RATE_LIMIT_TPM && config.rateLimit.tpm) {
|
|
46
|
+
process.env.CODEVAULT_RATE_LIMIT_TPM = String(config.rateLimit.tpm);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// Encryption
|
|
50
|
+
if (config.encryption) {
|
|
51
|
+
if (!process.env.CODEVAULT_ENCRYPTION_KEY && config.encryption.key) {
|
|
52
|
+
process.env.CODEVAULT_ENCRYPTION_KEY = config.encryption.key;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
// Reranker
|
|
56
|
+
if (config.reranker) {
|
|
57
|
+
if (!process.env.CODEVAULT_RERANK_API_URL && config.reranker.apiUrl) {
|
|
58
|
+
process.env.CODEVAULT_RERANK_API_URL = config.reranker.apiUrl;
|
|
59
|
+
}
|
|
60
|
+
if (!process.env.CODEVAULT_RERANK_API_KEY && config.reranker.apiKey) {
|
|
61
|
+
process.env.CODEVAULT_RERANK_API_KEY = config.reranker.apiKey;
|
|
62
|
+
}
|
|
63
|
+
if (!process.env.CODEVAULT_RERANK_MODEL && config.reranker.model) {
|
|
64
|
+
process.env.CODEVAULT_RERANK_MODEL = config.reranker.model;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Get effective configuration (for display purposes)
|
|
70
|
+
* Shows what config is actually being used after merging
|
|
71
|
+
*/
|
|
72
|
+
export function getEffectiveConfig(basePath = '.') {
|
|
73
|
+
return loadConfig(basePath);
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=apply-env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply-env.js","sourceRoot":"","sources":["../../src/config/apply-env.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { CodevaultConfig, ConfigSource } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Read global configuration from ~/.codevault/config.json
|
|
4
|
+
* @readonly Never modifies files
|
|
5
|
+
*/
|
|
6
|
+
export declare function readGlobalConfig(): CodevaultConfig | null;
|
|
7
|
+
/**
|
|
8
|
+
* Read project-local configuration from .codevault/config.json
|
|
9
|
+
* @readonly Never modifies files
|
|
10
|
+
*/
|
|
11
|
+
export declare function readProjectConfig(basePath?: string): CodevaultConfig | null;
|
|
12
|
+
/**
|
|
13
|
+
* Read configuration from environment variables
|
|
14
|
+
* @readonly Never modifies files or environment
|
|
15
|
+
*/
|
|
16
|
+
export declare function readEnvConfig(): CodevaultConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Load merged configuration from all sources
|
|
19
|
+
* Priority: env > project > global
|
|
20
|
+
*
|
|
21
|
+
* @readonly Never modifies config files
|
|
22
|
+
* @param basePath Project path for project-local config
|
|
23
|
+
* @returns Merged configuration (in-memory only)
|
|
24
|
+
*/
|
|
25
|
+
export declare function loadConfig(basePath?: string): CodevaultConfig;
|
|
26
|
+
/**
|
|
27
|
+
* Get configuration sources for debugging
|
|
28
|
+
* @readonly Never modifies files
|
|
29
|
+
*/
|
|
30
|
+
export declare function getConfigSources(basePath?: string): ConfigSource;
|
|
31
|
+
/**
|
|
32
|
+
* Write global configuration (CLI only)
|
|
33
|
+
* This is the ONLY function that writes to disk
|
|
34
|
+
*/
|
|
35
|
+
export declare function saveGlobalConfig(config: CodevaultConfig): void;
|
|
36
|
+
/**
|
|
37
|
+
* Write project-local configuration (CLI only)
|
|
38
|
+
* This is the ONLY function that writes project config
|
|
39
|
+
*/
|
|
40
|
+
export declare function saveProjectConfig(config: CodevaultConfig, basePath?: string): void;
|
|
41
|
+
/**
|
|
42
|
+
* Check if global config exists
|
|
43
|
+
*/
|
|
44
|
+
export declare function hasGlobalConfig(): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Check if project config exists
|
|
47
|
+
*/
|
|
48
|
+
export declare function hasProjectConfig(basePath?: string): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Get global config file path
|
|
51
|
+
*/
|
|
52
|
+
export declare function getGlobalConfigPath(): string;
|
|
53
|
+
/**
|
|
54
|
+
* Get project config file path
|
|
55
|
+
*/
|
|
56
|
+
export declare function getProjectConfigPath(basePath?: string): string;
|
|
57
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAMhE;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,eAAe,GAAG,IAAI,CAWzD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,SAAM,GAAG,eAAe,GAAG,IAAI,CAYxE;AAED;;;GAGG;AACH,wBAAgB,aAAa,IAAI,eAAe,CA0F/C;AA+DD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,QAAQ,SAAM,GAAG,eAAe,CAO1D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,SAAM,GAAG,YAAY,CAM7D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAQ9D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,SAAM,GAAG,IAAI,CAW/E;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,SAAM,GAAG,OAAO,CAGxD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,SAAM,GAAG,MAAM,CAE3D"}
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import os from 'os';
|
|
4
|
+
const GLOBAL_CONFIG_DIR = path.join(os.homedir(), '.codevault');
|
|
5
|
+
const GLOBAL_CONFIG_FILE = path.join(GLOBAL_CONFIG_DIR, 'config.json');
|
|
6
|
+
const PROJECT_CONFIG_FILE = '.codevault/config.json';
|
|
7
|
+
/**
|
|
8
|
+
* Read global configuration from ~/.codevault/config.json
|
|
9
|
+
* @readonly Never modifies files
|
|
10
|
+
*/
|
|
11
|
+
export function readGlobalConfig() {
|
|
12
|
+
try {
|
|
13
|
+
if (!fs.existsSync(GLOBAL_CONFIG_FILE)) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
const content = fs.readFileSync(GLOBAL_CONFIG_FILE, 'utf8');
|
|
17
|
+
return JSON.parse(content);
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
console.warn(`Warning: Failed to read global config: ${error.message}`);
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Read project-local configuration from .codevault/config.json
|
|
26
|
+
* @readonly Never modifies files
|
|
27
|
+
*/
|
|
28
|
+
export function readProjectConfig(basePath = '.') {
|
|
29
|
+
try {
|
|
30
|
+
const configPath = path.join(path.resolve(basePath), PROJECT_CONFIG_FILE);
|
|
31
|
+
if (!fs.existsSync(configPath)) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
const content = fs.readFileSync(configPath, 'utf8');
|
|
35
|
+
return JSON.parse(content);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
console.warn(`Warning: Failed to read project config: ${error.message}`);
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Read configuration from environment variables
|
|
44
|
+
* @readonly Never modifies files or environment
|
|
45
|
+
*/
|
|
46
|
+
export function readEnvConfig() {
|
|
47
|
+
const config = {};
|
|
48
|
+
// Provider settings
|
|
49
|
+
if (process.env.OPENAI_API_KEY) {
|
|
50
|
+
config.providers = config.providers || {};
|
|
51
|
+
config.providers.openai = config.providers.openai || {};
|
|
52
|
+
config.providers.openai.apiKey = process.env.OPENAI_API_KEY;
|
|
53
|
+
}
|
|
54
|
+
if (process.env.OPENAI_BASE_URL) {
|
|
55
|
+
config.providers = config.providers || {};
|
|
56
|
+
config.providers.openai = config.providers.openai || {};
|
|
57
|
+
config.providers.openai.baseUrl = process.env.OPENAI_BASE_URL;
|
|
58
|
+
}
|
|
59
|
+
if (process.env.CODEVAULT_OPENAI_EMBEDDING_MODEL || process.env.OPENAI_MODEL) {
|
|
60
|
+
config.providers = config.providers || {};
|
|
61
|
+
config.providers.openai = config.providers.openai || {};
|
|
62
|
+
config.providers.openai.model = process.env.CODEVAULT_OPENAI_EMBEDDING_MODEL || process.env.OPENAI_MODEL;
|
|
63
|
+
}
|
|
64
|
+
if (process.env.CODEVAULT_OLLAMA_MODEL) {
|
|
65
|
+
config.providers = config.providers || {};
|
|
66
|
+
config.providers.ollama = config.providers.ollama || {};
|
|
67
|
+
config.providers.ollama.model = process.env.CODEVAULT_OLLAMA_MODEL;
|
|
68
|
+
}
|
|
69
|
+
// Dimensions
|
|
70
|
+
if (process.env.CODEVAULT_DIMENSIONS) {
|
|
71
|
+
const dims = parseInt(process.env.CODEVAULT_DIMENSIONS, 10);
|
|
72
|
+
if (!isNaN(dims) && dims > 0) {
|
|
73
|
+
if (config.providers?.openai) {
|
|
74
|
+
config.providers.openai.dimensions = dims;
|
|
75
|
+
}
|
|
76
|
+
if (config.providers?.ollama) {
|
|
77
|
+
config.providers.ollama.dimensions = dims;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
// Max tokens
|
|
82
|
+
if (process.env.CODEVAULT_MAX_TOKENS) {
|
|
83
|
+
const tokens = parseInt(process.env.CODEVAULT_MAX_TOKENS, 10);
|
|
84
|
+
if (!isNaN(tokens) && tokens > 0) {
|
|
85
|
+
config.maxTokens = tokens;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// Rate limiting
|
|
89
|
+
if (process.env.CODEVAULT_RATE_LIMIT_RPM || process.env.CODEVAULT_RATE_LIMIT) {
|
|
90
|
+
const rpm = parseInt(process.env.CODEVAULT_RATE_LIMIT_RPM || process.env.CODEVAULT_RATE_LIMIT || '0', 10);
|
|
91
|
+
if (!isNaN(rpm) && rpm > 0) {
|
|
92
|
+
config.rateLimit = config.rateLimit || {};
|
|
93
|
+
config.rateLimit.rpm = rpm;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
if (process.env.CODEVAULT_RATE_LIMIT_TPM) {
|
|
97
|
+
const tpm = parseInt(process.env.CODEVAULT_RATE_LIMIT_TPM, 10);
|
|
98
|
+
if (!isNaN(tpm) && tpm > 0) {
|
|
99
|
+
config.rateLimit = config.rateLimit || {};
|
|
100
|
+
config.rateLimit.tpm = tpm;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// Encryption
|
|
104
|
+
if (process.env.CODEVAULT_ENCRYPTION_KEY) {
|
|
105
|
+
config.encryption = config.encryption || {};
|
|
106
|
+
config.encryption.key = process.env.CODEVAULT_ENCRYPTION_KEY;
|
|
107
|
+
config.encryption.enabled = true;
|
|
108
|
+
}
|
|
109
|
+
// Reranker
|
|
110
|
+
if (process.env.CODEVAULT_RERANK_API_URL) {
|
|
111
|
+
config.reranker = config.reranker || {};
|
|
112
|
+
config.reranker.apiUrl = process.env.CODEVAULT_RERANK_API_URL;
|
|
113
|
+
}
|
|
114
|
+
if (process.env.CODEVAULT_RERANK_API_KEY) {
|
|
115
|
+
config.reranker = config.reranker || {};
|
|
116
|
+
config.reranker.apiKey = process.env.CODEVAULT_RERANK_API_KEY;
|
|
117
|
+
}
|
|
118
|
+
if (process.env.CODEVAULT_RERANK_MODEL) {
|
|
119
|
+
config.reranker = config.reranker || {};
|
|
120
|
+
config.reranker.model = process.env.CODEVAULT_RERANK_MODEL;
|
|
121
|
+
}
|
|
122
|
+
return config;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Deep merge configuration objects
|
|
126
|
+
* Later configs override earlier ones
|
|
127
|
+
*/
|
|
128
|
+
function deepMerge(...configs) {
|
|
129
|
+
const result = {};
|
|
130
|
+
for (const config of configs) {
|
|
131
|
+
if (!config)
|
|
132
|
+
continue;
|
|
133
|
+
if (config.defaultProvider) {
|
|
134
|
+
result.defaultProvider = config.defaultProvider;
|
|
135
|
+
}
|
|
136
|
+
if (config.maxTokens) {
|
|
137
|
+
result.maxTokens = config.maxTokens;
|
|
138
|
+
}
|
|
139
|
+
if (config.providers) {
|
|
140
|
+
result.providers = result.providers || {};
|
|
141
|
+
if (config.providers.openai) {
|
|
142
|
+
result.providers.openai = {
|
|
143
|
+
...result.providers.openai,
|
|
144
|
+
...config.providers.openai
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
if (config.providers.ollama) {
|
|
148
|
+
result.providers.ollama = {
|
|
149
|
+
...result.providers.ollama,
|
|
150
|
+
...config.providers.ollama
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
if (config.rateLimit) {
|
|
155
|
+
result.rateLimit = {
|
|
156
|
+
...result.rateLimit,
|
|
157
|
+
...config.rateLimit
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
if (config.encryption) {
|
|
161
|
+
result.encryption = {
|
|
162
|
+
...result.encryption,
|
|
163
|
+
...config.encryption
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
if (config.reranker) {
|
|
167
|
+
result.reranker = {
|
|
168
|
+
...result.reranker,
|
|
169
|
+
...config.reranker
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return result;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Load merged configuration from all sources
|
|
177
|
+
* Priority: env > project > global
|
|
178
|
+
*
|
|
179
|
+
* @readonly Never modifies config files
|
|
180
|
+
* @param basePath Project path for project-local config
|
|
181
|
+
* @returns Merged configuration (in-memory only)
|
|
182
|
+
*/
|
|
183
|
+
export function loadConfig(basePath = '.') {
|
|
184
|
+
const global = readGlobalConfig();
|
|
185
|
+
const project = readProjectConfig(basePath);
|
|
186
|
+
const env = readEnvConfig();
|
|
187
|
+
// Merge with priority: env overrides project overrides global
|
|
188
|
+
return deepMerge(global, project, env);
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Get configuration sources for debugging
|
|
192
|
+
* @readonly Never modifies files
|
|
193
|
+
*/
|
|
194
|
+
export function getConfigSources(basePath = '.') {
|
|
195
|
+
return {
|
|
196
|
+
global: readGlobalConfig(),
|
|
197
|
+
project: readProjectConfig(basePath),
|
|
198
|
+
env: readEnvConfig()
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Write global configuration (CLI only)
|
|
203
|
+
* This is the ONLY function that writes to disk
|
|
204
|
+
*/
|
|
205
|
+
export function saveGlobalConfig(config) {
|
|
206
|
+
// Ensure directory exists
|
|
207
|
+
if (!fs.existsSync(GLOBAL_CONFIG_DIR)) {
|
|
208
|
+
fs.mkdirSync(GLOBAL_CONFIG_DIR, { recursive: true });
|
|
209
|
+
}
|
|
210
|
+
// Write config
|
|
211
|
+
fs.writeFileSync(GLOBAL_CONFIG_FILE, JSON.stringify(config, null, 2));
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Write project-local configuration (CLI only)
|
|
215
|
+
* This is the ONLY function that writes project config
|
|
216
|
+
*/
|
|
217
|
+
export function saveProjectConfig(config, basePath = '.') {
|
|
218
|
+
const configDir = path.join(path.resolve(basePath), '.codevault');
|
|
219
|
+
const configPath = path.join(configDir, 'config.json');
|
|
220
|
+
// Ensure directory exists
|
|
221
|
+
if (!fs.existsSync(configDir)) {
|
|
222
|
+
fs.mkdirSync(configDir, { recursive: true });
|
|
223
|
+
}
|
|
224
|
+
// Write config
|
|
225
|
+
fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Check if global config exists
|
|
229
|
+
*/
|
|
230
|
+
export function hasGlobalConfig() {
|
|
231
|
+
return fs.existsSync(GLOBAL_CONFIG_FILE);
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Check if project config exists
|
|
235
|
+
*/
|
|
236
|
+
export function hasProjectConfig(basePath = '.') {
|
|
237
|
+
const configPath = path.join(path.resolve(basePath), PROJECT_CONFIG_FILE);
|
|
238
|
+
return fs.existsSync(configPath);
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* Get global config file path
|
|
242
|
+
*/
|
|
243
|
+
export function getGlobalConfigPath() {
|
|
244
|
+
return GLOBAL_CONFIG_FILE;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Get project config file path
|
|
248
|
+
*/
|
|
249
|
+
export function getProjectConfigPath(basePath = '.') {
|
|
250
|
+
return path.join(path.resolve(basePath), PROJECT_CONFIG_FILE);
|
|
251
|
+
}
|
|
252
|
+
//# sourceMappingURL=loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface ProviderConfig {
|
|
2
|
+
apiKey?: string;
|
|
3
|
+
model?: string;
|
|
4
|
+
baseUrl?: string;
|
|
5
|
+
dimensions?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface RateLimitConfig {
|
|
8
|
+
rpm?: number;
|
|
9
|
+
tpm?: number;
|
|
10
|
+
}
|
|
11
|
+
export interface EncryptionConfig {
|
|
12
|
+
enabled?: boolean;
|
|
13
|
+
key?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface CodevaultConfig {
|
|
16
|
+
defaultProvider?: string;
|
|
17
|
+
providers?: {
|
|
18
|
+
openai?: ProviderConfig;
|
|
19
|
+
ollama?: ProviderConfig;
|
|
20
|
+
};
|
|
21
|
+
rateLimit?: RateLimitConfig;
|
|
22
|
+
encryption?: EncryptionConfig;
|
|
23
|
+
maxTokens?: number;
|
|
24
|
+
reranker?: {
|
|
25
|
+
apiUrl?: string;
|
|
26
|
+
apiKey?: string;
|
|
27
|
+
model?: string;
|
|
28
|
+
maxCandidates?: number;
|
|
29
|
+
maxTokens?: number;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export interface ConfigSource {
|
|
33
|
+
global: CodevaultConfig | null;
|
|
34
|
+
project: CodevaultConfig | null;
|
|
35
|
+
env: CodevaultConfig;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE;QACV,MAAM,CAAC,EAAE,cAAc,CAAC;QACxB,MAAM,CAAC,EAAE,cAAc,CAAC;KACzB,CAAC;IACF,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE;QACT,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IAC/B,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC,GAAG,EAAE,eAAe,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":""}
|