@zincapp/zn-vault-agent 1.19.0 → 1.20.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 (47) hide show
  1. package/dist/commands/start.d.ts.map +1 -1
  2. package/dist/commands/start.js +80 -2
  3. package/dist/commands/start.js.map +1 -1
  4. package/dist/lib/auth/bootstrap.d.ts +34 -0
  5. package/dist/lib/auth/bootstrap.d.ts.map +1 -0
  6. package/dist/lib/auth/bootstrap.js +152 -0
  7. package/dist/lib/auth/bootstrap.js.map +1 -0
  8. package/dist/lib/config/index.d.ts +2 -1
  9. package/dist/lib/config/index.d.ts.map +1 -1
  10. package/dist/lib/config/index.js +3 -1
  11. package/dist/lib/config/index.js.map +1 -1
  12. package/dist/lib/config/loader.d.ts +20 -2
  13. package/dist/lib/config/loader.d.ts.map +1 -1
  14. package/dist/lib/config/loader.js +43 -3
  15. package/dist/lib/config/loader.js.map +1 -1
  16. package/dist/lib/config/types.d.ts +25 -2
  17. package/dist/lib/config/types.d.ts.map +1 -1
  18. package/dist/lib/config/types.js +1 -0
  19. package/dist/lib/config/types.js.map +1 -1
  20. package/dist/lib/config/vault-loader.d.ts +50 -0
  21. package/dist/lib/config/vault-loader.d.ts.map +1 -0
  22. package/dist/lib/config/vault-loader.js +163 -0
  23. package/dist/lib/config/vault-loader.js.map +1 -0
  24. package/dist/lib/config.d.ts +2 -1
  25. package/dist/lib/config.d.ts.map +1 -1
  26. package/dist/lib/config.js +1 -1
  27. package/dist/lib/config.js.map +1 -1
  28. package/dist/lib/websocket/client.d.ts.map +1 -1
  29. package/dist/lib/websocket/client.js +1 -0
  30. package/dist/lib/websocket/client.js.map +1 -1
  31. package/dist/lib/websocket/dispatcher.d.ts +2 -1
  32. package/dist/lib/websocket/dispatcher.d.ts.map +1 -1
  33. package/dist/lib/websocket/dispatcher.js +15 -0
  34. package/dist/lib/websocket/dispatcher.js.map +1 -1
  35. package/dist/lib/websocket/index.d.ts +1 -1
  36. package/dist/lib/websocket/index.d.ts.map +1 -1
  37. package/dist/lib/websocket/index.js.map +1 -1
  38. package/dist/lib/websocket/types.d.ts +15 -2
  39. package/dist/lib/websocket/types.d.ts.map +1 -1
  40. package/dist/lib/websocket/types.js.map +1 -1
  41. package/dist/lib/websocket.d.ts +2 -1
  42. package/dist/lib/websocket.d.ts.map +1 -1
  43. package/dist/lib/websocket.js +68 -1
  44. package/dist/lib/websocket.js.map +1 -1
  45. package/dist/plugins/types.d.ts +2 -2
  46. package/dist/plugins/types.d.ts.map +1 -1
  47. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwBzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAuU3D"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkCzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAka3D"}
@@ -1,10 +1,11 @@
1
1
  // Path: src/commands/start.ts
2
2
  // Start command - runs the agent daemon
3
3
  import chalk from 'chalk';
4
- import { isConfigured, loadConfig, getTargets, getSecretTargets, isManagedKeyMode, DEFAULT_EXEC_CONFIG, } from '../lib/config.js';
4
+ import { isConfigured, loadConfig, getTargets, getSecretTargets, isManagedKeyMode, setConfigInMemory, fetchConfigFromVault, isConfigFromVaultEnabled, saveConfig, DEFAULT_EXEC_CONFIG, } from '../lib/config.js';
5
5
  import { validateConfig, formatValidationResult } from '../lib/validation.js';
6
6
  import { startDaemon } from '../lib/websocket.js';
7
7
  import { logger } from '../lib/logger.js';
