triflux 9.7.11 → 9.7.13
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.
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
{
|
|
10
10
|
"name": "triflux",
|
|
11
11
|
"description": "CLI-first multi-model orchestrator for Claude Code. Routes tasks to Codex, Gemini, and Claude CLIs with automatic triage, DAG-based parallel execution, headless psmux sessions, and cost-optimized routing. Includes 41 skills, HUD status bar, hook orchestrator, and shell-based CLI routing.",
|
|
12
|
-
"version": "9.7.
|
|
12
|
+
"version": "9.7.13",
|
|
13
13
|
"author": {
|
|
14
14
|
"name": "tellang"
|
|
15
15
|
},
|
|
@@ -30,5 +30,5 @@
|
|
|
30
30
|
]
|
|
31
31
|
}
|
|
32
32
|
],
|
|
33
|
-
"version": "9.7.
|
|
33
|
+
"version": "9.7.13"
|
|
34
34
|
}
|
package/bin/triflux.mjs
CHANGED
|
@@ -2856,7 +2856,7 @@ async function checkHubRunning() {
|
|
|
2856
2856
|
try {
|
|
2857
2857
|
const cacheFile = join(homedir(), ".claude", "cache", "tfx-preflight.json");
|
|
2858
2858
|
const cached = JSON.parse(readFileSync(cacheFile, "utf8"));
|
|
2859
|
-
if (Date.now() - cached.timestamp <
|
|
2859
|
+
if (Date.now() - cached.timestamp < 3_600_000 && cached.hub?.ok) return true;
|
|
2860
2860
|
} catch {}
|
|
2861
2861
|
const port = Number(process.env.TFX_HUB_PORT || "27888");
|
|
2862
2862
|
try {
|
package/package.json
CHANGED
|
@@ -12,7 +12,7 @@ const PKG_ROOT = join(dirname(__filename), "..");
|
|
|
12
12
|
|
|
13
13
|
const CACHE_DIR = join(homedir(), ".claude", "cache");
|
|
14
14
|
const CACHE_FILE = join(CACHE_DIR, "tfx-preflight.json");
|
|
15
|
-
const CACHE_TTL_MS =
|
|
15
|
+
const CACHE_TTL_MS = 3_600_000; // 1시간 (세션당 1회, SessionStart 훅에서 갱신)
|
|
16
16
|
|
|
17
17
|
function checkRoute() {
|
|
18
18
|
const routePath = join(homedir(), ".claude", "scripts", "tfx-route.sh");
|
package/scripts/tfx-route.sh
CHANGED
|
@@ -890,18 +890,25 @@ TFX_CLI_MODE="${TFX_CLI_MODE:-auto}"
|
|
|
890
890
|
TFX_NO_CLAUDE_NATIVE="${TFX_NO_CLAUDE_NATIVE:-0}"
|
|
891
891
|
TFX_VERIFIER_OVERRIDE="${TFX_VERIFIER_OVERRIDE:-auto}"
|
|
892
892
|
TFX_CODEX_TRANSPORT="${TFX_CODEX_TRANSPORT:-exec}"
|
|
893
|
-
#
|
|
894
|
-
#
|
|
895
|
-
if [[ -z "${
|
|
896
|
-
|
|
893
|
+
# Preflight 캐시 일괄 로드 — CLI/Hub 가용성 + Codex 요금제를 환경변수로 내보냄
|
|
894
|
+
# 하위 프로세스(스킬 포함)가 TFX_CODEX_OK, TFX_GEMINI_OK, TFX_HUB_OK로 즉시 참조 가능
|
|
895
|
+
if [[ -z "${TFX_PREFLIGHT_LOADED:-}" ]]; then
|
|
896
|
+
eval "$(node -e '
|
|
897
897
|
try {
|
|
898
898
|
const c = JSON.parse(require("fs").readFileSync(require("path").join(require("os").homedir(),".claude","cache","tfx-preflight.json"),"utf8"));
|
|
899
|
+
const lines = [];
|
|
900
|
+
lines.push("export TFX_CODEX_OK=" + (c?.codex?.ok ? "1" : "0"));
|
|
901
|
+
lines.push("export TFX_GEMINI_OK=" + (c?.gemini?.ok ? "1" : "0"));
|
|
902
|
+
lines.push("export TFX_HUB_OK=" + (c?.hub?.ok ? "1" : "0"));
|
|
899
903
|
const p = c?.codex_plan?.plan;
|
|
900
|
-
if (p && p !== "unknown" && p !== "api")
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
904
|
+
if (p && p !== "unknown" && p !== "api") lines.push("export TFX_CODEX_PLAN=" + p);
|
|
905
|
+
const agents = c?.available_agents;
|
|
906
|
+
if (Array.isArray(agents)) lines.push("export TFX_AVAILABLE_AGENTS=" + agents.join(","));
|
|
907
|
+
lines.push("export TFX_PREFLIGHT_LOADED=1");
|
|
908
|
+
process.stdout.write(lines.join("\n") + "\n");
|
|
909
|
+
} catch { process.stdout.write("export TFX_PREFLIGHT_LOADED=1\n"); }
|
|
910
|
+
' 2>/dev/null)"
|
|
911
|
+
TFX_CODEX_PLAN="${TFX_CODEX_PLAN:-pro}"
|
|
905
912
|
fi
|
|
906
913
|
TFX_WORKER_INDEX="${TFX_WORKER_INDEX:-}"
|
|
907
914
|
TFX_SEARCH_TOOL="${TFX_SEARCH_TOOL:-}"
|