@team-semicolon/semo-cli 3.0.29 → 3.0.31

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 (2) hide show
  1. package/dist/index.js +11 -3
  2. package/package.json +5 -5
package/dist/index.js CHANGED
@@ -450,6 +450,9 @@ const EXTENSION_PACKAGES = {
450
450
  "ops/improve": { name: "Improve", desc: "개선 제안", layer: "ops", detect: [] },
451
451
  // Meta
452
452
  meta: { name: "Meta", desc: "SEMO 프레임워크 자체 개발/관리", layer: "meta", detect: ["semo-core", "semo-skills"] },
453
+ // System (semo-system 하위 패키지)
454
+ "semo-hooks": { name: "Hooks", desc: "Claude Code Hooks 기반 로깅 시스템", layer: "system", detect: [] },
455
+ "semo-remote": { name: "Remote", desc: "Claude Code 원격 제어 (모바일 PWA)", layer: "system", detect: [] },
453
456
  };
454
457
  // 단축명 → 전체 패키지 경로 매핑
455
458
  const SHORTNAME_MAPPING = {
@@ -469,9 +472,12 @@ const SHORTNAME_MAPPING = {
469
472
  next: "eng/nextjs",
470
473
  backend: "eng/spring",
471
474
  mvp: "biz/poc",
475
+ // System 패키지 단축명
476
+ hooks: "semo-hooks",
477
+ remote: "semo-remote",
472
478
  };
473
- // 그룹 이름 목록 (biz, eng, ops)
474
- const PACKAGE_GROUPS = ["biz", "eng", "ops", "meta"];
479
+ // 그룹 이름 목록 (biz, eng, ops, meta, system)
480
+ const PACKAGE_GROUPS = ["biz", "eng", "ops", "meta", "system"];
475
481
  // 그룹명 → 해당 그룹의 모든 패키지 반환
476
482
  function getPackagesByGroup(group) {
477
483
  return Object.entries(EXTENSION_PACKAGES)
@@ -2450,7 +2456,7 @@ ${packageClaudeMdSections}
2450
2456
  // === add 명령어 ===
2451
2457
  program
2452
2458
  .command("add <packages>")
2453
- .description("Extension 패키지를 추가로 설치합니다 (그룹: biz, eng, ops / 개별: biz/discovery, eng/nextjs)")
2459
+ .description("Extension 패키지를 추가로 설치합니다 (그룹: biz, eng, ops, system / 개별: biz/discovery, eng/nextjs, semo-hooks)")
2454
2460
  .option("-f, --force", "기존 설정 덮어쓰기")
2455
2461
  .action(async (packagesInput, options) => {
2456
2462
  const cwd = process.cwd();
@@ -2557,6 +2563,7 @@ program
2557
2563
  eng: { title: "Engineering Layer", emoji: "⚙️" },
2558
2564
  ops: { title: "Operations Layer", emoji: "📊" },
2559
2565
  meta: { title: "Meta", emoji: "🔧" },
2566
+ system: { title: "System", emoji: "🔩" },
2560
2567
  };
2561
2568
  for (const [layerKey, layerInfo] of Object.entries(layers)) {
2562
2569
  const layerPackages = Object.entries(EXTENSION_PACKAGES).filter(([, pkg]) => pkg.layer === layerKey);
@@ -2578,6 +2585,7 @@ program
2578
2585
  console.log(chalk_1.default.gray(" semo add biz → Business 전체 (discovery, design, management, poc)"));
2579
2586
  console.log(chalk_1.default.gray(" semo add eng → Engineering 전체 (nextjs, spring, ms, infra)"));
2580
2587
  console.log(chalk_1.default.gray(" semo add ops → Operations 전체 (qa, monitor, improve)"));
2588
+ console.log(chalk_1.default.gray(" semo add system → System 전체 (hooks, remote)"));
2581
2589
  console.log();
2582
2590
  // 단축명 안내
2583
2591
  console.log(chalk_1.default.gray("─".repeat(50)));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@team-semicolon/semo-cli",
3
- "version": "3.0.29",
3
+ "version": "3.0.31",
4
4
  "description": "SEMO CLI - AI Agent Orchestration Framework Installer",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -27,14 +27,14 @@
27
27
  "directory": "packages/cli"
28
28
  },
29
29
  "dependencies": {
30
- "chalk": "^5.3.0",
30
+ "chalk": "^4.1.2",
31
31
  "commander": "^12.0.0",
32
- "ora": "^8.0.0",
33
- "inquirer": "^9.2.0"
32
+ "ora": "^5.4.1",
33
+ "inquirer": "^8.2.6"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/node": "^20.0.0",
37
- "@types/inquirer": "^9.0.0",
37
+ "@types/inquirer": "^8.2.0",
38
38
  "typescript": "^5.0.0",
39
39
  "ts-node": "^10.0.0"
40
40
  },