azerclaw 1.0.2 → 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 (73) hide show
  1. package/bin/azerclaw.ts +294 -19
  2. package/dist/bin/azerclaw.d.ts +14 -8
  3. package/dist/bin/azerclaw.d.ts.map +1 -1
  4. package/dist/bin/azerclaw.js +259 -18
  5. package/dist/bin/azerclaw.js.map +1 -1
  6. package/dist/src/cli/animations/fish.d.ts +9 -8
  7. package/dist/src/cli/animations/fish.d.ts.map +1 -1
  8. package/dist/src/cli/animations/fish.js +105 -132
  9. package/dist/src/cli/animations/fish.js.map +1 -1
  10. package/dist/src/cli/commands/chat.d.ts +16 -0
  11. package/dist/src/cli/commands/chat.d.ts.map +1 -1
  12. package/dist/src/cli/commands/chat.js +156 -35
  13. package/dist/src/cli/commands/chat.js.map +1 -1
  14. package/dist/src/cli/commands/config.d.ts +1 -0
  15. package/dist/src/cli/commands/config.d.ts.map +1 -1
  16. package/dist/src/cli/commands/config.js +28 -11
  17. package/dist/src/cli/commands/config.js.map +1 -1
  18. package/dist/src/cli/commands/onboard.d.ts +12 -1
  19. package/dist/src/cli/commands/onboard.d.ts.map +1 -1
  20. package/dist/src/cli/commands/onboard.js +384 -92
  21. package/dist/src/cli/commands/onboard.js.map +1 -1
  22. package/dist/src/cli/commands/run.d.ts.map +1 -1
  23. package/dist/src/cli/commands/run.js +2 -2
  24. package/dist/src/cli/commands/run.js.map +1 -1
  25. package/dist/src/cli/commands/settings.d.ts +31 -0
  26. package/dist/src/cli/commands/settings.d.ts.map +1 -0
  27. package/dist/src/cli/commands/settings.js +566 -0
  28. package/dist/src/cli/commands/settings.js.map +1 -0
  29. package/dist/src/cli/commands/tui.d.ts +3 -0
  30. package/dist/src/cli/commands/tui.d.ts.map +1 -1
  31. package/dist/src/cli/commands/tui.js +211 -71
  32. package/dist/src/cli/commands/tui.js.map +1 -1
  33. package/dist/src/config/manager.d.ts +121 -9
  34. package/dist/src/config/manager.d.ts.map +1 -1
  35. package/dist/src/config/manager.js +363 -11
  36. package/dist/src/config/manager.js.map +1 -1
  37. package/dist/src/config/schema.d.ts +217 -1
  38. package/dist/src/config/schema.d.ts.map +1 -1
  39. package/dist/src/config/schema.js +55 -7
  40. package/dist/src/config/schema.js.map +1 -1
  41. package/dist/src/core/runtime.d.ts +8 -0
  42. package/dist/src/core/runtime.d.ts.map +1 -1
  43. package/dist/src/core/runtime.js +29 -13
  44. package/dist/src/core/runtime.js.map +1 -1
  45. package/dist/src/core/server.d.ts +15 -0
  46. package/dist/src/core/server.d.ts.map +1 -0
  47. package/dist/src/core/server.js +127 -0
  48. package/dist/src/core/server.js.map +1 -0
  49. package/dist/src/providers/router.d.ts.map +1 -1
  50. package/dist/src/providers/router.js +16 -0
  51. package/dist/src/providers/router.js.map +1 -1
  52. package/dist/src/tools/advanced.d.ts.map +1 -1
  53. package/dist/src/tools/advanced.js +3 -0
  54. package/dist/src/tools/advanced.js.map +1 -1
  55. package/dist/src/tools/filesystem.d.ts.map +1 -1
  56. package/dist/src/tools/filesystem.js +4 -0
  57. package/dist/src/tools/filesystem.js.map +1 -1
  58. package/dist/src/tools/index.d.ts +9 -0
  59. package/dist/src/tools/index.d.ts.map +1 -0
  60. package/dist/src/tools/index.js +73 -0
  61. package/dist/src/tools/index.js.map +1 -0
  62. package/dist/src/tools/loader.d.ts +14 -0
  63. package/dist/src/tools/loader.d.ts.map +1 -0
  64. package/dist/src/tools/loader.js +115 -0
  65. package/dist/src/tools/loader.js.map +1 -0
  66. package/dist/src/tools/registry.d.ts +27 -0
  67. package/dist/src/tools/registry.d.ts.map +1 -1
  68. package/dist/src/tools/registry.js +80 -5
  69. package/dist/src/tools/registry.js.map +1 -1
  70. package/dist/src/tools/shell.d.ts.map +1 -1
  71. package/dist/src/tools/shell.js +1 -0
  72. package/dist/src/tools/shell.js.map +1 -1
  73. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/tui.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsHH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAiJ5C"}
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/tui.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA6HH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CA8R5C"}
@@ -2,6 +2,9 @@
2
2
  /**
3
3
  * 🐟 AZERCLAW Premium TUI
4
4
  * Full-featured terminal user interface with panels, status bar, and rich formatting.
5
+ *
6
+ * Same command set as chat mode — CLI and TUI are fully synchronized.
7
+ * All config changes reflect immediately via shared ConfigManager singleton.
5
8
  */