8
+ import { needsBootstrapRegistration, exchangeBootstrapToken, applyRegistrationResult, } from '../lib/auth/bootstrap.js';
8
9
  import { NpmAutoUpdateService, loadUpdateConfig } from '../services/npm-auto-update.js';
9
10
  import { PluginAutoUpdateService, loadPluginUpdateConfig } from '../services/plugin-auto-update.js';
10
11
  import { parseSecretMapping, isSensitiveEnvVar } from '../lib/secret-env.js';
@@ -84,7 +85,80 @@ Examples:
84
85
  console.error(chalk.red('Not configured. Run: zn-vault-agent login'));
85
86
  process.exit(1);
86
87
  }
87
- const config = loadConfig();
88
+ let config = loadConfig();
89
+ // ========================================================================
90
+ // Bootstrap Registration (one-command deployment)
91
+ // ========================================================================
92
+ // If config has a bootstrap token but no API key, register with vault first
93
+ if (needsBootstrapRegistration(config)) {
94
+ console.log(chalk.cyan('Bootstrap mode detected, registering with vault...'));
95
+ logger.info({ vaultUrl: config.vaultUrl, hostname: config.hostname }, 'Starting bootstrap registration');
96
+ try {
97
+ const result = await exchangeBootstrapToken(config);
98
+ // Apply registration result to config
99
+ config = applyRegistrationResult(config, result);
100
+ // Persist updated config (removes bootstrap token, adds API key)
101
+ saveConfig(config);
102
+ console.log(chalk.green('Registration successful!'));
103
+ console.log(` Agent ID: ${result.agentId}`);
104
+ console.log(` Tenant: ${result.tenantId}`);
105
+ if (result.managedKeyName) {
106
+ console.log(` Managed Key: ${result.managedKeyName}`);
107
+ }
108
+ console.log();
109
+ logger.info({
110
+ agentId: result.agentId,
111
+ tenantId: result.tenantId,
112
+ hostConfigId: result.hostConfigId,
113
+ managedKeyName: result.managedKeyName,
114
+ }, 'Bootstrap registration complete, config persisted');
115
+ }
116
+ catch (err) {
117
+ console.error(chalk.red('Bootstrap registration failed:'), err instanceof Error ? err.message : String(err));
118
+ console.error(chalk.yellow('Hint: Ensure the vault server is reachable and your bootstrap token is valid.'));
119
+ logger.error({ err }, 'Bootstrap registration failed');
120
+ process.exit(1);
121
+ }
122
+ }
123
+ // Config-from-vault mode: fetch config from vault server at startup
124
+ if (isConfigFromVaultEnabled(config)) {
125
+ console.log(chalk.cyan('Config-from-vault mode enabled, fetching config from vault...'));
126
+ logger.info({ vaultUrl: config.vaultUrl }, 'Fetching config from vault');
127
+ const result = await fetchConfigFromVault({
128
+ vaultUrl: config.vaultUrl,
129
+ apiKey: config.auth.apiKey ?? '',
130
+ insecure: config.insecure,
131
+ agentId: config.agentId,
132
+ configVersion: config.configVersion,
133
+ });
134
+ if (!result.success) {
135
+ console.error(chalk.red('Failed to fetch config from vault:'), result.error);
136
+ console.error(chalk.yellow('Hint: Ensure the vault server is reachable and your API key is valid.'));
137
+ logger.error({ error: result.error }, 'Failed to fetch config from vault');
138
+ process.exit(1);
139
+ }
140
+ if (result.config) {
141
+ // Merge vault config with local auth (keep local API key)
142
+ config = {
143
+ ...result.config,
144
+ auth: config.auth, // Keep local auth
145
+ agentId: config.agentId, // Keep local agent ID
146
+ };
147
+ // Update in-memory config for daemon (don't persist to disk)
148
+ setConfigInMemory(config);
149
+ console.log(chalk.green(`Config fetched from vault (version ${result.version})`));
150
+ logger.info({
151
+ version: result.version,
152
+ targets: config.targets?.length ?? 0,
153
+ secretTargets: config.secretTargets?.length ?? 0,
154
+ plugins: config.plugins?.length ?? 0,
155
+ }, 'Config loaded from vault');
156
+ }
157
+ else if (!result.modified) {
158
+ console.log(chalk.gray('Config unchanged (using cached version)'));
159
+ logger.debug({ version: result.version }, 'Config not modified');
160
+ }
161
+ }
88
162
  const targets = getTargets();
