triflux 9.2.0 → 9.2.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/bin/triflux.mjs +8 -53
- package/hooks/agent-route-guard.mjs +8 -0
- package/hooks/hooks.json +12 -0
- package/hub/team/dashboard-layout.mjs +2 -0
- package/hub/team/headless.mjs +6 -2
- package/hub/team/tui-lite.mjs +276 -0
- package/hub/team/tui-viewer.mjs +3 -1
- package/package.json +1 -1
- package/scripts/lib/gemini-profiles.mjs +85 -0
- package/scripts/setup.mjs +7 -51
- package/skills/tfx-deep-interview/SKILL.md +72 -6
- package/skills/tfx-index/SKILL.md +48 -80
- package/skills/tfx-interview/SKILL.md +92 -22
- package/skills/tfx-plan/SKILL.md +22 -12
- package/skills/tfx-research/SKILL.md +55 -37
- package/tui/setup.mjs +9 -15
package/tui/setup.mjs
CHANGED
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
RESET, DIM, BOLD, CYAN, AMBER, GREEN, RED, YELLOW, WHITE, GRAY,
|
|
12
12
|
onExit, showCursor,
|
|
13
13
|
} from "./core.mjs";
|
|
14
|
+
import { DEFAULT_GEMINI_PROFILES } from "../scripts/lib/gemini-profiles.mjs";
|
|
14
15
|
|
|
15
16
|
const PKG_ROOT = dirname(dirname(fileURLToPath(import.meta.url)));
|
|
16
17
|
const CLAUDE_DIR = join(homedir(), ".claude");
|
|
@@ -101,20 +102,13 @@ function stepProfiles() {
|
|
|
101
102
|
function stepGeminiProfiles() {
|
|
102
103
|
const configPath = join(GEMINI_DIR, "triflux-profiles.json");
|
|
103
104
|
if (!existsSync(configPath)) {
|
|
104
|
-
// 기본 프로필 자동 생성
|
|
105
|
-
const defaultConfig = {
|
|
106
|
-
model: "gemini-3.1-pro-preview",
|
|
107
|
-
profiles: {
|
|
108
|
-
pro31: { model: "gemini-3.1-pro-preview", hint: "3.1 Pro — 플래그십 (1M ctx, 멀티모달)" },
|
|
109
|
-
flash3: { model: "gemini-3-flash-preview", hint: "3.0 Flash — 빠른 응답, 비용 효율" },
|
|
110
|
-
pro25: { model: "gemini-2.5-pro", hint: "2.5 Pro — 안정 (추론 강화)" },
|
|
111
|
-
flash25: { model: "gemini-2.5-flash", hint: "2.5 Flash — 경량 범용" },
|
|
112
|
-
lite25: { model: "gemini-2.5-flash-lite", hint: "2.5 Flash Lite — 최경량" },
|
|
113
|
-
},
|
|
114
|
-
};
|
|
115
105
|
if (!existsSync(GEMINI_DIR)) mkdirSync(GEMINI_DIR, { recursive: true });
|
|
116
|
-
writeFileSync(configPath, JSON.stringify(
|
|
117
|
-
return {
|
|
106
|
+
writeFileSync(configPath, JSON.stringify(DEFAULT_GEMINI_PROFILES, null, 2) + "\n", "utf8");
|
|
107
|
+
return {
|
|
108
|
+
ok: true,
|
|
109
|
+
detail: `기본 프로필 ${Object.keys(DEFAULT_GEMINI_PROFILES.profiles).length}개 자동 생성됨`,
|
|
110
|
+
action: "created",
|
|
111
|
+
};
|
|
118
112
|
}
|
|
119
113
|
|
|
120
114
|
try {
|
|
@@ -361,7 +355,7 @@ async function starRequest() {
|
|
|
361
355
|
return;
|
|
362
356
|
}
|
|
363
357
|
|
|
364
|
-
if (await confirm(`${AMBER}⭐${RESET} 하나가 큰 차이를 만듭니다.`,
|
|
358
|
+
if (await confirm(`${AMBER}⭐${RESET} 하나가 큰 차이를 만듭니다.`, false)) {
|
|
365
359
|
try {
|
|
366
360
|
execFileSync("gh", ["api", "-X", "PUT", "/user/starred/tellang/triflux"], {
|
|
367
361
|
timeout: 5000, stdio: ["pipe", "pipe", "pipe"],
|
|
@@ -379,7 +373,7 @@ async function starRequest() {
|
|
|
379
373
|
// ── Main Menu ──
|
|
380
374
|
|
|
381
375
|
const MENU = [
|
|
382
|
-
{ label: "전체 설정 (Full Setup)", hint: "
|
|
376
|
+
{ label: "전체 설정 (Full Setup)", hint: "6단계 순서 실행" },
|
|
383
377
|
{ label: "단계별 선택 (Selective)", hint: "특정 단계만 실행" },
|
|
384
378
|
{ label: "현재 상태 확인 (Status)", hint: "설정 없이 진단만" },
|
|
385
379
|
{ label: "종료", hint: "Ctrl+C" },
|