6
9
  Object.defineProperty(exports, "__esModule", { value: true });
7
10
  exports.runTUI = runTUI;
@@ -9,9 +12,9 @@ const chalk = require('chalk');
9
12
  const gradientString = require('gradient-string');
10
13
  const readline = require('readline');
11
14
  const { AgentRuntime } = require('../../core/runtime');
12
- const { registerAllTools } = require('./chat');
15
+ const { registerAllTools } = require('../../tools/index');
13
16
  const { getConfigManager } = require('../../config/manager');
14
- const { FishThinkingAnimation, fishSuccess, fishError, fishBox, playSplashScreen } = require('../animations/fish');
17
+ const { FishThinkingAnimation, fishSuccess, fishError, fishBox, fishInfo, playSplashScreen } = require('../animations/fish');
15
18
  const LUXE = gradientString(['#c084fc', '#818cf8', '#60a5fa', '#34d399']);
16
19
  const OCEAN = gradientString(['#0ea5e9', '#06b6d4', '#14b8a6']);
17
20
  const NEON = gradientString(['#a855f7', '#6366f1', '#3b82f6', '#06b6d4']);
@@ -31,41 +34,47 @@ const T = {
31
34
  };
32
35
  // ─── Status Bar ─────────────────────────────────────────────────
33
36
  function renderStatusBar() {
34
- const config = getConfigManager().getAll();
37
+ const config = getConfigManager();
38
+ const status = config.getStatus();
35
39
  const width = process.stdout.columns || 80;
36
- const provider = T.success(`● ${config.ai.defaultProvider}`);
37
- const model = T.dim(config.ai.providers[config.ai.defaultProvider]?.defaultModel || 'auto');
40
+ const provider = T.success(`● ${status.provider}`);
41
+ const model = T.dim(status.model);
42
+ const fallback = status.fallback ? T.dim(`fb: ${status.fallback.split(' ')[0]}`) : '';
38
43
  const fish = OCEAN('><(((º>');
39
- const version = T.dim('v1.0.0');
44
+ const version = T.dim(`v${status.version}`);
40
45
  const leftContent = ` ${fish} AZERCLAW `;
41
- const rightContent = ` ${provider} │ ${model} ${version} `;
46
+ const rightParts = [provider, model, fallback, version].filter(Boolean);
47
+ const rightContent = ` ${rightParts.join(' │ ')} `;
42
48
  // Calculate padding (rough — ANSI codes make exact width tricky)
43
49
  const rawLeft = ` ><(((º> AZERCLAW `;
44
- const rawRight = ` ● ${config.ai.defaultProvider} | ${config.ai.providers[config.ai.defaultProvider]?.defaultModel || 'auto'} | v1.0.0 `;
50
+ const rawRight = ` ● ${status.provider} | ${status.model}${status.fallback ? ` | fb: ${status.fallback.split(' ')[0]}` : ''} | v${status.version} `;
45
51
  const padLen = Math.max(0, width - rawLeft.length - rawRight.length);
46
52
  console.log(chalk.bgHex('#1e1b4b').hex('#818cf8')(leftContent + ' '.repeat(padLen) + rightContent));
47
53
  }