89
163
  const secretTargets = getSecretTargets();
90
164
  // Build exec config from CLI options or config file
@@ -178,6 +252,9 @@ Examples:
178
252
  console.log();
179
253
  console.log(` Vault: ${config.vaultUrl}`);
180
254
  console.log(` Tenant: ${config.tenantId}`);
255
+ if (isConfigFromVaultEnabled(config)) {
256
+ console.log(` Config: ${chalk.cyan('from vault')} (version ${config.configVersion ?? 0})`);
257
+ }
181
258
  console.log(` Certs: ${targets.length} certificate(s)`);
182
259
  console.log(` Secrets: ${secretTargets.length} secret(s)`);
183
260
  console.log(` Poll: every ${config.pollInterval ?? 3600}s`);
@@ -307,6 +384,7 @@ Examples:
307
384
  exec: execConfig,
308
385
  pluginAutoUpdateService,
309
386
  npmAutoUpdateService: autoUpdateService,
387
+ configFromVault: isConfigFromVaultEnabled(config),
310
388
  });
311
389
  }
312
390
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { AgentConfig } from '../config/types.js';
2
+ /**
3
+ * Registration response from vault
4
+ */
5
+ export interface RegistrationResult {
6
+ apiKey: string;
7
+ agentId: string;
8
+ managedKeyName: string | null;
9
+ tenantId: string;
10
+ hostConfigId: string;
11
+ configVersion: number;
12
+ }
13
+ /**
14
+ * Exchange bootstrap token for API key via registration endpoint.
15
+ *
16
+ * This is called on first startup when the config contains a bootstrapToken
17
+ * but no apiKey. The token is exchanged for an API key which is then
18
+ * persisted to the config file.
19
+ *
20
+ * @param config - Agent config with bootstrapToken
21
+ * @returns Registration result with API key and agent info
22
+ * @throws Error if registration fails
23
+ */
24
+ export declare function exchangeBootstrapToken(config: AgentConfig): Promise<RegistrationResult>;
25
+ /**
26
+ * Check if the config needs bootstrap registration
27
+ */
28
+ export declare function needsBootstrapRegistration(config: AgentConfig): boolean;
29
+ /**
30
+ * Update config with registration result
31
+ * Returns a new config object (does not mutate input)
32
+ */
33
+ export declare function applyRegistrationResult(config: AgentConfig, result: RegistrationResult): AgentConfig;
34
+ //# sourceMappingURL=bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/bootstrap.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA2BtD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAgBD;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAoE7B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAGvE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,kBAAkB,GACzB,WAAW,CAiBb"}
@@ -0,0 +1,152 @@
1
+ // Path: src/lib/auth/bootstrap.ts
2
+ // Bootstrap token exchange for one-command agent deployment
3
+ import os from 'node:os';
4
+ import https from 'node:https';
5
+ import { readFileSync } from 'node:fs';
6
+ import { dirname, join } from 'node:path';
7
+ import { fileURLToPath } from 'node:url';
8
+ import { logger } from '../logger.js';
9
+ // Get version from package.json
10
+ const __filename = fileURLToPath(import.meta.url);
11
+ const __dirname = dirname(__filename);
12
+ const packageJsonPath = join(__dirname, '..', '..', '..', 'package.json');
13
+ let VERSION = '0.0.0';
14
+ try {
15
+ const pkg = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
16
+ VERSION = pkg.version ?? '0.0.0';
17
+ }
18
+ catch {
19
+ // Ignore error, use default version
20
+ }
21
+ /**
22
+ * Gather system information for registration
23
+ */
24
+ function gatherSystemInfo() {
25
+ return {
26
+ platform: os.platform(),
27
+ arch: os.arch(),
28
+ nodeVersion: process.version,
29
+ agentVersion: VERSION,
30
+ cpus: os.cpus().length,
31
+ memory: os.totalmem(),
32
+ };
33
+ }
34
+ /**
35
+ * Exchange bootstrap token for API key via registration endpoint.
36
+ *
37
+ * This is called on first startup when the config contains a bootstrapToken
38
+ * but no apiKey. The token is exchanged for an API key which is then
39
+ * persisted to the config file.
40
+ *
41
+ * @param config - Agent config with bootstrapToken
42
+ * @returns Registration result with API key and agent info
43
+ * @throws Error if registration fails
44
+ */
45
+ export async function exchangeBootstrapToken(config) {
46
+ const { vaultUrl, hostname, auth, insecure } = config;
47
+ if (!auth?.bootstrapToken) {
48
+ throw new Error('No bootstrap token in config');
49
+ }
50
+ if (!hostname) {
51
+ throw new Error('Hostname is required for bootstrap registration');
52
+ }
53
+ const systemInfo = gatherSystemInfo();
54
+ logger.info({ hostname, vaultUrl }, 'Registering agent with vault server...');
55
+ const url = new URL(`/v1/hosts/${encodeURIComponent(hostname)}/register`, vaultUrl);
56
+ const requestBody = JSON.stringify({
57
+ hostname,
58
+ systemInfo,
59
+ });
60
+ // Prepare request options
61
+ const requestOptions = {
62
+ method: 'POST',
63
+ headers: {
64
+ 'Content-Type': 'application/json',
65
+ 'Content-Length': Buffer.byteLength(requestBody),
66
+ 'Authorization': `Bearer ${auth.bootstrapToken}`,
67
+ 'User-Agent': `zn-vault-agent/${VERSION}`,
68
+ },
69
+ // Handle self-signed certs in dev environments
70
+ rejectUnauthorized: !insecure,
71
+ };
72
+ const response = await makeHttpsRequest(url, requestOptions, requestBody);
73
+ if (response.statusCode !== 200) {
74
+ let errorMessage = `Registration failed with status ${response.statusCode}`;
75
+ try {
76
+ const errorBody = JSON.parse(response.body);
77
+ if (errorBody.error) {
78
+ errorMessage = errorBody.error;
79
+ }
80
+ else if (errorBody.message) {
81
+ errorMessage = errorBody.message;
82
+ }
83
+ }
84
+ catch {
85
+ // Use status-based message
86
+ }
87
+ throw new Error(errorMessage);
88
+ }
89
+ const result = JSON.parse(response.body);
90
+ logger.info({
91
+ agentId: result.agentId,
92
+ tenantId: result.tenantId,
93
+ hostConfigId: result.hostConfigId,
94
+ managedKeyName: result.managedKeyName,
95
+ }, 'Agent registration successful');
96
+ return result;
97
+ }
98
+ /**
99
+ * Check if the config needs bootstrap registration
100
+ */
101
+ export function needsBootstrapRegistration(config) {
102
+ // Has bootstrap token but no API key
103
+ return !!(config.auth?.bootstrapToken && !config.auth?.apiKey);
104
+ }
105
+ /**
106
+ * Update config with registration result
107
+ * Returns a new config object (does not mutate input)
108
+ */
109
+ export function applyRegistrationResult(config, result) {
110
+ return {
111
+ ...config,
112
+ tenantId: result.tenantId,
113
+ auth: {
114
+ // Copy any existing auth fields (except bootstrapToken)
115
+ ...Object.fromEntries(Object.entries(config.auth ?? {}).filter(([key]) => key !== 'bootstrapToken')),
116
+ // Set the new API key
117
+ apiKey: result.apiKey,
118
+ },
119
+ agentId: result.agentId,
120
+ hostConfigId: result.hostConfigId,
121
+ configVersion: result.configVersion,
122
+ managedKeyName: result.managedKeyName ?? undefined,
123
+ };
124
+ }
125
+ /**
126
+ * Simple HTTPS request helper (no external dependencies)
127
+ */
128
+ function makeHttpsRequest(url, options, body) {
129
+ return new Promise((resolve, reject) => {
130
+ const req = https.request(url, options, (res) => {
131
+ const chunks = [];
132
+ res.on('data', (chunk) => {
133
+ chunks.push(chunk);
134
+ });
135
+ res.on('end', () => {
136
+ const responseBody = Buffer.concat(chunks).toString('utf8');
137
+ resolve({
138
+ statusCode: res.statusCode ?? 500,
139
+ body: responseBody,
140
+ });
141
+ });
142
+ });
143
+ req.on('error', (error) => {
144
+ reject(error);
145
+ });
146
+ if (body) {
147
+ req.write(body);
148
+ }
149
+ req.end();
150
+ });
151
+ }
152
+ //# sourceMappingURL=bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../src/lib/auth/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  export type { CertTarget, SecretTarget, ExecConfig, ManagedKeyConfig, AgentConfig, ExecSecret, } from './types.js';
2
2
  export { DEFAULT_EXEC_CONFIG, EMPTY_CONFIG } from './types.js';
