@nac3/forge-cli 0.2.0-alpha.3 → 0.2.0-alpha.30

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 (162) hide show
  1. package/dist/bin/yf.d.ts.map +1 -1
  2. package/dist/bin/yf.js +27 -0
  3. package/dist/bin/yf.js.map +1 -1
  4. package/dist/chat/claude.d.ts +22 -15
  5. package/dist/chat/claude.d.ts.map +1 -1
  6. package/dist/chat/claude.js +75 -22
  7. package/dist/chat/claude.js.map +1 -1
  8. package/dist/chat/panel.d.ts.map +1 -1
  9. package/dist/chat/panel.js +692 -17
  10. package/dist/chat/panel.js.map +1 -1
  11. package/dist/chat/server.js +630 -32
  12. package/dist/chat/server.js.map +1 -1
  13. package/dist/chat/spec_extract.d.ts.map +1 -1
  14. package/dist/chat/spec_extract.js +39 -0
  15. package/dist/chat/spec_extract.js.map +1 -1
  16. package/dist/chat/tools/audit_consumers.d.ts +66 -0
  17. package/dist/chat/tools/audit_consumers.d.ts.map +1 -0
  18. package/dist/chat/tools/audit_consumers.js +231 -0
  19. package/dist/chat/tools/audit_consumers.js.map +1 -0
  20. package/dist/chat/tools/git.js +4 -4
  21. package/dist/chat/tools/github.js +3 -3
  22. package/dist/chat/tools/lifecycle.js +3 -3
  23. package/dist/chat/tools/manual.js +1 -1
  24. package/dist/chat/tools/reader.js +8 -8
  25. package/dist/chat/tools/workflow.d.ts +45 -0
  26. package/dist/chat/tools/workflow.d.ts.map +1 -0
  27. package/dist/chat/tools/workflow.js +404 -0
  28. package/dist/chat/tools/workflow.js.map +1 -0
  29. package/dist/chat/tools.d.ts.map +1 -1
  30. package/dist/chat/tools.js +23 -4
  31. package/dist/chat/tools.js.map +1 -1
  32. package/dist/commands/approve.d.ts +32 -0
  33. package/dist/commands/approve.d.ts.map +1 -0
  34. package/dist/commands/approve.js +198 -0
  35. package/dist/commands/approve.js.map +1 -0
  36. package/dist/commands/block.d.ts +28 -0
  37. package/dist/commands/block.d.ts.map +1 -0
  38. package/dist/commands/block.js +189 -0
  39. package/dist/commands/block.js.map +1 -0
  40. package/dist/commands/bootstrap.d.ts +35 -0
  41. package/dist/commands/bootstrap.d.ts.map +1 -0
  42. package/dist/commands/bootstrap.js +205 -0
  43. package/dist/commands/bootstrap.js.map +1 -0
  44. package/dist/commands/chat.d.ts +3 -0
  45. package/dist/commands/chat.d.ts.map +1 -1
  46. package/dist/commands/chat.js +46 -1
  47. package/dist/commands/chat.js.map +1 -1
  48. package/dist/commands/clarify.d.ts +30 -0
  49. package/dist/commands/clarify.d.ts.map +1 -0
  50. package/dist/commands/clarify.js +671 -0
  51. package/dist/commands/clarify.js.map +1 -0
  52. package/dist/commands/discover.d.ts +30 -0
  53. package/dist/commands/discover.d.ts.map +1 -0
  54. package/dist/commands/discover.js +178 -0
  55. package/dist/commands/discover.js.map +1 -0
  56. package/dist/commands/doctor.js +94 -42
  57. package/dist/commands/doctor.js.map +1 -1
  58. package/dist/commands/keys_setup.d.ts +53 -0
  59. package/dist/commands/keys_setup.d.ts.map +1 -0
  60. package/dist/commands/keys_setup.js +487 -0
  61. package/dist/commands/keys_setup.js.map +1 -0
  62. package/dist/commands/legacy-audit.d.ts +34 -0
  63. package/dist/commands/legacy-audit.d.ts.map +1 -0
  64. package/dist/commands/legacy-audit.js +270 -0
  65. package/dist/commands/legacy-audit.js.map +1 -0
  66. package/dist/commands/license.d.ts.map +1 -1
  67. package/dist/commands/license.js +41 -0
  68. package/dist/commands/license.js.map +1 -1
  69. package/dist/commands/operate.d.ts +22 -0
  70. package/dist/commands/operate.d.ts.map +1 -0
  71. package/dist/commands/operate.js +523 -0
  72. package/dist/commands/operate.js.map +1 -0
  73. package/dist/commands/spec.d.ts +38 -0
  74. package/dist/commands/spec.d.ts.map +1 -0
  75. package/dist/commands/spec.js +256 -0
  76. package/dist/commands/spec.js.map +1 -0
  77. package/dist/commands/support.d.ts +22 -0
  78. package/dist/commands/support.d.ts.map +1 -0
  79. package/dist/commands/support.js +143 -0
  80. package/dist/commands/support.js.map +1 -0
  81. package/dist/commands/triage.d.ts +34 -0
  82. package/dist/commands/triage.d.ts.map +1 -0
  83. package/dist/commands/triage.js +228 -0
  84. package/dist/commands/triage.js.map +1 -0
  85. package/dist/commands/vault-inventory.d.ts +30 -0
  86. package/dist/commands/vault-inventory.d.ts.map +1 -0
  87. package/dist/commands/vault-inventory.js +214 -0
  88. package/dist/commands/vault-inventory.js.map +1 -0
  89. package/dist/commands/vault.d.ts.map +1 -1
  90. package/dist/commands/vault.js +5 -0
  91. package/dist/commands/vault.js.map +1 -1
  92. package/dist/commands/voice.js +1 -1
  93. package/dist/commands/voice.js.map +1 -1
  94. package/dist/commands/workflow-coverage.d.ts +30 -0
  95. package/dist/commands/workflow-coverage.d.ts.map +1 -0
  96. package/dist/commands/workflow-coverage.js +138 -0
  97. package/dist/commands/workflow-coverage.js.map +1 -0
  98. package/dist/core/keys_envelope.d.ts +13 -0
  99. package/dist/core/keys_envelope.d.ts.map +1 -1
  100. package/dist/core/keys_envelope.js.map +1 -1
  101. package/dist/deploy/adapter.d.ts +93 -0
  102. package/dist/deploy/adapter.d.ts.map +1 -0
  103. package/dist/deploy/adapter.js +42 -0
  104. package/dist/deploy/adapter.js.map +1 -0
  105. package/dist/deploy/aws_adapter.d.ts +28 -0
  106. package/dist/deploy/aws_adapter.d.ts.map +1 -0
  107. package/dist/deploy/aws_adapter.js +98 -0
  108. package/dist/deploy/aws_adapter.js.map +1 -0
  109. package/dist/deploy/cloudflare.d.ts +24 -0
  110. package/dist/deploy/cloudflare.d.ts.map +1 -0
  111. package/dist/deploy/cloudflare.js +169 -0
  112. package/dist/deploy/cloudflare.js.map +1 -0
  113. package/dist/license/hito4_client.d.ts +17 -1
  114. package/dist/license/hito4_client.d.ts.map +1 -1
  115. package/dist/license/hito4_client.js +71 -10
  116. package/dist/license/hito4_client.js.map +1 -1
  117. package/dist/license/index.d.ts.map +1 -1
  118. package/dist/license/index.js +7 -0
  119. package/dist/license/index.js.map +1 -1
  120. package/dist/license/sync.d.ts +54 -0
  121. package/dist/license/sync.d.ts.map +1 -0
  122. package/dist/license/sync.js +131 -0
  123. package/dist/license/sync.js.map +1 -0
  124. package/dist/support/reports.d.ts +31 -0
  125. package/dist/support/reports.d.ts.map +1 -0
  126. package/dist/support/reports.js +162 -0
  127. package/dist/support/reports.js.map +1 -0
  128. package/dist/telemetry/usage.d.ts +67 -0
  129. package/dist/telemetry/usage.d.ts.map +1 -0
  130. package/dist/telemetry/usage.js +208 -0
  131. package/dist/telemetry/usage.js.map +1 -0
  132. package/dist/version.d.ts +1 -1
  133. package/dist/version.d.ts.map +1 -1
  134. package/dist/version.js +1 -1
  135. package/dist/version.js.map +1 -1
  136. package/dist/voice/intents.d.ts +1 -1
  137. package/dist/voice/intents.js +0 -0
  138. package/dist/voice/providers/google.d.ts +9 -0
  139. package/dist/voice/providers/google.d.ts.map +1 -1
  140. package/dist/voice/providers/google.js +204 -28
  141. package/dist/voice/providers/google.js.map +1 -1
  142. package/dist/voice/router.d.ts +10 -0
  143. package/dist/voice/router.d.ts.map +1 -1
  144. package/dist/voice/router.js +39 -20
  145. package/dist/voice/router.js.map +1 -1
  146. package/dist/voice/types.d.ts +5 -2
  147. package/dist/voice/types.d.ts.map +1 -1
  148. package/dist/voice/types.js.map +1 -1
  149. package/dist/workflow/state.d.ts +190 -0
  150. package/dist/workflow/state.d.ts.map +1 -0
  151. package/dist/workflow/state.js +119 -0
  152. package/dist/workflow/state.js.map +1 -0
  153. package/package.json +13 -15
  154. package/templates/nextjs-app/README.md +48 -0
  155. package/templates/nextjs-app/next.config.js +8 -0
  156. package/templates/nextjs-app/package.json +33 -0
  157. package/templates/nextjs-app/src/app/globals.css +43 -0
  158. package/templates/nextjs-app/src/app/layout.tsx +29 -0
  159. package/templates/nextjs-app/src/app/page.tsx +63 -0
  160. package/templates/nextjs-app/src/nac/manifest.ts +36 -0
  161. package/templates/nextjs-app/tsconfig.json +21 -0
  162. package/templates/nextjs-app/yujin.forge.json +11 -0