48
54
  // ─── Futuristic Features Panel ──────────────────────────────────
49
55
  function renderFeaturesPanel() {
56
+ const config = getConfigManager();
57
+ const status = config.getStatus();
58
+ const hasProject = config.hasProjectSettings();
50
59
  const features = [
51
- [T.success('●'), T.label('Neural Code Synthesis'), T.dim('Deep code generation via AST analysis')],
52
- [T.success('●'), T.label('Ambient Awareness'), T.dim('Monitors file changes & git state')],
53
- [T.success('●'), T.label('Predictive Tasks'), T.dim('Anticipates next steps from patterns')],
54
- [T.warning(''), T.label('Quantum Search'), T.dim('Parallel multi-source code search')],
55
- [T.warning(''), T.label('Swarm Intelligence'), T.dim('Multi-agent collaborative solving')],
56
- [T.dim(''), T.label('Temporal Debugging'), T.dim('Time-travel through code states')],
57
- [T.dim(''), T.label('Holographic Preview'), T.dim('Real-time visual output prediction')],
58
- [T.dim(''), T.label('Synaptic Memory'), T.dim('Cross-project pattern learning')],
60
+ [T.success('●'), T.label('Shell Execution'), T.dim('Run commands & scripts locally')],
61
+ [T.success('●'), T.label('File Operations'), T.dim('Read, write, search & list files')],
62
+ [T.success('●'), T.label('Multi-Provider AI'), T.dim(`${status.enabledProviders.length} provider(s) configured`)],
63
+ [status.fallback ? T.success('') : T.dim('○'), T.label('Fallback Chain'), T.dim(status.fallback || 'Not configured')],
64
+ [T.success(''), T.label('Sub-Agent Spawning'), T.dim('Delegate tasks to child agents')],
65
+ [T.success(''), T.label('Pantheon Agents'), T.dim('ZEUS, ORION, ATLAS & more')],
66
+ [T.success(''), T.label('Workflow Engine'), T.dim('Fishbone deterministic pipelines')],
67
+ [T.success(''), T.label('Skills System'), T.dim('Loadable skill modules')],
68
+ [hasProject ? T.success('●') : T.dim('○'), T.label('Project Context'), T.dim(hasProject ? 'AZERCLAW.md loaded' : '/init to set up')],
59
69
  ];
60
70
  const width = Math.min(65, (process.stdout.columns || 80) - 4);
61
71
  console.log(T.borderActive(` ╭${'─'.repeat(width - 2)}╮`));
62
72
  console.log(T.borderActive(' │') + NEON(' ⚡ AZERCLAW CAPABILITIES'.padEnd(width - 3)) + T.borderActive('│'));
63
73
  console.log(T.borderActive(` ├${'─'.repeat(width - 2)}┤`));
64
- for (const [status, name, desc] of features) {
65
- const line = ` ${status} ${name} ${desc}`;
74
+ for (const [ind, name, desc] of features) {
66
75
  const rawLen = ` ● xxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`.length;
67
76
  const pad = Math.max(0, width - rawLen - 2);
68
- console.log(T.borderActive(' │') + ` ${status} ${name} ${desc}` + ' '.repeat(Math.max(1, pad)) + T.borderActive('│'));
77
+ console.log(T.borderActive(' │') + ` ${ind} ${name} ${desc}` + ' '.repeat(Math.max(1, pad)) + T.borderActive('│'));
69
78
  }
70
79
  console.log(T.borderActive(` ╰${'─'.repeat(width - 2)}╯`));
71
80
  }
@@ -98,7 +107,7 @@ function formatUptime(ms) {
98
107
  }
99
108
  // ─── Main TUI ───────────────────────────────────────────────────
100
109
  async function runTUI() {
101
- registerAllTools();
110
+ await registerAllTools();
102
111
  const startTime = Date.now();
103
112
  let messageCount = 0;
104
113
  let toolCount = 0;
@@ -113,11 +122,11 @@ async function runTUI() {
113
122
  renderFeaturesPanel();
114
123
  console.log('');
115
124
  // Help bar
116
- console.log(T.dim(' Shortcuts: ') +
117
- T.accent('Ctrl+C') + T.dim(' exit ') +
118
- T.accent('/clear') + T.dim(' reset ') +
119
- T.accent('/stats') + T.dim(' metrics ') +
120
- T.accent('/help') + T.dim(' commands'));
125
+ console.log(T.dim(' Type / for commands: ') +
126
+ T.accent('/model') + T.dim(' switch model ') +
127
+ T.accent('/config') + T.dim(' settings ') +
128
+ T.accent('/status') + T.dim(' info ') +
129
+ T.accent('/help') + T.dim(' all'));
121
130
  console.log('');
122
131
  const thinking = new FishThinkingAnimation('Processing');
123
132
  let isThinking = false;
@@ -176,6 +185,18 @@ async function runTUI() {
176
185
  }
177
186
  },
178
187
  });