3
- export { loadConfig, getConfig, isConfigured, getConfigPath } from './loader.js';
3
+ export { loadConfig, getConfig, isConfigured, getConfigPath, setConfigInMemory, clearConfigInMemory, isConfigInMemory, } from './loader.js';
4
4
  export { saveConfig, setConfig, updateApiKey } from './saver.js';
5
5
  export { addTarget, removeTarget, getTargets, updateTargetFingerprint, addSecretTarget, removeSecretTarget, getSecretTargets, updateSecretTargetVersion, } from './targets.js';
6
6
  export { updateManagedKey, isManagedKeyMode, syncManagedKeyFile, } from './managed-key.js';
7
+ export { fetchConfigFromVault, isConfigFromVaultEnabled, getMinimalConfigForVaultMode, type FetchConfigOptions, type FetchConfigResult, } from './vault-loader.js';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/config/index.ts"],"names":[],"mappings":"AAIA,YAAY,EACV,UAAU,EACV,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGjE,OAAO,EACL,SAAS,EACT,YAAY,EACZ,UAAU,EACV,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/config/index.ts"],"names":[],"mappings":"AAIA,YAAY,EACV,UAAU,EACV,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/D,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGjE,OAAO,EACL,SAAS,EACT,YAAY,EACZ,UAAU,EACV,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAC5B,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,GACvB,MAAM,mBAAmB,CAAC"}
@@ -2,11 +2,13 @@
2
2
  // Public API for configuration module