@@ -0,0 +1,228 @@
1
+ /**
2
+ * `yf triage` -- Phase I step 1 of PRODUCT_WORKFLOW.md.
3
+ *
4
+ * Asks the user 5 questions, classifies the project into one of
5
+ * three complexity tiers (Simple / Medium / Full), and persists
6
+ * the decision to yujin.forge.json::workflow. The result drives
7
+ * which subsequent phases apply (see PRODUCT_WORKFLOW.md sec 1).
8
+ *
9
+ * Questions:
10
+ * 1. Output type (landing / blog / CRUD app / SaaS / regulated system)
11
+ * 2. Volumetria 12m (numeric: expected concurrent users at 12 months)
12
+ * 3. Industry context (general / health / finance / education / government)
13
+ * 4. Region (LATAM / US / EU / global)
14
+ * 5. Team maintaining (solo / pair / team)
15
+ *
16
+ * Classification rules:
17
+ * Simple = output in {landing, blog, demo} OR volumetria < 50 AND
18
+ * industry = general AND team = solo
19
+ * Full = industry in {health, finance, government} OR volumetria > 5000
20
+ * OR output = regulated_system OR (region = EU AND volumetria > 100)
21
+ * Medium = everything else
22
+ *
23
+ * User can override the auto-tier in the final confirmation.
24
+ *
25
+ * ASCII-only.
26
+ */
27
+ import path from 'node:path';
28
+ import prompts from 'prompts';
29
+ import { c, header } from '../ui/colors.js';
30
+ import { writeWorkflow, readWorkflow, } from '../workflow/state.js';
31
+ function classify(a) {
32
+ const simpleOutputs = ['landing', 'blog'];
33
+ const regulated = ['health', 'finance', 'government'];
34
+ if (simpleOutputs.includes(a.output)
35
+ || (a.volumetria < 50 && a.industry === 'general' && a.team === 'solo')) {
36
+ return {
37
+ tier: 'simple',
38
+ reason: a.output === 'landing' ? 'landing page'
39
+ : a.output === 'blog' ? 'blog'
40
+ : 'small single-user project (< 50 users / 12m, general industry, solo team)',
41
+ };
42
+ }
43
+ if (regulated.includes(a.industry)
44
+ || a.volumetria > 5000
45
+ || a.output === 'regulated'
46
+ || (a.region === 'eu' && a.volumetria > 100)) {
47
+ const reasons = [];
48
+ if (regulated.includes(a.industry))
49
+ reasons.push('regulated industry (' + a.industry + ')');
50
+ if (a.volumetria > 5000)
51
+ reasons.push('volumetria > 5000');
52
+ if (a.output === 'regulated')
53
+ reasons.push('output = regulated system');
54
+ if (a.region === 'eu' && a.volumetria > 100)
55
+ reasons.push('EU + > 100 users (GDPR compliance)');
56
+ return {
57
+ tier: 'full',
58
+ reason: reasons.join(' + '),
59
+ };
60
+ }
61
+ return {
62
+ tier: 'medium',
63
+ reason: 'CRUD/SaaS app with moderate volumetria, non-regulated industry',
64
+ };
65
+ }
66
+ function describeAlcance(tier) {
67
+ switch (tier) {
68
+ case 'simple':
69
+ return [
70
+ ' Phase I (intake) -> Phase II step 9 (blocks) -> Phase V (build) -> Phase VI (ship)',
71
+ ' Skips: full clarification rounds, RFP+arch+design docs, approval gate',
72
+ ].join('\n');
73
+ case 'medium':
74
+ return [
75
+ ' Phase I + Phase II + Phase III (compact) + Phase IV gate + Phase V + Phase VI',
76
+ ' Light RFP+arch+design; explicit approval before build starts',
77
+ ].join('\n');
78
+ case 'full':
79
+ return [
80
+ ' ALL 18 steps, all 4 NFR rounds, full RFP+arch+design,',
81
+ ' hard approval gate, NAC-3 compliance auditing per block',
82
+ ].join('\n');
83
+ }
84
+ }
85
+ export async function runTriage(opts) {
86
+ header('Yujin Forge -- triage');
87
+ console.log('');
88
+ const projectRoot = opts.cwd ? path.resolve(opts.cwd) : process.cwd();
89
+ const existing = await readWorkflow(projectRoot);
90
+ if (existing.tier && !opts.yes) {
91
+ console.log(c.dim('Triage previo: ') + c.brand(existing.tier)
92
+ + c.dim(' (' + (existing.tier_reason ?? 'no reason') + ')'));
93
+ console.log(c.dim('Para volver a clasificar, corre `yf triage --yes`.'));
94
+ return;
95
+ }
96
+ console.log(c.dim('5 preguntas para clasificar la complejidad del proyecto.'));
97
+ console.log(c.dim('La clasificacion determina que fases del workflow se aplican.'));
98
+ console.log('');
99
+ const answers = await prompts([
100
+ {
101
+ type: 'select',
102
+ name: 'output',
103
+ message: 'Tipo de output:',
104
+ choices: [
105
+ { title: 'Landing page', value: 'landing' },
106
+ { title: 'Blog / sitio de contenido', value: 'blog' },
107
+ { title: 'App CRUD con auth (multi-user)', value: 'crud' },
108
+ { title: 'SaaS multi-tenant', value: 'saas' },
109
+ { title: 'Sistema regulado / compliance critica', value: 'regulated' },
110
+ ],
111
+ },
112
+ {
113
+ type: 'number',
114
+ name: 'volumetria',
115
+ message: 'Usuarios concurrentes esperados a 12 meses (entero):',
116
+ initial: 100,
117
+ min: 0,
118
+ },
119
+ {
120
+ type: 'select',
121
+ name: 'industry',
122
+ message: 'Industria:',
123
+ choices: [
124
+ { title: 'General', value: 'general' },
125
+ { title: 'Salud (HIPAA / privacidad medica)', value: 'health' },
126
+ { title: 'Finanzas (PCI / regulacion bancaria)', value: 'finance' },
127
+ { title: 'Educacion', value: 'education' },
128
+ { title: 'Gobierno / sector publico', value: 'government' },
129
+ ],
130
+ },
131
+ {
132
+ type: 'select',
133
+ name: 'region',
134
+ message: 'Region de usuarios:',
135
+ choices: [
136
+ { title: 'LATAM', value: 'latam' },
137
+ { title: 'US', value: 'us' },
138
+ { title: 'EU (aplican GDPR)', value: 'eu' },
139
+ { title: 'Global', value: 'global' },
140
+ ],
141
+ },
142
+ {
143
+ type: 'select',
144
+ name: 'team',
145
+ message: 'Equipo que mantiene:',
146
+ choices: [
147
+ { title: 'Solo (vos)', value: 'solo' },
148
+ { title: 'En pareja (2)', value: 'pair' },
149
+ { title: 'Equipo (3 o mas)', value: 'team' },
150
+ ],
151
+ },
152
+ ]);
153
+ if (!answers.output || answers.volumetria === undefined || !answers.industry
154
+ || !answers.region || !answers.team) {
155
+ console.log(c.warn('Triage abortado (faltan respuestas).'));
156
+ return;
157
+ }
158
+ const { tier, reason } = classify(answers);
159
+ console.log('');
160
+ console.log(c.brand('Tier propuesto: ') + c.brand(tier.toUpperCase()));
161
+ console.log(c.dim(' Razon: ') + reason);
162
+ console.log('');
163
+ console.log(c.brand('Alcance del workflow para este tier:'));
164
+ console.log(describeAlcance(tier));
165
+ console.log('');
166
+ const confirm = await prompts({
167
+ type: 'select',
168
+ name: 'choice',
169
+ message: 'Confirmar tier?',
170
+ choices: [
171
+ { title: 'Confirmar ' + tier, value: 'confirm' },
172
+ { title: 'Override a SIMPLE (forzar workflow minimo)', value: 'simple' },
173
+ { title: 'Override a MEDIUM', value: 'medium' },
174
+ { title: 'Override a FULL (forzar workflow completo)', value: 'full' },
175
+ { title: 'Cancelar', value: 'cancel' },
176
+ ],
177
+ });
178
+ let finalTier;
179
+ let finalReason;
180
+ switch (confirm.choice) {
181
+ case 'confirm':
182
+ finalTier = tier;
183
+ finalReason = reason;
184
+ break;
185
+ case 'simple':
186
+ finalTier = 'simple';
187
+ finalReason = 'user override after auto: ' + tier;
188
+ break;
189
+ case 'medium':
190
+ finalTier = 'medium';
191
+ finalReason = 'user override after auto: ' + tier;
192
+ break;
193
+ case 'full':
194
+ finalTier = 'full';
195
+ finalReason = 'user override after auto: ' + tier;
196
+ break;
197
+ default:
198
+ console.log(c.warn('Triage cancelado.'));
199
+ return;
200
+ }
201
+ await writeWorkflow(projectRoot, {
202
+ tier: finalTier,
203
+ tier_reason: finalReason,
204
+ tier_decided_at: new Date().toISOString(),
205
+ });
206
+ console.log('');
207
+ console.log(c.success('Triage persistido. Tier: ' + c.brand(finalTier)));
208
+ console.log(c.dim(' Estado guardado en yujin.forge.json'));
209
+ console.log('');
210
+ console.log(c.dim('Siguiente paso: ') + c.code('yf discover'));
211
+ }
212
+ export function registerTriageCommand(program) {
213
+ program
214
+ .command('triage')
215
+ .description('Phase I step 1: classify project complexity (Simple / Medium / Full).')
216
+ .option('--cwd <path>', 'project root (default: current directory)')
217
+ .option('--yes', 'overwrite a prior triage decision without prompting')
218
+ .action(async (opts) => {
219
+ try {
220
+ await runTriage(opts);
221
+ }
222
+ catch (err) {
223
+ console.error(c.error(err instanceof Error ? err.message : String(err)));
224
+ process.exitCode = 1;
225
+ }
226
+ });
227
+ }
228
+ //# sourceMappingURL=triage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"triage.js","sourceRoot":"","sources":["../../src/commands/triage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * `yf vault inventory` -- Phase I step 2 of PRODUCT_WORKFLOW.md.
3
+ *
4
+ * Walks the 13 credential families the workflow defines and per
5
+ * each asks the user "needed for this project?". Per-family
6
+ * status persists to workflow.vault_inventory.families. Families
7
+ * marked `skipped` become deferred debt the deploy step (16)
8
+ * surfaces back.
9
+ *
10
+ * Differs from `yf vault list`: that one shows what credentials
11
+ * are PRESENT in the vault today. This one captures what the
12
+ * project will NEED, marked per-family with one of:
13
+ *
14
+ * configured = at least one slot of this family is already
15
+ * in the vault OR provider_keys.json
16
+ * skipped = user marked "not needed for this project" or
17
+ * "deal with later"
18
+ * unknown = not asked yet (the default until inventory runs)
19
+ *
20
+ * Wired into the workflow gate at step 16 (`yf deploy guided`).
21
+ *
22
+ * ASCII-only.
23
+ */
24
+ import type { Command } from 'commander';
25
+ export interface VaultInventoryOptions {
26
+ cwd?: string;
27
+ }
28
+ export declare function runVaultInventory(opts: VaultInventoryOptions): Promise<void>;
29
+ export declare function registerVaultInventoryCommand(vaultProgram: Command): void;
30
+ //# sourceMappingURL=vault-inventory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault-inventory.d.ts","sourceRoot":"","sources":["../../src/commands/vault-inventory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYzC,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAmHD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuElF;AAED,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,OAAO,GAAG,IAAI,CAYzE"}
@@ -0,0 +1,214 @@
1
+ /**
2
+ * `yf vault inventory` -- Phase I step 2 of PRODUCT_WORKFLOW.md.
3
+ *
4
+ * Walks the 13 credential families the workflow defines and per
5
+ * each asks the user "needed for this project?". Per-family
6
+ * status persists to workflow.vault_inventory.families. Families
7
+ * marked `skipped` become deferred debt the deploy step (16)
8
+ * surfaces back.
9
+ *
10
+ * Differs from `yf vault list`: that one shows what credentials
11
+ * are PRESENT in the vault today. This one captures what the
12
+ * project will NEED, marked per-family with one of:
13
+ *
14
+ * configured = at least one slot of this family is already
15
+ * in the vault OR provider_keys.json
16
+ * skipped = user marked "not needed for this project" or
17
+ * "deal with later"
18
+ * unknown = not asked yet (the default until inventory runs)
19
+ *
20
+ * Wired into the workflow gate at step 16 (`yf deploy guided`).
21
+ *
22
+ * ASCII-only.
23
+ */
24
+ import path from 'node:path';
25
+ import { promises as fs } from 'node:fs';
26
+ import prompts from 'prompts';
27
+ import { c, header } from '../ui/colors.js';
28
+ import { Vault } from '../vault/store.js';
29
+ import { configDir } from '../license/index.js';
30
+ import { readWorkflow, patchWorkflowGroup, } from '../workflow/state.js';
31
+ const FAMILIES = [
32
+ {
33
+ id: 'brain',
34
+ label: 'Brain (LLM)',
35
+ question: 'El proyecto va a hacer llamadas a un LLM (Claude/GPT/Gemini/DeepSeek)?',
36
+ slot_names: ['anthropic', 'openai_api_key', 'google_ai_api_key', 'deepseek_api_key'],
37
+ byok_keys: ['anthropic_api_key', 'openai_api_key', 'google_ai_api_key', 'deepseek_api_key'],
38
+ },
39
+ {
40
+ id: 'voice',
41
+ label: 'Voice (STT + TTS)',
42
+ question: 'Va a usar voz (entrada por mic + respuesta por audio)?',
43
+ slot_names: ['google_voice', 'elevenlabs_api_key'],
44
+ byok_keys: ['google_stt_key', 'google_tts_key', 'elevenlabs_api_key'],
45
+ },
46
+ {
47
+ id: 'repos',
48
+ label: 'Repos (GitHub / GitLab / Bitbucket)',
49
+ question: 'Necesita acceso a un repo remoto para push / clone / read?',
50
+ slot_names: ['github_token', 'gitlab_token', 'bitbucket_token'],
51
+ },
52
+ {
53
+ id: 'cicd',
54
+ label: 'CI/CD pipeline',
55
+ question: 'Va a deployar via GitHub Actions / CircleCI / Vercel / Netlify?',
56
+ slot_names: ['github_actions_token', 'circleci_token', 'vercel_token', 'netlify_token'],
57
+ },
58
+ {
59
+ id: 'cloud',
60
+ label: 'Cloud provider',
61
+ question: 'El backend va a correr en AWS / GCP / Azure?',
62
+ slot_names: ['aws_access_key_id', 'aws_secret_access_key', 'gcp_service_account', 'azure_service_principal'],
63
+ },
64
+ {
65
+ id: 'database',
66
+ label: 'Database',
67
+ question: 'Va a usar una BD managed (Postgres / MongoDB Atlas / Redis / PlanetScale)?',
68
+ slot_names: ['postgres_url', 'mongodb_atlas_uri', 'redis_url', 'planetscale_token'],
69
+ },
70
+ {
71
+ id: 'storage',
72
+ label: 'Object storage',
73
+ question: 'Va a guardar archivos en S3 / GCS / R2?',
74
+ slot_names: ['aws_s3_credentials', 'gcs_credentials', 'r2_credentials'],
75
+ },
76
+ {
77
+ id: 'monitoring',
78
+ label: 'Monitoring + observability',
79
+ question: 'Va a tener Sentry / Datadog / PostHog en produccion?',
80
+ slot_names: ['sentry_dsn', 'datadog_api_key', 'posthog_key'],
81
+ },
82
+ {
83
+ id: 'auth',
84
+ label: 'Auth provider',
85
+ question: 'Va a usar Auth0 / Clerk / Supabase para autenticacion?',
86
+ slot_names: ['auth0_credentials', 'clerk_secret', 'supabase_anon_key'],
87
+ },
88
+ {
89
+ id: 'payment',
90
+ label: 'Payment processor',
91
+ question: 'Va a cobrar a usuarios via Stripe / Polar / MercadoPago?',
92
+ slot_names: ['stripe_secret', 'polar_token', 'mercadopago_token'],
93
+ },
94
+ {
95
+ id: 'email',
96
+ label: 'Email delivery',
97
+ question: 'Va a mandar emails transaccionales via SendGrid / Mailgun / SES?',
98
+ slot_names: ['sendgrid_api_key', 'mailgun_api_key', 'ses_credentials'],
99
+ },
100
+ {
101
+ id: 'sms',
102
+ label: 'SMS / WhatsApp',
103
+ question: 'Va a mandar SMS o WhatsApp via Twilio / Vonage?',
104
+ slot_names: ['twilio_account_sid', 'twilio_auth_token', 'vonage_api_key'],
105
+ },
106
+ {
107
+ id: 'design',
108
+ label: 'Design (Figma)',
109
+ question: 'Vamos a leer disenios desde Figma?',
110
+ slot_names: ['figma_personal_access_token'],
111
+ },
112
+ ];
113
+ async function readProviderKeys() {
114
+ try {
115
+ const raw = await fs.readFile(path.join(configDir(), 'provider_keys.json'), 'utf-8');
116
+ const parsed = JSON.parse(raw);
117
+ return (parsed && typeof parsed === 'object') ? parsed : {};
118
+ }
119
+ catch {
120
+ return {};
121
+ }
122
+ }
123
+ async function isFamilyConfigured(f, vaultSlots, pk) {
124
+ for (const s of f.slot_names) {
125
+ if (vaultSlots.includes(s))
126
+ return true;
127
+ }
128
+ if (f.byok_keys) {
129
+ for (const k of f.byok_keys) {
130
+ if (typeof pk[k] === 'string' && pk[k].trim() !== '')
131
+ return true;
132
+ }
133
+ }
134
+ return false;
135
+ }
136
+ export async function runVaultInventory(opts) {
137
+ header('Yujin Forge -- vault inventory');
138
+ console.log('');
139
+ const projectRoot = opts.cwd ? path.resolve(opts.cwd) : process.cwd();
140
+ const wf = await readWorkflow(projectRoot);
141
+ if (!wf.intent && !wf.tier) {
142
+ console.log(c.warn('Sugerido correr primero ') + c.code('yf triage') + c.warn(' + ') + c.code('yf discover'));
143
+ console.log(c.warn('para que el inventory sepa que esperar. Pero corre solo igual.'));
144
+ console.log('');
145
+ }
146
+ /* Inspect the vault + provider_keys.json to seed defaults. */
147
+ let vaultSlots = [];
148
+ try {
149
+ const v = await Vault.open({ configDir: configDir() });
150
+ vaultSlots = v.list().map((s) => s.name);
151
+ }
152
+ catch { /* vault unavailable -- continue with empty list */ }
153
+ const pk = await readProviderKeys();
154
+ console.log(c.dim('13 familias de credenciales. Para cada una decis si tu proyecto'));
155
+ console.log(c.dim('la necesita. La respuesta se guarda; al hacer deploy mas adelante'));
156
+ console.log(c.dim('Forge te recuerda cuales quedan pendientes.'));
157
+ console.log('');
158
+ const inventory = {};
159
+ for (const f of FAMILIES) {
160
+ const already = await isFamilyConfigured(f, vaultSlots, pk);
161
+ if (already) {
162
+ console.log(c.success('[*] ') + c.brand(f.label) + c.dim(' (ya configurada)'));
163
+ inventory[f.id] = 'configured';
164
+ continue;
165
+ }
166
+ const r = await prompts({
167
+ type: 'select',
168
+ name: 'choice',
169
+ message: f.label + ' -- ' + f.question,
170
+ choices: [
171
+ { title: 'Si, voy a usar (cargar luego)', value: 'needed' },
172
+ { title: 'No, este proyecto no la necesita', value: 'skipped' },
173
+ { title: 'No se / lo decido despues', value: 'unknown' },
174
+ ],
175
+ });
176
+ if (!r.choice) {
177
+ console.log(c.warn('Inventory abortado.'));
178
+ return;
179
+ }
180
+ inventory[f.id] = r.choice === 'needed' ? 'configured' /* deferred-to-load */
181
+ : r.choice === 'skipped' ? 'skipped'
182
+ : 'unknown';
183
+ }
184
+ await patchWorkflowGroup(projectRoot, 'vault_inventory', {
185
+ ran_at: new Date().toISOString(),
186
+ families: inventory,
187
+ });
188
+ console.log('');
189
+ const needed = Object.entries(inventory).filter(([, v]) => v === 'configured').length;
190
+ const skipped = Object.entries(inventory).filter(([, v]) => v === 'skipped').length;
191
+ const unknown = Object.entries(inventory).filter(([, v]) => v === 'unknown').length;
192
+ console.log(c.success('Inventory guardado:'));
193
+ console.log(c.dim(' Configuradas / necesarias: ') + c.brand(String(needed)));
194
+ console.log(c.dim(' Saltadas (no aplica): ') + c.brand(String(skipped)));
195
+ console.log(c.dim(' Por decidir: ') + c.brand(String(unknown)));
196
+ console.log('');
197
+ console.log(c.dim('Para cargar credenciales: ') + c.code('yf vault set <slot>')
198
+ + c.dim(' o ') + c.code('yf keys setup'));
199
+ }
200
+ export function registerVaultInventoryCommand(vaultProgram) {
201
+ vaultProgram.command('inventory')
202
+ .description('Walk the 13 credential families and record which this project needs.')
203
+ .option('--cwd <path>', 'project root (default: current directory)')
204
+ .action(async (opts) => {
205
+ try {
206
+ await runVaultInventory(opts);
207
+ }
208
+ catch (err) {
209
+ console.error(c.error(err instanceof Error ? err.message : String(err)));
210
+ process.exitCode = 1;
211
+ }
212
+ });
213
+ }
214
+ //# sourceMappingURL=vault-inventory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault-inventory.js","sourceRoot":"","sources":["../../src/commands/vault-inventory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/commands/vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAezC,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgF3D"}
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../../src/commands/vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBzC,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqF3D"}
@@ -24,6 +24,7 @@ import prompts from 'prompts';
24
24
  import { c, header } from '../ui/colors.js';
