@tdsoft-tech/aikit 0.1.6 → 0.1.8

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/CHANGELOG.md CHANGED
@@ -3,11 +3,15 @@
3
3
  ## [Unreleased]
4
4
 
5
5
  ### Added
6
- - ✨ CLI tool detection và installation (v0.1.5)
6
+ - ✨ CLI tool detection và installation (v0.1.8)
7
7
  - Auto-detect OpenCode, Claude CLI, và GitHub CLI
8
- - Interactive prompt để chọn cài đặt CLI tools chưa được install
8
+ - Interactive prompt với 3 options ràng:
9
+ - `a` - Install tất cả missing CLI tools (default)
10
+ - `s` - Chọn từng tool cụ thể
11
+ - `n` - Skip CLI tool installation
9
12
  - Hỗ trợ cài đặt cho: OpenCode, Claude CLI, GitHub CLI
10
13
  - Display status cho từng CLI tool (installed/not installed + version)
14
+ - Cải thiện message để rõ ràng: "Select specific tools to install (use space to select, Enter to confirm)"
11
15
  - ✨ New command `/analyze-figma` - Tự động phân tích Figma design và extract design tokens
12
16
  - Không cần user phải viết prompt dài
13
17
  - Tự động gọi @vision agent
package/dist/cli.js CHANGED
@@ -4242,30 +4242,71 @@ program.command("init").description("Initialize AIKit configuration").option("-g
4242
4242
  }
4243
4243
  if (installableTools.length > 0) {
4244
4244
  console.log();
4245
- const { installTools } = await inquirer.prompt([
4245
+ const { action } = await inquirer.prompt([
4246
4246
  {
4247
- type: "checkbox",
4248
- name: "installTools",
4249
- message: "Select CLI tools to install (press Enter to skip):",
4250
- choices: installableTools.map((tool) => ({
4251
- name: tool.name,
4252
- value: tool,
4253
- checked: true
4254
- // Default to install all
4255
- }))
4247
+ type: "list",
4248
+ name: "action",
4249
+ message: "How would you like to proceed?",
4250
+ choices: [
4251
+ {
4252
+ name: "all",
4253
+ value: "all",
4254
+ short: "a",
4255
+ message: "Install all missing CLI tools"
4256
+ },
4257
+ {
4258
+ name: "select",
4259
+ value: "select",
4260
+ short: "s",
4261
+ message: "Select specific tools to install (use space to select, Enter to confirm)"
4262
+ },
4263
+ {
4264
+ name: "skip",
4265
+ value: "skip",
4266
+ short: "n",
4267
+ message: "Skip CLI tool installation"
4268
+ }
4269
+ ],
4270
+ default: "all"
4256
4271
  }
4257
4272
  ]);
4258
- if (installTools.length > 0) {
4273
+ if (action === "skip") {
4274
+ console.log();
4275
+ logger.info("Skipping CLI tool installation");
4276
+ } else if (action === "all") {
4259
4277
  console.log();
4260
- logger.info(`Installing ${installTools.length} CLI tool(s)...`);
4261
- for (const tool of installTools) {
4278
+ logger.info(`Installing ${installableTools.length} CLI tool(s)...`);
4279
+ for (const tool of installableTools) {
4262
4280
  await installCliTool(tool);
4263
4281
  }
4264
4282
  console.log();
4265
4283
  logger.success("\u2713 CLI tools installed");
4266
4284
  } else {
4267
- console.log();
4268
- logger.info("Skipping CLI tool installation");
4285
+ const { installTools } = await inquirer.prompt([
4286
+ {
4287
+ type: "checkbox",
4288
+ name: "installTools",
4289
+ message: "Select CLI tools to install (press Enter to skip):",
4290
+ choices: installableTools.map((tool) => ({
4291
+ name: tool.name,
4292
+ value: tool,
4293
+ checked: true
4294
+ // Default to install all
4295
+ }))
4296
+ }
4297
+ ]);
4298
+ if (installTools.length > 0) {
4299
+ console.log();
4300
+ logger.info(`Installing ${installTools.length} CLI tool(s)...`);
4301
+ for (const tool of installTools) {
4302
+ await installCliTool(tool);
4303
+ }
4304
+ console.log();
4305
+ logger.success("\u2713 CLI tools installed");
4306
+ } else {
4307
+ console.log();
4308
+ logger.info("Skipping CLI tool installation");
4309
+ }
4269
4310
  }
4270
4311
  } else {
4271
4312
  console.log();