3
3
  export { DEFAULT_EXEC_CONFIG, EMPTY_CONFIG } from './types.js';
4
4
  // Loading
5
- export { loadConfig, getConfig, isConfigured, getConfigPath } from './loader.js';
5
+ export { loadConfig, getConfig, isConfigured, getConfigPath, setConfigInMemory, clearConfigInMemory, isConfigInMemory, } from './loader.js';
6
6
  // Saving
7
7
  export { saveConfig, setConfig, updateApiKey } from './saver.js';
8
8
  // Targets
9
9
  export { addTarget, removeTarget, getTargets, updateTargetFingerprint, addSecretTarget, removeSecretTarget, getSecretTargets, updateSecretTargetVersion, } from './targets.js';
10
10
  // Managed key
11
11
  export { updateManagedKey, isManagedKeyMode, syncManagedKeyFile, } from './managed-key.js';
12
+ // Vault config loader (config-from-vault mode)
13
+ export { fetchConfigFromVault, isConfigFromVaultEnabled, getMinimalConfigForVaultMode, } from './vault-loader.js';
12
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/config/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AAYtC,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/D,UAAU;AACV,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjF,SAAS;AACT,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEjE,UAAU;AACV,OAAO,EACL,SAAS,EACT,YAAY,EACZ,UAAU,EACV,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAEtB,cAAc;AACd,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/config/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,sCAAsC;AAYtC,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/D,UAAU;AACV,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,SAAS;AACT,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEjE,UAAU;AACV,OAAO,EACL,SAAS,EACT,YAAY,EACZ,UAAU,EACV,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAEtB,cAAc;AACd,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,+CAA+C;AAC/C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,GAG7B,MAAM,mBAAmB,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import type { AgentConfig } from './types.js';
2
2
  /**
3
- * Load configuration from file or user config, with environment variable overrides
3
+ * Load configuration from file or user config, with environment variable overrides.
4
+ * If setConfigInMemory() has been called (config-from-vault mode), returns the
5
+ * in-memory config instead of loading from disk.
4
6
  *
5
7
  * Environment variables:
6
8
  * - ZNVAULT_URL: Override vault URL
@@ -17,11 +19,27 @@ export declare function loadConfig(): AgentConfig;
17
19
  export declare function getConfig<K extends keyof AgentConfig>(key: K): AgentConfig[K];
18
20
  /**
19
21
  * Check if agent is configured
20
- * Considers both config file and environment variables
22
+ * Considers both config file and environment variables.
23
+ * Bootstrap tokens count as valid auth (will be exchanged for API key on startup).
21
24
  */
