@cristiancorreau/forge 2.5.0 → 2.6.2
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.js +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +78 -10
- package/dist/commands/init.js.map +1 -1
- package/dist/tui/wizard.d.ts +3 -0
- package/dist/tui/wizard.d.ts.map +1 -0
- package/dist/tui/wizard.js +285 -0
- package/dist/tui/wizard.js.map +1 -0
- package/dist/ui/header.js +1 -1
- package/package.json +2 -1
package/dist/cli.js
CHANGED
|
@@ -4,7 +4,7 @@ import { audit } from './commands/audit.js';
|
|
|
4
4
|
import { generate } from './commands/generate.js';
|
|
5
5
|
import { validate } from './commands/validate.js';
|
|
6
6
|
import { doctor } from './commands/doctor.js';
|
|
7
|
-
const VERSION = '2.
|
|
7
|
+
const VERSION = '2.6.2';
|
|
8
8
|
const HELP = `forge v${VERSION} — Agentic development framework
|
|
9
9
|
|
|
10
10
|
Usage: forge <command> [options]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AA6PA,wBAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAwM1D"}
|
package/dist/commands/init.js
CHANGED
|
@@ -1,8 +1,49 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, writeFileSync, readFileSync, copyFileSync, readdirSync, statSync } from 'fs';
|
|
2
2
|
import { join } from 'path';
|
|
3
|
+
import { spawnSync } from 'child_process';
|
|
3
4
|
import { loadProjectYaml } from '../lib/yaml.js';
|
|
4
5
|
import { runWizard } from '../lib/wizard.js';
|
|
5
6
|
import { resolveForgeRoot } from '../lib/paths.js';
|
|
7
|
+
// OpenTUI panels require Bun runtime
|
|
8
|
+
const isBun = typeof globalThis.Bun !== 'undefined';
|
|
9
|
+
// Locate a usable `bun` binary: PATH first, then the standard install location.
|
|
10
|
+
function findBun() {
|
|
11
|
+
const candidates = [
|
|
12
|
+
'bun',
|
|
13
|
+
join(process.env.HOME ?? '', '.bun', 'bin', 'bun'),
|
|
14
|
+
'/opt/homebrew/bin/bun',
|
|
15
|
+
'/usr/local/bin/bun',
|
|
16
|
+
];
|
|
17
|
+
for (const bin of candidates) {
|
|
18
|
+
try {
|
|
19
|
+
const r = spawnSync(bin, ['--version'], { encoding: 'utf8', timeout: 2000 });
|
|
20
|
+
if (r.status === 0)
|
|
21
|
+
return bin;
|
|
22
|
+
}
|
|
23
|
+
catch { /* try next */ }
|
|
24
|
+
}
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
// If running under Node.js with a TTY, re-launch the CLI under Bun (if available)
|
|
28
|
+
// so the OpenTUI panel wizard can render. Returns without exiting if not possible.
|
|
29
|
+
function tryReLaunchWithBun(args) {
|
|
30
|
+
if (isBun)
|
|
31
|
+
return;
|
|
32
|
+
if (process.env.FORGE_NO_BUN === '1')
|
|
33
|
+
return; // explicit opt-out
|
|
34
|
+
if (!process.stdin.isTTY || !process.stdout.isTTY)
|
|
35
|
+
return; // panels need a real TTY
|
|
36
|
+
const bun = findBun();
|
|
37
|
+
if (!bun)
|
|
38
|
+
return; // Bun not installed → fall back to clack
|
|
39
|
+
// cli.js is one level up from dist/commands/init.js
|
|
40
|
+
const cliPath = new URL('../cli.js', import.meta.url).pathname;
|
|
41
|
+
const result = spawnSync(bun, [cliPath, 'init', ...args], {
|
|
42
|
+
stdio: 'inherit',
|
|
43
|
+
env: { ...process.env, FORGE_BUN_RELAUNCH: '1' },
|
|
44
|
+
});
|
|
45
|
+
process.exit(result.status ?? 0);
|
|
46
|
+
}
|
|
6
47
|
import { buildManifest, saveManifest } from '../lib/lock.js';
|
|
7
48
|
import { dim } from '../ui/colors.js';
|
|
8
49
|
import { printHeader, printSection, printDetected, printAgentList } from '../ui/header.js';
|
|
@@ -214,19 +255,49 @@ export async function init(args) {
|
|
|
214
255
|
const runtimeIdx = args.indexOf('--runtime');
|
|
215
256
|
const runtimeOverride = runtimeIdx !== -1 ? (args[runtimeIdx + 1] ?? null) : null;
|
|
216
257
|
const projectYamlPath = join(process.cwd(), 'project.yaml');
|
|
258
|
+
const hasProjectYaml = existsSync(projectYamlPath);
|
|
217
259
|
let config;
|
|
218
|
-
//
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
260
|
+
// The interactive wizard runs only when there's no project.yaml and we're not
|
|
261
|
+
// in dry-run. On Node.js with Bun installed, re-launch under Bun for the
|
|
262
|
+
// OpenTUI panel wizard; otherwise fall back to the @clack/prompts wizard.
|
|
263
|
+
if (!hasProjectYaml && !dryRun) {
|
|
264
|
+
tryReLaunchWithBun(args); // exits the process if it re-launches under Bun
|
|
265
|
+
}
|
|
266
|
+
// The OpenTUI wizard renders its own full-screen header. The static boxen
|
|
267
|
+
// header is only shown for the clack wizard, dry-run, and existing-config paths.
|
|
268
|
+
const usingOpenTUI = isBun && !hasProjectYaml && !dryRun;
|
|
269
|
+
if (!usingOpenTUI)
|
|
270
|
+
printHeader();
|
|
271
|
+
if (hasProjectYaml) {
|
|
272
|
+
config = loadProjectYaml(projectYamlPath);
|
|
273
|
+
}
|
|
274
|
+
else if (dryRun) {
|
|
275
|
+
// Dry-run without config: show what a default standard project would install
|
|
276
|
+
console.log(dim(' No project.yaml found — showing defaults for a "standard" project.') + '\n');
|
|
277
|
+
config = {
|
|
278
|
+
project: { name: 'My Project', slug: 'my-project', language: 'typescript', mode: 'standard', status: 'active' },
|
|
279
|
+
agents: { active: defaultAgentsForMode('standard'), compliance: [], profiles: [] },
|
|
280
|
+
runtimes: { active: [runtimeOverride ?? 'claude-code'] },
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
// Run interactive wizard — OpenTUI (Bun) or @clack/prompts (Node.js)
|
|
285
|
+
let result;
|
|
286
|
+
if (isBun) {
|
|
287
|
+
const { runOpenTUIWizard } = await import('../tui/wizard.js');
|
|
288
|
+
result = await runOpenTUIWizard();
|
|
289
|
+
// OpenTUI restored the screen; now show the static header for install phase
|
|
290
|
+
printHeader();
|
|
291
|
+
}
|
|
292
|
+
else {
|
|
293
|
+
result = await runWizard();
|
|
294
|
+
}
|
|
223
295
|
if (!result) {
|
|
224
296
|
console.log('\nCancelado.');
|
|
225
297
|
return 1;
|
|
226
298
|
}
|
|
227
299
|
const yamlContent = buildProjectYaml(result);
|
|
228
300
|
writeFileSync(projectYamlPath, yamlContent, 'utf-8');
|
|
229
|
-
// Build config from wizard result
|
|
230
301
|
config = {
|
|
231
302
|
project: { name: result.name, slug: result.slug, description: result.description, language: result.language, mode: result.mode, status: 'active' },
|
|
232
303
|
stack: { backend: result.backend, frontend: result.frontend, database: result.database, orm: result.orm, package_manager: result.packageManager, testing: result.testing },
|
|
@@ -234,9 +305,6 @@ export async function init(args) {
|
|
|
234
305
|
runtimes: { active: [runtimeOverride ?? result.runtime] },
|
|
235
306
|
};
|
|
236
307
|
}
|
|
237
|
-
else {
|
|
238
|
-
config = loadProjectYaml(projectYamlPath);
|
|
239
|
-
}
|
|
240
308
|
const forgeRoot = resolveForgeRoot();
|
|
241
309
|
const projectRoot = process.cwd();
|
|
242
310
|
const runtime = runtimeOverride ?? config.runtimes?.active?.[0] ?? 'claude-code';
|
|
@@ -341,7 +409,7 @@ export async function init(args) {
|
|
|
341
409
|
...allAgents.map(a => `.claude/agents/${a}.md`),
|
|
342
410
|
];
|
|
343
411
|
const ts = new Date().toISOString();
|
|
344
|
-
saveManifest(projectRoot, buildManifest(runtime, installedFiles, projectRoot, '2.
|
|
412
|
+
saveManifest(projectRoot, buildManifest(runtime, installedFiles, projectRoot, '2.6.2', ts));
|
|
345
413
|
},
|
|
346
414
|
},
|
|
347
415
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC7G,OAAO,EAAE,IAAI,EAAY,MAAM,MAAM,CAAC;AACtC,OAAO,EAAmB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,mBAAmB,EAAE,qBAAqB,EAC1C,kBAAkB,EAAE,oBAAoB,EAAE,2BAA2B,EACtE,MAAM,2BAA2B,CAAC;AAGnC,MAAM,IAAI,GAAG;;;;;;;;;;CAUZ,CAAC;AAEF,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,SAAS,KAAK,CAAC,IAAY,EAAE,OAAe,EAAE,KAAc;IAC1D,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO;IACvC,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,IAAY,EAAE,KAAc;IACzD,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO;IACvC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,OAAO,CAAC,GAAW,EAAE,IAAY,EAAE,KAAc;IACxD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE;YAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;;YAClE,QAAQ,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA6C;IACrE,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/D,IAAI,MAAM,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClE,IAAI,MAAM,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClE,IAAI,MAAM,CAAC,GAAG;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACnD,IAAI,MAAM,CAAC,cAAc;QAAE,KAAK,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IACrF,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QAC5D,CAAC,CAAC,gBAAgB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACrE,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,UAAU,GAAG,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAErD,OAAO;WACE,MAAM,CAAC,IAAI;WACX,MAAM,CAAC,IAAI;kBACJ,MAAM,CAAC,WAAW;cACtB,MAAM,CAAC,QAAQ;UACnB,MAAM,CAAC,IAAI;;;;EAInB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,wBAAwB;;;;EAI5C,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;EAE5C,QAAQ;;;;QAIF,MAAM,CAAC,OAAO;;;;;;CAMrB,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,GAAG,GAA2B;QAClC,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK;QAChF,mBAAmB,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,iBAAiB,EAAE,QAAQ;QACpF,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,qBAAqB,EAAE,YAAY;QACtF,kBAAkB,EAAE,UAAU,EAAE,oBAAoB,EAAE,WAAW;KAClE,CAAC;IACF,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC;AACrC,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;IACzF,IAAI,IAAI,KAAK,YAAY;QAAE,OAAO,CAAC,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,eAAe,EAAE,aAAa,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;IACvK,OAAO,CAAC,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB,EAAE,OAAe,EAAE,YAAsB,EAAE,QAAkB,EAAE,KAAc;IACvH,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAExC,+BAA+B;IAC/B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxE,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,gBAAgB,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,sDAAsD;IACtD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxD,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,KAAK,KAAK,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,KAAK,CAAC,CAAC;YAC1C,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACpD,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB,EAAE,OAAe,EAAE,IAAY,EAAE,KAAc;IACpF,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO;IAElC,oCAAoC;IACpC,MAAM,SAAS,GAAG,CAAC,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;IAClF,MAAM,QAAQ,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAEvC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,UAAU,CAAC,GAAG,CAAC;YAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QACjD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACjC,IAAI,UAAU,CAAC,GAAG,CAAC;gBAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB,EAAE,IAAY;IAC1D,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC9B,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAC/E,CAAC;SAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,SAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;IACtF,CAAC;SAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC/B,SAAS,CAAC,IAAI,CAAC,gBAAgB,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;IACpE,CAAC;SAAM,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC7B,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;SAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC9B,SAAS,CAAC,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;IACpD,CAAC;IACD,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE9B,MAAM,KAAK,GAA8B;QACvC,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC,EAAE,CAAC;QAC9G,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC,EAAE,CAAC;KAC3F,CAAC;IACF,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAChD,KAAK,CAAC,UAA6C,CAAC,IAAI,CAAC;YACxD,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;SAC9E,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB,EAAE,OAAe,EAAE,KAAc;IACzE,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IAC3E,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO;IACrC,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,WAAW,CAAC,SAAiB,EAAE,WAAmB,EAAE,MAAmB,EAAE,KAAc;IAC9F,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3E,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IACrE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,oBAAoB,EAAE,EAAE,KAAK,CAAC,CAAC;IACnE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,4BAA4B,CAAC,EAAE,2BAA2B,EAAE,EAAE,KAAK,CAAC,CAAC;AAC5F,CAAC;AAED,8EAA8E;AAC9E,OAAO;AACP,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAc;IACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,eAAe,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAElF,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC;IAC5D,IAAI,MAAmB,CAAC;IAExB,cAAc;IACd,WAAW,EAAE,CAAC;IAEd,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACjC,yBAAyB;QACzB,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAEvD,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC7C,aAAa,CAAC,eAAe,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAErD,kCAAkC;QAClC,MAAM,GAAG;YACP,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE;YAClJ,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;YAC1K,MAAM,EAAE,EAAE,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;YAChG,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,eAAe,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE;SAC1D,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IACrC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,OAAO,GAAG,eAAe,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC;IACjF,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,UAAU,CAAC;IAC/C,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,YAAY,CAAC;IACzD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC;IACjD,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC;IAC/C,MAAM,SAAS,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,gBAAgB,CAAC,CAAC;IAEzD,sBAAsB;IACtB,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,IAAI,QAAQ,IAAI,QAAQ,KAAK,YAAY;QAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpH,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO;QAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrE,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ;QAAE,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ;QAAE,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,MAAM,CAAC,KAAK,EAAE,GAAG;QAAO,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACnG,IAAI,QAAQ,KAAK,YAAY;QAAE,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAEnE,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;QAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IAE3D,kBAAkB;IAClB,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QAAE,cAAc,CAAC,cAAc,CAAC,CAAC;IAE9D,0CAA0C;IAC1C,IAAI,MAAM,EAAE,CAAC;QACX,YAAY,CAAC,2BAA2B,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG;YACf,EAAE,KAAK,EAAE,qBAAqB,SAAS,CAAC,MAAM,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;YACxE,EAAE,KAAK,EAAE,uDAAuD,EAAE,IAAI,EAAE,WAAW,EAAE;YACrF,EAAE,KAAK,EAAE,uCAAuC,EAAE,IAAI,EAAE,KAAK,EAAE;YAC/D,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtC,EAAE,KAAK,EAAE,uBAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE;YAClD,EAAE,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,UAAU,EAAE;SACpD,CAAC;QACF,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxG,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,mCAAmC,CAAC,GAAG,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC/C,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1C,MAAM,QAAQ,CAAC,eAAe,EAAE;YAC9B;gBACE,KAAK,EAAE,WAAW,SAAS,CAAC,MAAM,GAAG;gBACrC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;gBACjE,IAAI,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC;aAChG;YACD;gBACE,KAAK,EAAE,8CAA8C;gBACrD,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC;aAC3E;YACD;gBACE,KAAK,EAAE,qBAAqB;gBAC5B,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,KAAK,CAAC;aAC3E;YACD;gBACE,KAAK,EAAE,WAAW;gBAClB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;aACnF;YACD;gBACE,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,qBAAqB;gBAC3B,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC;aACjG;YACD;gBACE,KAAK,EAAE,kCAAkC;gBACzC,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,GAAG,EAAE;oBACT,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACnE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACzE,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;oBACjF,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;wBAChC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC;oBACvF,CAAC;oBACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,oBAAoB,CAAC,CAAC;oBAClG,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;oBAC5D,IAAI,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;wBAChE,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,aAAa,CAAC,CAAC;wBAC5H,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;aACF;YACD;gBACE,KAAK,EAAE,sBAAsB;gBAC7B,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,GAAG,EAAE;oBACT,MAAM,cAAc,GAAG;wBACrB,WAAW,EAAE,uBAAuB,EAAE,4BAA4B;wBAClE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC;qBAChD,CAAC;oBACF,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;oBACpC,YAAY,CAAC,WAAW,EAAE,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC9F,CAAC;aACF;SACF,CAAC,CAAC;IAEL,CAAC;SAAM,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAClC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IAEzE,CAAC;SAAM,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IAE9E,CAAC;SAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,oBAAoB;IACpB,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,SAAS,GACb,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,6BAA6B,EAAE,qCAAqC,CAAC,CAAC,CAAC;QACpG,OAAO,KAAK,UAAU,CAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC;YAC1D,OAAO,KAAK,MAAM,CAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC;gBAC9B,CAAC,iCAAiC,CAAC,CAAC;IAElE,MAAM,cAAc,GAClB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,GAAG,MAAM;QACzE,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QACxC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAElF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE;QAC/D,WAAW,EAAE,OAAO;QACpB,WAAW,EAAE,OAAO;QACpB,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;QACjD,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;KACjD,CAAC,GAAG,IAAI,CAAC,CAAC;IAEX,OAAO,CAAC,CAAC;AACX,CAAC"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/tui/wizard.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAiErD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAsPrE"}
|
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* forge interactive wizard — OpenTUI panels (Bun runtime only).
|
|
3
|
+
* Widgets are CHILDREN of panels (flex column layout), not absolute positioned.
|
|
4
|
+
*/
|
|
5
|
+
// @ts-nocheck — OpenTUI types; Bun-only module
|
|
6
|
+
import { createCliRenderer, BoxRenderable, Text, SelectRenderable, InputRenderable, } from '@opentui/core';
|
|
7
|
+
import { detectStack } from '../lib/detect.js';
|
|
8
|
+
// ─── Palette ─────────────────────────────────────────────────────────────────
|
|
9
|
+
const C = {
|
|
10
|
+
cyan: '#00e5ff',
|
|
11
|
+
yellow: '#ffd740',
|
|
12
|
+
green: '#69ff47',
|
|
13
|
+
muted: '#546e7a',
|
|
14
|
+
dim: '#37474f',
|
|
15
|
+
bg: '#0d1117',
|
|
16
|
+
bgPanel: '#161b22',
|
|
17
|
+
bgInput: '#1f2937',
|
|
18
|
+
bgFocus: '#1e3a5f',
|
|
19
|
+
white: '#e6edf3',
|
|
20
|
+
};
|
|
21
|
+
const bold = (s) => `\x1b[1m${s}\x1b[0m`;
|
|
22
|
+
const col = (hex, s) => {
|
|
23
|
+
const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);
|
|
24
|
+
return `\x1b[38;2;${r};${g};${b}m${s}\x1b[0m`;
|
|
25
|
+
};
|
|
26
|
+
const dim = (s) => `\x1b[2m${s}\x1b[0m`;
|
|
27
|
+
const STEPS = [
|
|
28
|
+
'Project name', 'Language', 'Mode',
|
|
29
|
+
'Backend', 'Frontend', 'Database', 'ORM',
|
|
30
|
+
'Package manager', 'Testing', 'Runtime', 'Confirm',
|
|
31
|
+
];
|
|
32
|
+
// ─── Options ─────────────────────────────────────────────────────────────────
|
|
33
|
+
const o = (name, value, description = '') => ({ name, value, description });
|
|
34
|
+
const BACKENDS = {
|
|
35
|
+
typescript: [o('Hono', 'hono', 'Edge-ready, ultralight'), o('Express', 'express', 'The classic'), o('NestJS', 'nestjs', 'Enterprise'), o('Fastify', 'fastify', 'High performance'), o('None', 'none', '')],
|
|
36
|
+
python: [o('FastAPI', 'fastapi', 'Async'), o('Django', 'django', 'Batteries included'), o('None', 'none', '')],
|
|
37
|
+
ruby: [o('Rails', 'rails', 'Full-stack'), o('None', 'none', '')],
|
|
38
|
+
go: [o('Gin', 'go-gin', 'Fast router'), o('None', 'none', '')],
|
|
39
|
+
php: [o('Laravel', 'laravel', 'Full-stack PHP'), o('None', 'none', '')],
|
|
40
|
+
};
|
|
41
|
+
const FRONTENDS = [o('Next.js', 'nextjs', 'Fullstack React'), o('Astro', 'astro', 'Content-first'), o('Nuxt', 'nuxt', 'Vue'), o('SvelteKit', 'sveltekit', 'Svelte'), o('None', 'none', '')];
|
|
42
|
+
const DATABASES = [o('PostgreSQL', 'postgresql', 'Recommended'), o('MySQL', 'mysql', ''), o('SQLite', 'sqlite', 'Dev/embedded'), o('None', 'none', '')];
|
|
43
|
+
const ORMS = {
|
|
44
|
+
typescript: [o('Drizzle ORM', 'drizzle', 'Lightweight, type-safe'), o('Prisma', 'prisma', 'Full ORM'), o('TypeORM', 'typeorm', ''), o('None', 'none', '')],
|
|
45
|
+
python: [o('SQLAlchemy', 'sqlalchemy', ''), o('None', 'none', '')],
|
|
46
|
+
ruby: [o('Active Record', 'active-record', ''), o('None', 'none', '')],
|
|
47
|
+
};
|
|
48
|
+
const PKG = {
|
|
49
|
+
typescript: [o('pnpm', 'pnpm', 'Recommended'), o('npm', 'npm', ''), o('yarn', 'yarn', ''), o('bun', 'bun', 'Ultra-fast')],
|
|
50
|
+
python: [o('pip', 'pip', ''), o('poetry', 'poetry', '')],
|
|
51
|
+
ruby: [o('bundler', 'bundler', '')],
|
|
52
|
+
go: [o('go modules', 'go', '')],
|
|
53
|
+
php: [o('composer', 'composer', '')],
|
|
54
|
+
};
|
|
55
|
+
const TESTING = {
|
|
56
|
+
typescript: [o('Vitest', 'vitest', 'Unit+integration'), o('Jest', 'jest', ''), o('Playwright', 'playwright', 'E2E'), o('Cypress', 'cypress', 'E2E'), o('None', 'none', 'Skip')],
|
|
57
|
+
python: [o('pytest', 'pytest', ''), o('None', 'none', 'Skip')],
|
|
58
|
+
ruby: [o('RSpec', 'rspec', ''), o('None', 'none', 'Skip')],
|
|
59
|
+
php: [o('PHPUnit', 'phpunit', ''), o('None', 'none', 'Skip')],
|
|
60
|
+
};
|
|
61
|
+
const RUNTIMES = [o('Claude Code', 'claude-code', 'Recommended'), o('OpenCode', 'opencode', ''), o('Codex CLI', 'codex', ''), o('Kiro IDE', 'kiro', '')];
|
|
62
|
+
const PROFILE_MAP = { hono: 'hono-drizzle', nextjs: 'nextjs-admin', astro: 'astro', fastapi: 'fastapi', rails: 'rails', laravel: 'laravel' };
|
|
63
|
+
const toSlug = (s) => s.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
|
|
64
|
+
// ─── Main ─────────────────────────────────────────────────────────────────────
|
|
65
|
+
export async function runOpenTUIWizard() {
|
|
66
|
+
const detected = detectStack(process.cwd());
|
|
67
|
+
const renderer = await createCliRenderer({ exitOnCtrlC: true });
|
|
68
|
+
const W = renderer.root.width ?? process.stdout.columns ?? 120;
|
|
69
|
+
const H = renderer.root.height ?? process.stdout.rows ?? 40;
|
|
70
|
+
const HEADER_H = 5;
|
|
71
|
+
const BOTTOM_H = 2;
|
|
72
|
+
const BODY_H = H - HEADER_H - BOTTOM_H - 2;
|
|
73
|
+
const LEFT_W = Math.max(24, Math.floor(W * 0.25));
|
|
74
|
+
const RIGHT_W = W - LEFT_W - 1;
|
|
75
|
+
// ── Header panel ──
|
|
76
|
+
const header = new BoxRenderable(renderer, {
|
|
77
|
+
id: 'hdr', position: 'absolute', left: 0, top: 0,
|
|
78
|
+
width: W, height: HEADER_H,
|
|
79
|
+
border: true, borderStyle: 'double', borderColor: C.cyan,
|
|
80
|
+
backgroundColor: C.bg,
|
|
81
|
+
flexDirection: 'column', paddingLeft: 1, paddingTop: 1,
|
|
82
|
+
});
|
|
83
|
+
header.add(Text({ id: 'hdr-t',
|
|
84
|
+
content: col(C.yellow, bold('forge')) + dim(' v2.6.2') + '\n' +
|
|
85
|
+
col(C.muted, 'Configure any project for AI agents') + '\n' +
|
|
86
|
+
dim('Claude Code · OpenCode · Codex · Kiro'),
|
|
87
|
+
}));
|
|
88
|
+
renderer.root.add(header);
|
|
89
|
+
// ── Steps panel (left) ──
|
|
90
|
+
const stepsPanel = new BoxRenderable(renderer, {
|
|
91
|
+
id: 'stp', position: 'absolute',
|
|
92
|
+
left: 0, top: HEADER_H + 1, width: LEFT_W, height: BODY_H,
|
|
93
|
+
border: true, borderStyle: 'single', borderColor: C.dim,
|
|
94
|
+
backgroundColor: C.bgPanel,
|
|
95
|
+
title: ' Steps ',
|
|
96
|
+
flexDirection: 'column', paddingLeft: 1, paddingTop: 1,
|
|
97
|
+
});
|
|
98
|
+
renderer.root.add(stepsPanel);
|
|
99
|
+
// ── Content panel (right) — flex column, widgets go here ──
|
|
100
|
+
const contentPanel = new BoxRenderable(renderer, {
|
|
101
|
+
id: 'cnt', position: 'absolute',
|
|
102
|
+
left: LEFT_W + 1, top: HEADER_H + 1, width: RIGHT_W, height: BODY_H,
|
|
103
|
+
border: true, borderStyle: 'single', borderColor: C.cyan,
|
|
104
|
+
backgroundColor: C.bg,
|
|
105
|
+
flexDirection: 'column', gap: 1, paddingLeft: 1, paddingRight: 1, paddingTop: 1,
|
|
106
|
+
});
|
|
107
|
+
renderer.root.add(contentPanel);
|
|
108
|
+
// ── Bottom hints ──
|
|
109
|
+
const bottom = new BoxRenderable(renderer, {
|
|
110
|
+
id: 'btm', position: 'absolute',
|
|
111
|
+
left: 0, top: H - BOTTOM_H, width: W, height: BOTTOM_H,
|
|
112
|
+
backgroundColor: C.bgPanel,
|
|
113
|
+
paddingLeft: 1,
|
|
114
|
+
});
|
|
115
|
+
bottom.add(Text({ id: 'btm-t', content: dim('[↑↓] Navigate [Enter] Confirm [Ctrl+C] Cancel') }));
|
|
116
|
+
renderer.root.add(bottom);
|
|
117
|
+
// ─── Helpers ─────────────────────────────────────────────────────────────────
|
|
118
|
+
let currentStep = 0;
|
|
119
|
+
function renderSteps() {
|
|
120
|
+
stepsPanel.remove('stp-list');
|
|
121
|
+
const lines = STEPS.map((s, i) => {
|
|
122
|
+
if (i < currentStep)
|
|
123
|
+
return col(C.green, `✔ ${i + 1}. ${s}`);
|
|
124
|
+
if (i === currentStep)
|
|
125
|
+
return col(C.cyan, `► ${bold(String(i + 1))}. ${bold(s)}`);
|
|
126
|
+
return col(C.muted, ` ${i + 1}. ${s}`);
|
|
127
|
+
}).join('\n');
|
|
128
|
+
stepsPanel.add(Text({ id: 'stp-list', content: lines }));
|
|
129
|
+
}
|
|
130
|
+
function clearContent() {
|
|
131
|
+
// Remove all children from content panel
|
|
132
|
+
for (const child of [...contentPanel.getChildren()]) {
|
|
133
|
+
try {
|
|
134
|
+
contentPanel.remove(child.id ?? '');
|
|
135
|
+
}
|
|
136
|
+
catch { }
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
// ─── askInput — widget as CHILD of contentPanel ───────────────────────────────
|
|
140
|
+
async function askInput(title, hint = '', defVal = '') {
|
|
141
|
+
return new Promise(resolve => {
|
|
142
|
+
renderSteps();
|
|
143
|
+
clearContent();
|
|
144
|
+
// Label
|
|
145
|
+
contentPanel.add(Text({ id: 'q-label',
|
|
146
|
+
content: col(C.white, bold(title)) + (hint ? '\n' + dim(hint) : ''),
|
|
147
|
+
}));
|
|
148
|
+
// Input widget — flex child, takes full width of content panel
|
|
149
|
+
const input = new InputRenderable(renderer, {
|
|
150
|
+
id: 'q-input',
|
|
151
|
+
width: RIGHT_W - 4,
|
|
152
|
+
backgroundColor: C.bgInput,
|
|
153
|
+
focusedBackgroundColor: C.bgFocus,
|
|
154
|
+
focusedTextColor: C.cyan,
|
|
155
|
+
placeholder: defVal || 'Type here and press Enter...',
|
|
156
|
+
placeholderColor: C.muted,
|
|
157
|
+
});
|
|
158
|
+
contentPanel.add(input);
|
|
159
|
+
renderer.focusRenderable(input);
|
|
160
|
+
input.on('enter', () => {
|
|
161
|
+
const val = input.value?.trim() || defVal;
|
|
162
|
+
resolve(val);
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
// ─── askSelect — SelectRenderable as CHILD of contentPanel ────────────────────
|
|
167
|
+
async function askSelect(title, hint, options, initialValue) {
|
|
168
|
+
return new Promise(resolve => {
|
|
169
|
+
renderSteps();
|
|
170
|
+
clearContent();
|
|
171
|
+
contentPanel.add(Text({ id: 'q-label',
|
|
172
|
+
content: col(C.white, bold(title)) + (hint ? '\n' + dim(hint) : ''),
|
|
173
|
+
}));
|
|
174
|
+
const initIdx = initialValue
|
|
175
|
+
? Math.max(0, options.findIndex((o) => o.value === initialValue))
|
|
176
|
+
: 0;
|
|
177
|
+
const sel = new SelectRenderable(renderer, {
|
|
178
|
+
id: 'q-select',
|
|
179
|
+
width: RIGHT_W - 4,
|
|
180
|
+
height: Math.min(options.length + 2, BODY_H - 8),
|
|
181
|
+
options,
|
|
182
|
+
selectedIndex: initIdx,
|
|
183
|
+
backgroundColor: C.bgPanel,
|
|
184
|
+
focusedBackgroundColor: '#1c3a5e',
|
|
185
|
+
focusedTextColor: C.cyan,
|
|
186
|
+
selectedBackgroundColor: '#162032',
|
|
187
|
+
selectedTextColor: C.yellow,
|
|
188
|
+
showDescription: true,
|
|
189
|
+
descriptionColor: C.muted,
|
|
190
|
+
});
|
|
191
|
+
contentPanel.add(sel);
|
|
192
|
+
renderer.focusRenderable(sel);
|
|
193
|
+
sel.on('itemSelected', () => {
|
|
194
|
+
const val = sel.getSelectedOption()?.value ?? options[0].value;
|
|
195
|
+
resolve(val);
|
|
196
|
+
});
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
// ─── Wizard steps ─────────────────────────────────────────────────────────────
|
|
200
|
+
const ans = { testing: detected.testing ?? [], detected: !!(detected.language || detected.backend) };
|
|
201
|
+
ans.name = await askInput('Project name', 'Enter a name for your project');
|
|
202
|
+
if (!ans.name)
|
|
203
|
+
ans.name = 'My Project';
|
|
204
|
+
ans.slug = toSlug(ans.name);
|
|
205
|
+
currentStep = 1;
|
|
206
|
+
ans.language = await askSelect('Language', 'Primary programming language', [
|
|
207
|
+
o('TypeScript', 'typescript', 'Recommended'), o('Python', 'python', ''),
|
|
208
|
+
o('Ruby', 'ruby', ''), o('Go', 'go', ''), o('PHP', 'php', ''),
|
|
209
|
+
], detected.language ?? 'typescript');
|
|
210
|
+
currentStep = 2;
|
|
211
|
+
ans.mode = await askSelect('Project mode', 'Determines agents and guardrails', [
|
|
212
|
+
o('startup', 'startup', 'Minimal — small team'),
|
|
213
|
+
o('standard', 'standard', 'CI/CD, code review, testing'),
|
|
214
|
+
o('enterprise', 'enterprise', 'Compliance, multi-team, audits'),
|
|
215
|
+
], 'standard');
|
|
216
|
+
currentStep = 3;
|
|
217
|
+
const backendOpts = BACKENDS[ans.language] ?? [o('None', 'none', '')];
|
|
218
|
+
const backend = await askSelect('Backend framework', 'Select backend (or None)', backendOpts, detected.backend ?? 'none');
|
|
219
|
+
ans.backend = backend === 'none' ? undefined : backend;
|
|
220
|
+
currentStep = 4;
|
|
221
|
+
const frontend = await askSelect('Frontend framework', 'Select frontend (or None)', FRONTENDS, detected.frontend ?? 'none');
|
|
222
|
+
ans.frontend = frontend === 'none' ? undefined : frontend;
|
|
223
|
+
currentStep = 5;
|
|
224
|
+
const database = await askSelect('Database', 'Select primary database', DATABASES, detected.database ?? 'postgresql');
|
|
225
|
+
ans.database = database === 'none' ? undefined : database;
|
|
226
|
+
currentStep = 6;
|
|
227
|
+
if (ans.database) {
|
|
228
|
+
const ormOpts = ORMS[ans.language] ?? [o('None', 'none', '')];
|
|
229
|
+
const orm = await askSelect('ORM / query builder', 'Select ORM', ormOpts, detected.orm ?? 'none');
|
|
230
|
+
ans.orm = orm === 'none' ? undefined : orm;
|
|
231
|
+
}
|
|
232
|
+
currentStep = 7;
|
|
233
|
+
const pmOpts = PKG[ans.language] ?? [o('npm', 'npm', '')];
|
|
234
|
+
ans.packageManager = await askSelect('Package manager', 'Select package manager', pmOpts, detected.packageManager ?? 'pnpm');
|
|
235
|
+
currentStep = 8;
|
|
236
|
+
const testOpts = TESTING[ans.language] ?? [o('None', 'none', 'Skip')];
|
|
237
|
+
const test = await askSelect('Testing', 'Select primary testing framework', testOpts, (detected.testing ?? [])[0] ?? 'none');
|
|
238
|
+
ans.testing = test === 'none' ? [] : [test];
|
|
239
|
+
currentStep = 9;
|
|
240
|
+
ans.runtime = await askSelect('AI Runtime', 'Primary AI coding assistant', RUNTIMES, 'claude-code');
|
|
241
|
+
currentStep = 10;
|
|
242
|
+
// ── Confirm ──
|
|
243
|
+
renderSteps();
|
|
244
|
+
clearContent();
|
|
245
|
+
const summaryLines = [
|
|
246
|
+
col(C.white, bold('Configuration summary')), '',
|
|
247
|
+
` ${col(C.muted, 'Name:')} ${col(C.yellow, ans.name)}`,
|
|
248
|
+
` ${col(C.muted, 'Language:')} ${ans.language} ${col(C.muted, 'Mode:')} ${ans.mode}`,
|
|
249
|
+
ans.backend ? ` ${col(C.muted, 'Backend:')} ${ans.backend}` : '',
|
|
250
|
+
ans.frontend ? ` ${col(C.muted, 'Frontend:')} ${ans.frontend}` : '',
|
|
251
|
+
ans.database ? ` ${col(C.muted, 'DB:')} ${ans.database}${ans.orm ? ' + ' + ans.orm : ''}` : '',
|
|
252
|
+
ans.testing?.length ? ` ${col(C.muted, 'Testing:')} ${ans.testing.join(', ')}` : '',
|
|
253
|
+
` ${col(C.muted, 'Runtime:')} ${ans.runtime}`,
|
|
254
|
+
].filter(Boolean).join('\n');
|
|
255
|
+
contentPanel.add(Text({ id: 'q-label', content: summaryLines }));
|
|
256
|
+
const confirmed = await askSelect('', 'Install with this configuration?', [
|
|
257
|
+
o('✔ Yes, install forge', 'yes', ''),
|
|
258
|
+
o('✗ Cancel', 'no', ''),
|
|
259
|
+
]) === 'yes';
|
|
260
|
+
if (!confirmed) {
|
|
261
|
+
renderer.destroy();
|
|
262
|
+
return null;
|
|
263
|
+
}
|
|
264
|
+
// Done
|
|
265
|
+
renderSteps();
|
|
266
|
+
clearContent();
|
|
267
|
+
contentPanel.add(Text({ id: 'q-label',
|
|
268
|
+
content: '\n\n' + col(C.green, bold(' ✔ Configuration complete')) + '\n' + dim(' Installing forge...'),
|
|
269
|
+
}));
|
|
270
|
+
await new Promise(r => setTimeout(r, 500));
|
|
271
|
+
renderer.destroy();
|
|
272
|
+
const profiles = [];
|
|
273
|
+
if (ans.backend && PROFILE_MAP[ans.backend])
|
|
274
|
+
profiles.push(PROFILE_MAP[ans.backend]);
|
|
275
|
+
if (ans.frontend && PROFILE_MAP[ans.frontend])
|
|
276
|
+
profiles.push(PROFILE_MAP[ans.frontend]);
|
|
277
|
+
return {
|
|
278
|
+
name: ans.name, slug: ans.slug, description: '', language: ans.language,
|
|
279
|
+
mode: ans.mode, backend: ans.backend, frontend: ans.frontend,
|
|
280
|
+
database: ans.database, orm: ans.orm, packageManager: ans.packageManager,
|
|
281
|
+
testing: ans.testing, profiles: [...new Set(profiles)],
|
|
282
|
+
runtime: ans.runtime, detected: ans.detected,
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
//# sourceMappingURL=wizard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/tui/wizard.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/header.js
CHANGED
|
@@ -2,7 +2,7 @@ import boxen from 'boxen';
|
|
|
2
2
|
import chalk from 'chalk';
|
|
3
3
|
const VERSION = '2.4.2';
|
|
4
4
|
export function printHeader() {
|
|
5
|
-
const content = chalk.yellow.bold('forge') + ' ' + chalk.dim('v' + '2.
|
|
5
|
+
const content = chalk.yellow.bold('forge') + ' ' + chalk.dim('v' + '2.6.2') + '\n' +
|
|
6
6
|
chalk.dim('Configure any project for AI agents') + '\n' +
|
|
7
7
|
chalk.dim('Claude Code · OpenCode · Codex · Kiro');
|
|
8
8
|
const output = boxen(content, {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cristiancorreau/forge",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.6.2",
|
|
4
4
|
"description": "Agentic development framework — multi-runtime support for Claude Code, OpenCode, Codex and Kiro",
|
|
5
5
|
"author": "Cristian Correa <cristian@socialweb.cl>",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -47,6 +47,7 @@
|
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"@clack/prompts": "^0.9.1",
|
|
50
|
+
"@opentui/core": "^0.3.1",
|
|
50
51
|
"ajv": "^8.20.0",
|
|
51
52
|
"ajv-formats": "^3.0.1",
|
|
52
53
|
"boxen": "^8.0.1",
|