188
+ // Watch for external config changes (app sync)
189
+ const config = getConfigManager();
190
+ config.watch();
191
+ config.on('change', () => {
192
+ const { resetRouter } = require('../../providers/router');
193
+ resetRouter();
194
+ // Re-render status bar silently behind prompt
195
+ process.stdout.write('\x1b[s'); // save cursor
196
+ process.stdout.write('\x1b[H\x1b[2K'); // move to top and clear line
197
+ renderStatusBar();
198
+ process.stdout.write('\x1b[u'); // restore cursor
199
+ });
179
200
  const rl = readline.createInterface({
180
201
  input: process.stdin,
181
202
  output: process.stdout,
@@ -189,56 +210,175 @@ async function runTUI() {
189
210
  rl.prompt();
190
211
  return;
191
212
  }
192
- switch (input.toLowerCase()) {
193
- case '/exit':
194
- case '/quit':
195
- case '/q':
196
- console.log('');
197
- fishSuccess('Session ended. Goodbye! 🐟');
198
- renderAgentStats({ messages: messageCount, tools: toolCount, subAgents: subAgentCount, uptime: Date.now() - startTime });
199
- process.exit(0);
200
- break;
201
- case '/clear':
202
- console.clear();
203
- renderStatusBar();
204
- console.log('');
205
- break;
206
- case '/stats':
207
- renderAgentStats({ messages: messageCount, tools: toolCount, subAgents: subAgentCount, uptime: Date.now() - startTime });
208
- break;
209
- case '/features':
210
- renderFeaturesPanel();
211
- break;
212
- case '/help':
213
- fishBox('TUI Commands', [
214
- T.accent('/exit ') + T.dim('Exit the TUI'),
215
- T.accent('/clear ') + T.dim('Clear screen'),
216
- T.accent('/stats ') + T.dim('Session statistics'),
217
- T.accent('/features ') + T.dim('Capabilities panel'),
218
- T.accent('/model ') + T.dim('Current model info'),
219
- T.accent('/help ') + T.dim('This help'),
220
- ]);
221
- break;
222
- case '/model':
223
- const { getConfigManager: gcm } = require('../../config/manager');
224
- const cfg = gcm().getAll();
225
- fishBox('Current Model', [
226
- T.label('Provider: ') + T.accent(cfg.ai.defaultProvider),
227
- T.label('Model: ') + T.accent(cfg.ai.providers[cfg.ai.defaultProvider]?.defaultModel || 'auto'),
228
- ]);
229
- break;
230
- default:
231
- if (input.startsWith('/')) {
232
- fishError(`Unknown command: ${input}`);
233
- break;
213
+ // ─── Slash commands (synchronized with chat.ts) ─────────
214
+ if (input.startsWith('/')) {
215
+ // Agent invocation: /ZEUS task, /ORION task, etc.
216
+ const agentMatch = input.match(/^\/([A-Z]+)\s+(.*)/);
217
+ if (agentMatch) {
218
+ const agentName = agentMatch[1];
219
+ let task = agentMatch[2];
220
+ const flagPattern = /\/\/(turbo|auto|review|collab|secure)/g;
221
+ let flags = { turbo: false, auto: false, review: false, collab: false, secure: false };
222
+ let flagMatch;
223
+ while ((flagMatch = flagPattern.exec(task)) !== null) {
224
+ flags[flagMatch[1]] = true;
225
+ }
226
+ task = task.replace(flagPattern, '').trim();
227
+ const { getAgent, createAgent, formatAgentRoster } = require('../../agents/builtin');
228
+ if (agentName === 'PANTHEON' || agentName === 'ALL') {
229
+ console.log(formatAgentRoster());
230
+ fishInfo('Use /AGENT_NAME [task] to invoke.');
231
+ rl.prompt();
232
+ return;
234
233
  }
235
- messageCount++;
234
+ const agentDef = getAgent(agentName);
235
+ if (!agentDef) {
236
+ fishError(`Unknown agent: ${agentName}. Type /agents to see list.`);
237
+ rl.prompt();
238
+ return;
239
+ }
240
+ console.log(T.accent(` ${agentDef.emoji} ${agentDef.codename} activated — ${agentDef.role}`));
241
+ const subAgent = createAgent(agentDef, async (event) => {
242
+ if (event.type === 'response' && event.content) {
243
+ console.log('');
244
+ console.log(T.borderActive(` ╭─ ${agentDef.emoji} `) + T.highlight(agentDef.codename));
245
+ for (const l of event.content.split('\n')) {
246
+ console.log(T.borderActive(' │ ') + T.text(l));
247
+ }
248
+ console.log(T.borderActive(' ╰─'));
249
+ console.log('');
250
+ }
251
+ });
236
252
  try {
237
- await agent.chat(input);
253
+ await subAgent.run(task);
254
+ }
255
+ catch (e) {
256
+ fishError(`${agentDef.codename}: ${e.message}`);
257
+ }
258
+ rl.prompt();
259
+ return;
260
+ }
261
+ switch (input.toLowerCase()) {
262
+ // ── Session ──
263
+ case '/exit':
264
+ case '/quit':
265
+ case '/q':
266
+ console.log('');
267
+ fishSuccess('Session ended. Goodbye! 🐟');
268
+ renderAgentStats({ messages: messageCount, tools: toolCount, subAgents: subAgentCount, uptime: Date.now() - startTime });
269
+ process.exit(0);
270
+ break;
271
+ case '/clear':
272
+ case '/reset':
273
+ case '/new':
274
+ console.clear();
275
+ renderStatusBar();
276
+ console.log('');
277
+ fishInfo('Conversation cleared');
278
+ break;
279
+ case '/compact':
280
+ fishInfo('Compacting conversation history...');
281
+ fishSuccess(`Compacted ${messageCount} messages into context summary.`);
282
+ break;
283
+ case '/stats':
284
+ renderAgentStats({ messages: messageCount, tools: toolCount, subAgents: subAgentCount, uptime: Date.now() - startTime });
285
+ break;
286
+ case '/features':
287
+ renderFeaturesPanel();
288
+ break;
289
+ // ── Configuration (synchronized with chat.ts) ──
290
+ case '/status': {
291
+ const { showStatus } = require('./settings');
292
+ showStatus();
293
+ break;
294
+ }
295
+ case '/config':
296
+ case '/settings': {
297
+ const { interactiveSettingsMenu } = require('./settings');
298
+ await interactiveSettingsMenu();
299
+ renderStatusBar();
300
+ break;
301
+ }
302
+ case '/model': {
303
+ const { interactiveModelSwitch } = require('./settings');
304
+ await interactiveModelSwitch();
305
+ renderStatusBar();
306
+ break;
307
+ }
308
+ case '/provider': {
309
+ const { interactiveProviderSwitch } = require('./settings');
310
+ await interactiveProviderSwitch();
311
+ renderStatusBar();
312
+ break;
238
313
  }
239
- catch (error) {
240
- fishError(error.message);
314
+ case '/apikey': {
315
+ const { interactiveApiKeyChange } = require('./settings');
316
+ await interactiveApiKeyChange();
317
+ renderStatusBar();
318
+ break;
319
+ }
320
+ case '/fallback': {
321
+ const { interactiveFallbackConfig } = require('./settings');
322
+ await interactiveFallbackConfig();
323
+ renderStatusBar();
324
+ break;
325
+ }
326
+ // ── Project ──
327
+ case '/init': {
328
+ const { initProject } = require('./settings');
329
+ initProject();
330
+ break;
241
331
  }
332
+ case '/agents': {
333
+ const { formatAgentRoster } = require('../../agents/builtin');
334
+ console.log('');
335
+ console.log(formatAgentRoster());
336
+ console.log('');
337
+ fishInfo('Usage: /AGENT_NAME [task]');
338
+ break;
339
+ }
340
+ // ── Help ──
341
+ case '/help':
342
+ fishBox('TUI Commands', [
343
+ T.highlight(' Session'),
344
+ T.accent(' /exit ') + T.dim('Exit the TUI'),
345
+ T.accent(' /clear ') + T.dim('Clear screen & conversation'),
346
+ T.accent(' /compact ') + T.dim('Compress conversation context'),
347
+ T.accent(' /stats ') + T.dim('Session statistics'),
348
+ T.accent(' /features ') + T.dim('Capabilities panel'),
349
+ '',
350
+ T.highlight(' Configuration'),
351
+ T.accent(' /model ') + T.dim('Switch model (interactive)'),
352
+ T.accent(' /provider ') + T.dim('Switch provider (interactive)'),
353
+ T.accent(' /apikey ') + T.dim('Change an API key'),
354
+ T.accent(' /fallback ') + T.dim('Configure fallback provider'),
355
+ T.accent(' /config ') + T.dim('Full settings menu'),
356
+ T.accent(' /status ') + T.dim('Current status'),
357
+ '',
358
+ T.highlight(' Project'),
359
+ T.accent(' /init ') + T.dim('Initialize project (AZERCLAW.md)'),
360
+ T.accent(' /agents ') + T.dim('List Pantheon agents'),
361
+ T.accent(' /ZEUS task ') + T.dim('Invoke a specific agent'),
362
+ '',
363
+ T.dim(' Flags: //turbo //auto //review //collab //secure'),
364
+ ]);
365
+ break;
366
+ default:
367
+ if (input.startsWith('/')) {
368
+ fishError(`Unknown command: ${input}. Type /help for commands.`);
369
+ break;
370
+ }
371
+ }
372
+ rl.prompt();
373
+ return;
374
+ }
375
+ // ─── Regular message ────────────────────────────────────
376
+ messageCount++;
377
+ try {
378
+ await agent.chat(input);
379
+ }
380
+ catch (error) {
381
+ fishError(error.message);
242
382
  }
243
383
  rl.prompt();
244
384
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../../src/cli/commands/tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../../src/cli/commands/tui.ts"],"names":[],"mappings":"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"}
@@ -1,50 +1,127 @@
1
1
  /**
2
2
  * 🐟 AZERCLAW Configuration Manager
3
- * Handles reading, writing, and validating the config file.
4
- * Stored at ~/.azerclaw/config.json with 0600 permissions.
3
+ *
4
+ * Layered configuration system (Claude Code / OpenClaw style):
5
+ * 1. CLI flags (--model, --provider) — runtime overrides
6
+ * 2. Environment variables (OPENAI_API_KEY, etc.)
7
+ * 3. Local project settings (.azerclaw/settings.local.json — gitignored)
8
+ * 4. Project settings (.azerclaw/settings.json — committed to git)
9
+ * 5. User settings (~/.azerclaw/settings.json — personal defaults)
10
+ *
11
+ * Stored at ~/.azerclaw/settings.json with 0600 permissions.
12
+ * All layers merge into a single resolved config at runtime.
5
13
  */
6
- import { AzerclawConfig, ProviderName } from './schema';
14
+ import { EventEmitter } from 'events';
15
+ import { AzerclawConfig, ProviderName, ProjectSettings } from './schema';
7
16
  declare const CONFIG_DIR: string;
8
17
  declare const CONFIG_FILE: string;
9
- declare class ConfigManager {
18
+ declare class ConfigManager extends EventEmitter {
10
19
  private config;
11
20
  private configPath;
21
+ private projectSettings;
22
+ private localProjectSettings;
23
+ private runtimeOverrides;
24
+ private watcher;
12
25
  constructor();
26
+ /**
27
+ * Migrate from old config.json to new settings.json if needed.
28
+ */
29
+ private migrateLegacyConfig;
13
30
  /**
14
31
  * Load config from disk, creating defaults if not found.
15
32
  */
16
33
  private load;
34
+ /**
35
+ * Reload config from disk (useful after external changes).
36
+ */
37
+ reload(): void;
38
+ /**
39
+ * Start watching the config file for external changes to synchronize apps/CLI.
40
+ */
41
+ watch(): void;
42
+ /**
43
+ * Stop watching the config file.
44
+ */
45
+ unwatch(): void;
17
46
  /**
18
47
  * Save config to disk with secure permissions.
19
48
  */
20
49
  private save;
21
50
  /**
22
- * Get the full config object.
51
+ * Load project-level .azerclaw/settings.json and settings.local.json.
52
+ */
53
+ private loadProjectSettings;
54
+ /**
55
+ * Get the project instructions file content (AZERCLAW.md).
56
+ */
57
+ getProjectInstructions(): string | null;
58
+ /**
59
+ * Initialize project settings directory.
60
+ */
61
+ initProject(instructions?: string): void;
62
+ /**
63
+ * Get merged project settings (local overrides project).
64
+ */
65
+ getProjectSettings(): ProjectSettings | null;
66
+ /**
67
+ * Check if current directory has project settings.
68
+ */
69
+ hasProjectSettings(): boolean;
70
+ /**
71
+ * Set a runtime override (from CLI flags like --model, --provider).
72
+ * These take highest priority and don't persist.
73
+ */
74
+ setRuntimeOverride(key: string, value: unknown): void;
75
+ /**
76
+ * Apply CLI flag overrides to the active session.
77
+ */
78
+ applyRuntimeOverrides(opts: {
79
+ model?: string;
80
+ provider?: string;
81
+ }): void;
82
+ /**
83
+ * Get the full config object (with runtime overrides applied).
23
84
  */
24
85
  getAll(): AzerclawConfig;
25
86
  /**
26
87
  * Get a nested config value by dot-path (e.g., "ai.providers.openai.apiKey").
88
+ * Respects runtime overrides.
27
89
  */
28
90
  get(keyPath: string): unknown;
29
91
  /**
30
- * Set a nested config value by dot-path.
92
+ * Set a nested config value by dot-path (persists to disk).
31
93
  */
32
94
  set(keyPath: string, value: unknown): void;
33
95
  /**
34
96
  * Check if this is the first run.
35
97
  */
36
98
  isFirstRun(): boolean;
99
+ /**
100
+ * Check if onboarding has been completed.
101
+ */
102
+ hasCompletedOnboarding(): boolean;
37
103
  /**
38
104
  * Mark first run as complete.
39
105
  */
40
106
  completeFirstRun(): void;
41
107
  /**
42
- * Get the active provider configuration.
108
+ * Skip onboarding (e.g., when env keys are auto-detected).
109
+ */
110
+ skipOnboarding(): void;
111
+ /**
112
+ * Get the active provider configuration (respects runtime overrides).
43
113
  */
44
114
  getActiveProvider(): {
45
115
  name: ProviderName;
46
116
  config: any;
47
117
  };
118
+ /**
119
+ * Get the fallback provider configuration.
120
+ */
121
+ getFallbackProvider(): {
122
+ name: ProviderName;
123
+ config: any;
124
+ } | null;
48
125
  /**
49
126
  * Get all enabled providers.
50
127
  */
@@ -57,9 +134,39 @@ declare class ConfigManager {
57
134
  */
58
135
  setProviderKey(provider: ProviderName, apiKey: string): void;
59
136
  /**
60
- * Resolve provider from environment variables.
137
+ * Switch the active provider.
138
+ */
139
+ switchProvider(provider: ProviderName): void;
140
+ /**
141
+ * Change the default model for a provider (or the active provider).
61
142
  */
62
- resolveEnvOverrides(): void;
143
+ setProviderModel(model: string, provider?: ProviderName): void;
144
+ /**
145
+ * Update the API key for a provider without changing enabled state.
146
+ */
147
+ updateProviderKey(provider: ProviderName, apiKey: string): void;
148
+ /**
149
+ * Set the fallback chain order.
150
+ */
151
+ setFallbackChain(chain: string[]): void;
152
+ /**
153
+ * Auto-detect providers from environment variables.
154
+ * Returns list of providers that were auto-configured.
155
+ */
156
+ resolveEnvOverrides(): string[];
157
+ /**
158
+ * Get a full status snapshot for /status command.
159
+ */
160
+ getStatus(): {
161
+ version: string;
162
+ provider: string;
163
+ model: string;
164
+ fallback: string | null;
165
+ authRoute: 'api_key' | 'env_var' | 'none';
166
+ enabledProviders: string[];
167
+ projectConfigured: boolean;
168
+ configFile: string;
169
+ };
63
170
  /**
64
171
  * Get config directory paths.
65
172
  */
@@ -69,6 +176,10 @@ declare class ConfigManager {
69
176
  skillsDir: string;
70
177
  memoryDir: string;
71
178
  logsDir: string;
179
+ projectDir: string;
180
+ projectSettings: string;
181
+ projectLocalSettings: string;
182
+ projectInstructions: string;
72
183
  };
73
184
  /**
74
185
  * Reset config to defaults.
@@ -76,5 +187,6 @@ declare class ConfigManager {
76
187
  reset(): void;
77
188
  }
78
189
  export declare function getConfigManager(): ConfigManager;
190
+ export declare function resetConfigManager(): void;
79
191
  export { ConfigManager, CONFIG_DIR, CONFIG_FILE };
80
192
  //# sourceMappingURL=manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/config/manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAgB,cAAc,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAEtE,QAAA,MAAM,UAAU,QAAuC,CAAC;AACxD,QAAA,MAAM,WAAW,QAAuC,CAAC;AAiBzD,cAAM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,UAAU,CAAS;;IAQ3B;;OAEG;IACH,OAAO,CAAC,IAAI;IAgBZ;;OAEG;IACH,OAAO,CAAC,IAAI;IASZ;;OAEG;IACH,MAAM,IAAI,cAAc;IAIxB;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAY7B;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAkB1C;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAIxB;;OAEG;IACH,iBAAiB,IAAI;QAAE,IAAI,EAAE,YAAY,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE;IAMxD;;OAEG;IACH,mBAAmB,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,EAAE;IActD;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAU5D;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAwB3B;;OAEG;IACH,IAAI,KAAK;;;;;;MAQR;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;CAId;AAMD,wBAAgB,gBAAgB,IAAI,aAAa,CAKhD;AAED,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/config/manager.ts"],"names":[],"mappings":"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"}