22
25
  export declare function isConfigured(): boolean;
23
26
  /**
24
27
  * Get config file path for display
25
28
  */
26
29
  export declare function getConfigPath(): string;
30
+ /**
31
+ * Set the in-memory config for config-from-vault mode.
32
+ * When set, loadConfig() returns this instead of loading from disk.
33
+ * This allows the agent to run with config fetched from vault without
34
+ * persisting it to disk.
35
+ */
36
+ export declare function setConfigInMemory(config: AgentConfig): void;
37
+ /**
38
+ * Clear the in-memory config, reverting to disk-based config loading.
39
+ */
40
+ export declare function clearConfigInMemory(): void;
41
+ /**
42
+ * Check if in-memory config is currently active.
43
+ */
44
+ export declare function isConfigInMemory(): boolean;
27
45
  //# sourceMappingURL=loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/lib/config/loader.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAI9C;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,IAAI,WAAW,CAwDxC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAG7E;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAQtC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAMtC"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/lib/config/loader.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAU9C;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,IAAI,WAAW,CAiExC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAG7E;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAStC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAMtC;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAG3D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAG1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C"}
@@ -5,7 +5,14 @@ import { configLogger as log } from '../logger.js';
5
5
  import { EMPTY_CONFIG } from './types.js';
6
6
  import { getConfigFile, userConfig } from './storage.js';
7
7
  /**
8
- * Load configuration from file or user config, with environment variable overrides
8
+ * In-memory config cache for config-from-vault mode.
9
+ * When set, loadConfig() returns this instead of loading from disk.
10
+ */
11
+ let inMemoryConfig = null;
12
+ /**
13
+ * Load configuration from file or user config, with environment variable overrides.
14
+ * If setConfigInMemory() has been called (config-from-vault mode), returns the
15
+ * in-memory config instead of loading from disk.
9
16
  *
10
17
  * Environment variables:
11
18
  * - ZNVAULT_URL: Override vault URL
@@ -16,6 +23,14 @@ import { getConfigFile, userConfig } from './storage.js';
16
23
  * - ZNVAULT_INSECURE: Set to "true" to skip TLS verification
17
24
  */