25
25
  import { Vault } from '../vault/store.js';
26
26
  import { configDir } from '../license/index.js';
27
+ import { registerVaultInventoryCommand } from './vault-inventory.js';
27
28
  import { SLOT_CATALOG, SLOT_KINDS, lookupCatalog, catalogByKind, } from '../vault/catalog.js';
28
29
  import { promises as fsP } from 'node:fs';
29
30
  import path from 'node:path';
@@ -32,6 +33,10 @@ export function registerVaultCommand(program) {
32
33
  const root = program
33
34
  .command('vault')
34
35
  .description('Manage encrypted credentials (Anthropic, Whisper, ElevenLabs, GitHub, npm, etc).');
36
+ /* PRODUCT_WORKFLOW.md Phase I step 2 -- per-project credential
37
+ * needs inventory. Wired here so users discover it next to the
38
+ * other vault verbs. */
39
+ registerVaultInventoryCommand(root);
35
40
  root
36
41
  .command('set <slot>')
37
42
  .description('Set or overwrite a slot. Prompts for the value -- never passed as a CLI arg.')
@@ -1 +1 @@
1
- {"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/commands/vault.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/commands/vault.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { readVoiceConfig, writeVoiceConfig, matchConfiguredWakeWord } from '../voice/config.js';
2
2
  import { DEFAULT_WAKE_ALIASES, mergeAliases } from '../voice/wake.js';
3
- import { registerVoiceSetupCommand } from './voice_setup.js';
3
+ import { registerVoiceSetupCommand } from './keys_setup.js';
4
4
  function splitCsv(s) {
5
5
  return s.split(',').map((x) => x.trim()).filter((x) => x.length > 0);
6
6
  }