18
25
  export function loadConfig() {
26
+ // Return in-memory config if set (config-from-vault mode)
27
+ if (inMemoryConfig !== null) {
28
+ // Still apply env var overrides for auth (important for API key rotation)
29
+ if (process.env.ZNVAULT_API_KEY) {
30
+ inMemoryConfig.auth.apiKey = process.env.ZNVAULT_API_KEY;
31
+ }
32
+ return inMemoryConfig;
33
+ }
19
34
  let config;
20
35
  // Try system config first
21
36
  const configFile = getConfigFile();
@@ -81,14 +96,16 @@ export function getConfig(key) {
81
96
  }
82
97
  /**
83
98
  * Check if agent is configured
84
- * Considers both config file and environment variables
99
+ * Considers both config file and environment variables.
100
+ * Bootstrap tokens count as valid auth (will be exchanged for API key on startup).
85
101
  */
86
102
  export function isConfigured() {
87
103
  const config = loadConfig();
88
104
  const hasAuth = config.auth.apiKey !== undefined ||
89
105
  process.env.ZNVAULT_API_KEY !== undefined ||
90
106
  config.auth.username !== undefined ||
91
- process.env.ZNVAULT_USERNAME !== undefined;
107
+ process.env.ZNVAULT_USERNAME !== undefined ||
108
+ config.auth.bootstrapToken !== undefined; // Bootstrap token counts as pending auth
92
109
  return config.vaultUrl !== '' && config.tenantId !== '' && hasAuth;
93
110
  }
94
111
  /**
@@ -101,4 +118,27 @@ export function getConfigPath() {
101
118
  }
102
119
  return userConfig.path;
103
120
  }
121
+ /**
122
+ * Set the in-memory config for config-from-vault mode.
123
+ * When set, loadConfig() returns this instead of loading from disk.
124
+ * This allows the agent to run with config fetched from vault without
125
+ * persisting it to disk.
126
+ */
127
+ export function setConfigInMemory(config) {
128
+ inMemoryConfig = config;
129
+ log.debug({ configFromVault: config.configFromVault, version: config.configVersion }, 'In-memory config set');
130
+ }
131
+ /**
132
+ * Clear the in-memory config, reverting to disk-based config loading.
133
+ */
134
+ export function clearConfigInMemory() {
135
+ inMemoryConfig = null;
136
+ log.debug('In-memory config cleared');
137
+ }
138
+ /**
139
+ * Check if in-memory config is currently active.
140
+ */
141
+ export function isConfigInMemory() {
142
+ return inMemoryConfig !== null;
143
+ }
104
144
  //# sourceMappingURL=loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/lib/config/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/lib/config/loader.ts"],"names":[],"mappings":"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"}
@@ -118,8 +118,8 @@ export interface ManagedKeyConfig {
118
118
  export interface AgentConfig {
119
119
  /** Vault server URL */
120
120
  vaultUrl: string;
121
- /** Tenant ID */
122
- tenantId: string;
121
+ /** Tenant ID (can be omitted if using configFromVault) */
122
+ tenantId?: string;
123
123
  /** Authentication */
124
124
  auth: {
125
125
  /** API key (current value - updated automatically for managed keys) */
@@ -127,7 +127,16 @@ export interface AgentConfig {
127
127
  /** Or username/password */
128
128
  username?: string;
129
129
  password?: string;
130
+ /**
131
+ * Bootstrap token for initial registration (one-time use).
132
+ * When present, agent will call /v1/hosts/:hostname/register to exchange
133
+ * the token for an API key on first startup.
134
+ * After successful registration, this field is removed and apiKey is set.
135
+ */
136
+ bootstrapToken?: string;
130
137
  };
138
+ /** Hostname for config-from-vault mode (used in bootstrap registration) */
139
+ hostname?: string;
131
140
  /** Managed API key configuration (enables auto-rotation) */
132
141
  managedKey?: ManagedKeyConfig;
133
142
  /** Skip TLS verification */
@@ -146,6 +155,20 @@ export interface AgentConfig {
146
155
  verbose?: boolean;
147
156
  /** Plugin configurations */
148
157
  plugins?: PluginConfig[];
158
+ /**
159
+ * Pull config from vault at startup instead of using local config file.
160
+ * When true, only vaultUrl, auth, and configFromVault fields are used locally.
161
+ * All other config (targets, plugins, etc.) comes from the vault server.
162
+ */
163
+ configFromVault?: boolean;
164
+ /** Host config ID assigned during bootstrap (set automatically) */
165
+ hostConfigId?: string;
166
+ /** Last known config version from vault (for change detection) */
167
+ configVersion?: number;
168
+ /** Managed key name for this host (used with config-from-vault) */
169
+ managedKeyName?: string;
170
+ /** Agent ID assigned during registration (set automatically) */
171
+ agentId?: string;
149
172
  }
150
173
  /**
151
174
  * Default empty configuration
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/config/types.ts"],"names":[],"mappings":"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"}
@@ -22,5 +22,6 @@ export const EMPTY_CONFIG = {
22
22
  secretTargets: [],
23
23
  pollInterval: 3600,
24
24
  verbose: false,
25
+ configFromVault: false,
25
26
  };
26
27
  //# sourceMappingURL=types.js.map