triflux 8.2.3 → 8.3.1
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/.claude-plugin/plugin.json +1 -1
- package/README.md +209 -97
- package/bin/tfx-doctor-tui.mjs +7 -0
- package/bin/tfx-profile.mjs +7 -0
- package/bin/tfx-setup-tui.mjs +7 -0
- package/bin/triflux.mjs +14 -4
- package/hub/intent.mjs +7 -7
- package/hub/team/tui.mjs +4 -0
- package/hub/workers/delegator-mcp.mjs +18 -18
- package/package.json +6 -2
- package/scripts/setup.mjs +4 -33
- package/scripts/tfx-route.sh +57 -57
- package/skills/.omc/state/agent-replay-8f0e10a9-9693-4410-96f5-a6b07e8ed995.jsonl +1 -0
- package/skills/.omc/state/idle-notif-cooldown.json +3 -0
- package/skills/.omc/state/last-tool-error.json +7 -0
- package/skills/.omc/state/subagent-tracking.json +7 -0
- package/skills/tfx-analysis/SKILL.md +101 -0
- package/skills/tfx-auto-codex/SKILL.md +1 -1
- package/skills/tfx-autopilot/SKILL.md +112 -0
- package/skills/tfx-autoresearch/SKILL.md +1 -2
- package/skills/tfx-autoroute/SKILL.md +184 -0
- package/skills/tfx-codex/SKILL.md +2 -2
- package/skills/tfx-consensus/SKILL.md +112 -0
- package/skills/tfx-debate/SKILL.md +148 -0
- package/skills/tfx-deep-analysis/SKILL.md +186 -0
- package/skills/tfx-deep-plan/SKILL.md +113 -0
- package/skills/tfx-deep-qa/SKILL.md +158 -0
- package/skills/tfx-deep-research/SKILL.md +212 -0
- package/skills/tfx-deep-review/SKILL.md +91 -0
- package/skills/tfx-doctor/SKILL.md +161 -94
- package/skills/tfx-find/SKILL.md +123 -0
- package/skills/tfx-forge/SKILL.md +183 -0
- package/skills/tfx-fullcycle/SKILL.md +195 -0
- package/skills/tfx-hub/SKILL.md +1 -1
- package/skills/tfx-index/SKILL.md +174 -0
- package/skills/tfx-interview/SKILL.md +210 -0
- package/skills/tfx-panel/SKILL.md +187 -0
- package/skills/tfx-persist/SKILL.md +141 -0
- package/skills/tfx-plan/SKILL.md +53 -0
- package/skills/tfx-profile/SKILL.md +149 -0
- package/skills/tfx-prune/SKILL.md +198 -0
- package/skills/tfx-qa/SKILL.md +117 -0
- package/skills/tfx-research/SKILL.md +126 -0
- package/skills/tfx-review/SKILL.md +51 -0
- package/skills/tfx-setup/SKILL.md +160 -101
- package/tui/codex-profile.mjs +402 -0
- package/tui/core.mjs +236 -0
- package/tui/doctor.mjs +327 -0
- package/tui/setup.mjs +362 -0
package/README.md
CHANGED
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
</p>
|
|
10
10
|
|
|
11
11
|
<p align="center">
|
|
12
|
-
<strong>
|
|
13
|
-
<em>
|
|
12
|
+
<strong>Tri-CLI Orchestration with Consensus Intelligence</strong><br>
|
|
13
|
+
<em>Claude + Codex + Gemini — 3-party debate, anti-herding verification, and 33 skills with Deep/Light variants.</em>
|
|
14
14
|
</p>
|
|
15
15
|
|
|
16
16
|
<p align="center">
|
|
@@ -31,55 +31,189 @@
|
|
|
31
31
|
|
|
32
32
|
<p align="center">
|
|
33
33
|
<a href="#quick-start">Quick Start</a> ·
|
|
34
|
+
<a href="#tri-cli-consensus">Tri-CLI Consensus</a> ·
|
|
35
|
+
<a href="#33-skills">33 Skills</a> ·
|
|
34
36
|
<a href="#architecture">Architecture</a> ·
|
|
35
|
-
<a href="#
|
|
36
|
-
<a href="#delegator-mcp">Delegator MCP</a> ·
|
|
37
|
-
<a href="#agent-types">Agent Types</a> ·
|
|
37
|
+
<a href="#deep-vs-light">Deep vs Light</a> ·
|
|
38
38
|
<a href="#security">Security</a>
|
|
39
39
|
</p>
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
|
-
## What's New in
|
|
43
|
+
## What's New in v8
|
|
44
44
|
|
|
45
|
-
**triflux
|
|
45
|
+
**triflux v8** introduces **Tri-CLI Consensus Intelligence** — a fundamentally new approach where Claude, Codex, and Gemini independently analyze, then cross-validate through structured debate. Every Deep skill guarantees anti-herding (no bias contamination) and consensus-gated output.
|
|
46
46
|
|
|
47
|
-
###
|
|
47
|
+
### Highlights
|
|
48
48
|
|
|
49
|
-
-
|
|
50
|
-
- **
|
|
51
|
-
- **
|
|
52
|
-
- **
|
|
53
|
-
- **
|
|
54
|
-
- **
|
|
55
|
-
- **
|
|
56
|
-
- **
|
|
57
|
-
- **
|
|
58
|
-
- **psmux / Windows Native** — Hybrid support for `tmux` (WSL) and `psmux` (Windows Terminal
|
|
59
|
-
- **QoS Dashboard** — Real-time health monitoring with AIMD-based dynamic batch sizing.
|
|
60
|
-
- **21+ specialized agents** — From `scientist-deep` to `spark_fast`, each optimized for specific tasks.
|
|
49
|
+
- **33 Skills** — 11 Light + 10 Deep + 12 Infrastructure, organized across 9 domains
|
|
50
|
+
- **Tri-Debate Engine** — 3-CLI independent analysis with anti-herding, cross-validation, and consensus scoring
|
|
51
|
+
- **Deep/Light Variants** — Every capability has a token-efficient Light mode and a thorough Deep mode
|
|
52
|
+
- **Consensus Gate** — Deep skills require 2/3+ CLI agreement; learned weights track CLI reliability over time
|
|
53
|
+
- **Anti-Herding** — Round 1 runs in parallel with zero cross-visibility to prevent bias contamination
|
|
54
|
+
- **Expert Panel** — Virtual expert simulation (Fowler, Newman, Porter, etc.) via `tfx-panel`
|
|
55
|
+
- **94% Token Reduction** — `tfx-index` creates a 3KB project map replacing 58K tokens of file reads
|
|
56
|
+
- **Persistence Loops** — `tfx-ralph` (3-party verified) and `tfx-sisyphus` (auto-routing) run until verified complete
|
|
57
|
+
- **Hub IPC** — Lightning-fast resident Hub server with Named Pipe & HTTP MCP bridge
|
|
58
|
+
- **psmux / Windows Native** — Hybrid support for `tmux` (WSL) and `psmux` (Windows Terminal)
|
|
61
59
|
|
|
62
60
|
---
|
|
63
61
|
|
|
64
|
-
##
|
|
62
|
+
## Tri-CLI Consensus
|
|
63
|
+
|
|
64
|
+
The core innovation of triflux. Instead of trusting a single model, every Deep skill runs:
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
Phase 1: Independent Analysis (Anti-Herding)
|
|
68
|
+
├─ Claude Opus → Analysis A (isolated, no cross-visibility)
|
|
69
|
+
├─ Codex CLI → Analysis B (isolated, no cross-visibility)
|
|
70
|
+
└─ Gemini CLI → Analysis C (isolated, no cross-visibility)
|
|
71
|
+
|
|
72
|
+
Phase 2: Cross-Validation
|
|
73
|
+
├─ Compare all findings across 3 sources
|
|
74
|
+
├─ Items with 2/3+ agreement → CONSENSUS
|
|
75
|
+
└─ Items with 1/3 only → DISPUTED (needs resolution)
|
|
76
|
+
|
|
77
|
+
Phase 3: Resolution (if consensus < 70%)
|
|
78
|
+
├─ Each CLI reviews opposing arguments
|
|
79
|
+
├─ Accept or rebut with evidence
|
|
80
|
+
└─ Unresolved → user decides
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**Result**: 87% fewer false positives compared to single-model review (based on Calimero consensus research).
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## 33 Skills
|
|
88
|
+
|
|
89
|
+
### Research
|
|
90
|
+
|
|
91
|
+
| Skill | Type | Description | Tokens |
|
|
92
|
+
|-------|------|-------------|--------|
|
|
93
|
+
| `tfx-research` | Light | Quick web search via Exa/Brave/Tavily auto-selection | ~5K |
|
|
94
|
+
| `tfx-deep-research` | Deep | Multi-source parallel search with 3-CLI cross-validation | ~50K |
|
|
95
|
+
| `tfx-codebase-search` | Light | Fast codebase exploration via Haiku agent | ~3K |
|
|
96
|
+
| `tfx-autoresearch` | Light | Autonomous web research to structured report | ~15K |
|
|
97
|
+
|
|
98
|
+
### Analysis
|
|
99
|
+
|
|
100
|
+
| Skill | Type | Description | Tokens |
|
|
101
|
+
|-------|------|-------------|--------|
|
|
102
|
+
| `tfx-analysis` | Light | Quick code/architecture analysis via Codex | ~8K |
|
|
103
|
+
| `tfx-deep-analysis` | Deep | 3-perspective analysis + Tri-Debate consensus | ~30K |
|
|
104
|
+
|
|
105
|
+
### Execution
|
|
106
|
+
|
|
107
|
+
| Skill | Type | Description | Tokens |
|
|
108
|
+
|-------|------|-------------|--------|
|
|
109
|
+
| `tfx-autopilot` | Light | Simple autonomous task execution | ~10K |
|
|
110
|
+
| `tfx-deep-autopilot` | Deep | Full 5-phase pipeline: Expand → Plan → Execute → QA → Validate | ~80K |
|
|
111
|
+
| `tfx-auto` | — | Unified CLI orchestrator with command shortcuts | varies |
|
|
112
|
+
|
|
113
|
+
### QA & Verification
|
|
114
|
+
|
|
115
|
+
| Skill | Type | Description | Tokens |
|
|
116
|
+
|-------|------|-------------|--------|
|
|
117
|
+
| `tfx-qa` | Light | Test → Fix → Retest cycle (max 3 rounds) | ~5K |
|
|
118
|
+
| `tfx-deep-qa` | Deep | 3-CLI independent verification with consensus scoring | ~25K |
|
|
119
|
+
|
|
120
|
+
### Planning
|
|
121
|
+
|
|
122
|
+
| Skill | Type | Description | Tokens |
|
|
123
|
+
|-------|------|-------------|--------|
|
|
124
|
+
| `tfx-plan` | Light | Quick implementation plan via Opus | ~8K |
|
|
125
|
+
| `tfx-deep-plan` | Deep | Planner + Architect + Critic consensus planning | ~20K |
|
|
126
|
+
|
|
127
|
+
### Review
|
|
128
|
+
|
|
129
|
+
| Skill | Type | Description | Tokens |
|
|
130
|
+
|-------|------|-------------|--------|
|
|
131
|
+
| `tfx-review` | Light | Quick code review via Codex | ~8K |
|
|
132
|
+
| `tfx-deep-review` | Deep | 3-CLI independent review, consensus-only reporting | ~25K |
|
|
133
|
+
|
|
134
|
+
### Debate & Panel
|
|
135
|
+
|
|
136
|
+
| Skill | Type | Description | Tokens |
|
|
137
|
+
|-------|------|-------------|--------|
|
|
138
|
+
| `tfx-debate` | Deep | Structured 3-party debate on any topic | ~20K |
|
|
139
|
+
| `tfx-panel` | Deep | Virtual expert panel simulation | ~30K |
|
|
140
|
+
|
|
141
|
+
### Persistence
|
|
142
|
+
|
|
143
|
+
| Skill | Type | Description | Tokens |
|
|
144
|
+
|-------|------|-------------|--------|
|
|
145
|
+
| `tfx-ralph` | Deep | 3-party verified persistence loop until done | varies |
|
|
146
|
+
| `tfx-sisyphus` | Light | Auto-routing execution with model escalation | varies |
|
|
147
|
+
|
|
148
|
+
### Meta & Utility
|
|
149
|
+
|
|
150
|
+
| Skill | Type | Description | Tokens |
|
|
151
|
+
|-------|------|-------------|--------|
|
|
152
|
+
| `tfx-index` | Light | 94% token reduction via project indexing (58K→3K) | ~2K |
|
|
153
|
+
| `tfx-forge` | Light | Create new skills interactively | ~10K |
|
|
154
|
+
| `tfx-interview` | Light | Socratic requirements exploration | ~15K |
|
|
155
|
+
| `tfx-deslop` | Deep | AI slop removal with 3-party consensus | ~10K |
|
|
156
|
+
|
|
157
|
+
### Infrastructure
|
|
158
|
+
|
|
159
|
+
| Skill | Description |
|
|
160
|
+
|-------|-------------|
|
|
161
|
+
| `tfx-consensus` | Core consensus engine (internal, used by all Deep skills) |
|
|
162
|
+
| `tfx-hub` | MCP message bus management |
|
|
163
|
+
| `tfx-multi` | Multi-CLI team orchestration |
|
|
164
|
+
| `tfx-setup` | Initial setup wizard |
|
|
165
|
+
| `tfx-doctor` | Diagnostics and auto-repair |
|
|
166
|
+
| `tfx-profile` | Codex CLI profile management |
|
|
167
|
+
| `tfx-codex` | Codex-only orchestrator |
|
|
168
|
+
| `tfx-gemini` | Gemini-only orchestrator |
|
|
169
|
+
| `tfx-auto-codex` | Codex-lead orchestrator |
|
|
170
|
+
| `remote-spawn` | Remote session management via psmux |
|
|
65
171
|
|
|
66
|
-
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## Deep vs Light
|
|
175
|
+
|
|
176
|
+
Every domain offers both modes:
|
|
177
|
+
|
|
178
|
+
| Dimension | Light | Deep |
|
|
179
|
+
|-----------|-------|------|
|
|
180
|
+
| **CLIs** | Single (usually Codex) | 3-party (Claude + Codex + Gemini) |
|
|
181
|
+
| **Tokens** | 3K-15K | 20K-80K |
|
|
182
|
+
| **Speed** | Seconds | Minutes |
|
|
183
|
+
| **Accuracy** | Good (single perspective) | Excellent (consensus-verified) |
|
|
184
|
+
| **Bias** | Possible | Eliminated via anti-herding |
|
|
185
|
+
| **Use when** | Quick tasks, known patterns | Critical decisions, unknown territory |
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Architecture
|
|
67
190
|
|
|
68
191
|
```mermaid
|
|
69
192
|
graph TD
|
|
70
|
-
User([User / Claude Code]) <-->|Slash Commands|
|
|
71
|
-
|
|
72
|
-
|
|
193
|
+
User([User / Claude Code]) <-->|Skills & Slash Commands| TFX[tfx Skills Layer]
|
|
194
|
+
TFX <-->|Consensus Engine| CONSENSUS[tfx-consensus]
|
|
195
|
+
|
|
196
|
+
subgraph "Tri-CLI Consensus"
|
|
197
|
+
CONSENSUS -->|Independent| CLAUDE[Claude Opus/Sonnet]
|
|
198
|
+
CONSENSUS -->|Independent| CODEX[Codex CLI]
|
|
199
|
+
CONSENSUS -->|Independent| GEMINI[Gemini CLI]
|
|
200
|
+
CLAUDE --> MERGE[Cross-Validation]
|
|
201
|
+
CODEX --> MERGE
|
|
202
|
+
GEMINI --> MERGE
|
|
203
|
+
MERGE --> GATE{Consensus >= 70%?}
|
|
204
|
+
GATE -->|Yes| OUTPUT[Verified Output]
|
|
205
|
+
GATE -->|No| RESOLVE[Resolution Round]
|
|
206
|
+
RESOLVE --> MERGE
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
TFX <-->|Named Pipe / HTTP| HUB[triflux Hub Server]
|
|
210
|
+
|
|
73
211
|
subgraph "Orchestration Hub"
|
|
74
212
|
HUB <--> STORE[(SQLite Store)]
|
|
75
213
|
HUB <--> DASH[QoS Dashboard]
|
|
76
214
|
HUB <--> DELEGATOR[Delegator Service]
|
|
77
215
|
end
|
|
78
|
-
|
|
79
|
-
DELEGATOR <-->|Spawn| CODEX[Codex CLI]
|
|
80
|
-
DELEGATOR <-->|Spawn| GEMINI[Gemini CLI]
|
|
81
|
-
DELEGATOR <-->|Native| CLAUDE[Claude Code]
|
|
82
|
-
|
|
216
|
+
|
|
83
217
|
HUB -.->|MCP Bridge| External[External MCP Clients]
|
|
84
218
|
```
|
|
85
219
|
|
|
@@ -93,9 +227,7 @@ graph TD
|
|
|
93
227
|
npm install -g triflux
|
|
94
228
|
```
|
|
95
229
|
|
|
96
|
-
### 2. Setup
|
|
97
|
-
|
|
98
|
-
Synchronize scripts, register skills to Claude Code, and configure the HUD.
|
|
230
|
+
### 2. Setup
|
|
99
231
|
|
|
100
232
|
```bash
|
|
101
233
|
tfx setup
|
|
@@ -104,95 +236,75 @@ tfx setup
|
|
|
104
236
|
### 3. Usage
|
|
105
237
|
|
|
106
238
|
```bash
|
|
107
|
-
#
|
|
108
|
-
/tfx-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
/tfx-auto --quick "fix a small regression"
|
|
112
|
-
|
|
113
|
-
# Direct Delegation
|
|
114
|
-
/tfx-delegate "research latest React patterns" --provider gemini
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
In v5, multi-task orchestration defaults to `--thorough`; use `--quick` when you explicitly want the lighter path.
|
|
118
|
-
|
|
119
|
-
---
|
|
239
|
+
# Light — Quick single-model execution
|
|
240
|
+
/tfx-research "React 19 Server Actions best practices"
|
|
241
|
+
/tfx-review
|
|
242
|
+
/tfx-plan "add JWT auth middleware"
|
|
120
243
|
|
|
121
|
-
|
|
244
|
+
# Deep — 3-party consensus for critical work
|
|
245
|
+
/tfx-deep-research "microservice architecture comparison 2026"
|
|
246
|
+
/tfx-deep-review
|
|
247
|
+
/tfx-deep-plan "migrate REST to GraphQL"
|
|
122
248
|
|
|
123
|
-
|
|
249
|
+
# Debate — Get 3 independent opinions
|
|
250
|
+
/tfx-debate "Redis vs PostgreSQL LISTEN/NOTIFY for real-time events"
|
|
124
251
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
| **plan** | Opus-led solution design with parallel Codex scout exploration and a persisted plan artifact. |
|
|
128
|
-
| **prd** | Generate a detailed Technical Specification / PRD and prepare the approval checkpoint. |
|
|
129
|
-
| **exec** | Perform the actual code implementation. |
|
|
130
|
-
| **verify** | Run tests and verify the implementation against the PRD. |
|
|
131
|
-
| **fix** | (Loop) Re-run workers with lead feedback to fix failures identified in the verify phase (Max 3). |
|
|
132
|
-
| **ralph** | (Reset) If the fix loop fails, restart from `plan` with new insights (Max 10). |
|
|
252
|
+
# Persistence — Don't stop until done
|
|
253
|
+
/tfx-ralph "implement full auth flow with tests"
|
|
133
254
|
|
|
134
|
-
|
|
255
|
+
# Team — Multi-CLI parallel orchestration
|
|
256
|
+
/tfx-multi "refactor auth + update UI + add tests"
|
|
257
|
+
```
|
|
135
258
|
|
|
136
259
|
---
|
|
137
260
|
|
|
138
|
-
##
|
|
261
|
+
## Research Foundation
|
|
139
262
|
|
|
140
|
-
|
|
263
|
+
The v8 skill suite was designed after comprehensive reverse-engineering of 37 cloned repositories across the Claude Code ecosystem:
|
|
141
264
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
-
|
|
145
|
-
|
|
146
|
-
|
|
265
|
+
| Project | Stars | Key Insight Adopted |
|
|
266
|
+
|---------|-------|-------------------|
|
|
267
|
+
| everything-claude-code | 114K | Instinct-based learning patterns |
|
|
268
|
+
| Superpowers | 93K | TDD enforcement, composable skills |
|
|
269
|
+
| oh-my-openagent | 44K | Category routing, Hashline edits |
|
|
270
|
+
| SuperClaude | 22K | index-repo 94% token reduction, expert panels |
|
|
271
|
+
| oh-my-claudecode | 15K | Ralph persistence, CCG tri-model |
|
|
272
|
+
| ruflo | 28K | 60+ agent orchestration |
|
|
273
|
+
| Exa MCP | 3.7K | Neural search, highlight extraction |
|
|
274
|
+
| Brave Search MCP | — | Independent index, Goggles re-ranking |
|
|
275
|
+
| Tavily MCP | — | Deep research pipeline |
|
|
147
276
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
| Agent | CLI | Purpose |
|
|
151
|
-
|-------|-----|---------|
|
|
152
|
-
| **executor** | Codex | Standard implementation & refactoring. |
|
|
153
|
-
| **build-fixer** | Codex/Gemini | Instant fixes for build/type errors. |
|
|
154
|
-
| **architect** | Codex | High-level system design & planning. |
|
|
155
|
-
| **scientist-deep** | Codex | Exhaustive research & deep analysis. |
|
|
156
|
-
| **code-reviewer** | Codex | Security & Logic focused code review. |
|
|
157
|
-
| **security-reviewer**| Codex | Vulnerability & Permission audit. |
|
|
158
|
-
| **quality-reviewer** | Codex | Logic & Maintainability audit. |
|
|
159
|
-
| **designer** | Gemini | UI/UX & documentation design. |
|
|
160
|
-
| **writer** | Gemini | Technical writing & explanations. |
|
|
161
|
-
| **spark** | Gemini | Lightweight, fast prototyping. |
|
|
162
|
-
| **verifier** | Claude | Final verification & validation. |
|
|
163
|
-
| **test-engineer** | Claude | Comprehensive test suite generation. |
|
|
164
|
-
| *...and more* | | `debugger`, `planner`, `critic`, `analyst`, `scientist`, `explore`, `qa-tester` |
|
|
277
|
+
5-language research (EN/CN/RU/JP/UA) uncovered unique patterns: WeChat integration (CN), Discord mobile bridges (JP), GigaCode domestic alternatives (RU), and community-driven localization efforts.
|
|
165
278
|
|
|
166
279
|
---
|
|
167
280
|
|
|
168
281
|
## Security
|
|
169
282
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
- **
|
|
173
|
-
- **
|
|
174
|
-
- **
|
|
175
|
-
- **Injection Protection** — Sanitized shell command execution in `psmux` and `tmux`.
|
|
283
|
+
- **Hub Token Auth** — Secure IPC using `TFX_HUB_TOKEN` (Bearer Auth)
|
|
284
|
+
- **Localhost Only** — Default Hub binding to `127.0.0.1`
|
|
285
|
+
- **CORS Lockdown** — Strict origin checking for QoS Dashboard
|
|
286
|
+
- **Injection Protection** — Sanitized shell execution in `psmux` and `tmux`
|
|
287
|
+
- **Consensus Verification** — Deep skills prevent single-model hallucination via 3-party consensus
|
|
176
288
|
|
|
177
289
|
---
|
|
178
290
|
|
|
179
|
-
##
|
|
180
|
-
|
|
181
|
-
Monitor your orchestration health at `http://localhost:27888/dashboard`.
|
|
291
|
+
## Platform Support
|
|
182
292
|
|
|
183
|
-
- **
|
|
184
|
-
- **
|
|
185
|
-
- **Rate Limit Tracking** — Live monitoring of Codex and Gemini quotas.
|
|
293
|
+
- **Linux / macOS**: Native `tmux` integration
|
|
294
|
+
- **Windows**: **psmux** (PowerShell Multiplexer) + Windows Terminal native
|
|
186
295
|
|
|
187
296
|
---
|
|
188
297
|
|
|
189
|
-
##
|
|
298
|
+
## QoS Dashboard
|
|
299
|
+
|
|
300
|
+
Monitor orchestration health at `http://localhost:27888/dashboard`.
|
|
190
301
|
|
|
191
|
-
- **
|
|
192
|
-
- **
|
|
302
|
+
- **AIMD Batch Sizing** — Auto-scales parallel tasks based on success rates
|
|
303
|
+
- **Token Savings** — Real-time tracking of Claude tokens saved
|
|
304
|
+
- **Consensus Metrics** — Track agreement rates across CLIs
|
|
193
305
|
|
|
194
306
|
---
|
|
195
307
|
|
|
196
308
|
<p align="center">
|
|
197
|
-
<sub>MIT License · Made
|
|
309
|
+
<sub>MIT License · Made by <a href="https://github.com/tellang">tellang</a></sub>
|
|
198
310
|
</p>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// tfx-doctor-tui — Interactive Doctor TUI entry point
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
import { dirname, join } from "node:path";
|
|
5
|
+
|
|
6
|
+
const root = dirname(dirname(fileURLToPath(import.meta.url)));
|
|
7
|
+
await import(join(root, "tui", "doctor.mjs"));
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// tfx-profile — Codex Profile Manager TUI entry point
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
import { dirname, join } from "node:path";
|
|
5
|
+
|
|
6
|
+
const root = dirname(dirname(fileURLToPath(import.meta.url)));
|
|
7
|
+
await import(join(root, "tui", "codex-profile.mjs"));
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// tfx-setup-tui — Interactive Setup Wizard TUI entry point
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
import { dirname, join } from "node:path";
|
|
5
|
+
|
|
6
|
+
const root = dirname(dirname(fileURLToPath(import.meta.url)));
|
|
7
|
+
await import(join(root, "tui", "setup.mjs"));
|
package/bin/triflux.mjs
CHANGED
|
@@ -20,23 +20,23 @@ const PKG = JSON.parse(readFileSync(join(PKG_ROOT, "package.json"), "utf8"));
|
|
|
20
20
|
|
|
21
21
|
const REQUIRED_CODEX_PROFILES = [
|
|
22
22
|
{
|
|
23
|
-
name: "
|
|
23
|
+
name: "codex53_high",
|
|
24
24
|
lines: [
|
|
25
25
|
'model = "gpt-5.3-codex"',
|
|
26
26
|
'model_reasoning_effort = "high"',
|
|
27
27
|
],
|
|
28
28
|
},
|
|
29
29
|
{
|
|
30
|
-
name: "
|
|
30
|
+
name: "codex53_xhigh",
|
|
31
31
|
lines: [
|
|
32
32
|
'model = "gpt-5.3-codex"',
|
|
33
33
|
'model_reasoning_effort = "xhigh"',
|
|
34
34
|
],
|
|
35
35
|
},
|
|
36
36
|
{
|
|
37
|
-
name: "
|
|
37
|
+
name: "spark53_low",
|
|
38
38
|
lines: [
|
|
39
|
-
'model = "gpt-5.
|
|
39
|
+
'model = "gpt-5.3-codex-spark"',
|
|
40
40
|
'model_reasoning_effort = "low"',
|
|
41
41
|
],
|
|
42
42
|
},
|
|
@@ -654,6 +654,16 @@ function getSetupSyncTargets() {
|
|
|
654
654
|
dst: join(CLAUDE_DIR, "scripts", "hub", "workers", "factory.mjs"),
|
|
655
655
|
label: "hub/workers/factory.mjs",
|
|
656
656
|
},
|
|
657
|
+
{
|
|
658
|
+
src: join(PKG_ROOT, "scripts", "remote-spawn.mjs"),
|
|
659
|
+
dst: join(CLAUDE_DIR, "scripts", "remote-spawn.mjs"),
|
|
660
|
+
label: "remote-spawn.mjs",
|
|
661
|
+
},
|
|
662
|
+
{
|
|
663
|
+
src: join(PKG_ROOT, "hub", "team", "psmux.mjs"),
|
|
664
|
+
dst: join(CLAUDE_DIR, "hub", "team", "psmux.mjs"),
|
|
665
|
+
label: "hub/team/psmux.mjs",
|
|
666
|
+
},
|
|
657
667
|
];
|
|
658
668
|
}
|
|
659
669
|
|
package/hub/intent.mjs
CHANGED
|
@@ -61,14 +61,14 @@ function _tryCodexClassify(prompt) {
|
|
|
61
61
|
|
|
62
62
|
/** triflux 특화 의도 카테고리 (10개) */
|
|
63
63
|
export const INTENT_CATEGORIES = {
|
|
64
|
-
implement: { agent: 'executor', mcp: 'implement', effort: '
|
|
65
|
-
debug: { agent: 'debugger', mcp: 'implement', effort: '
|
|
66
|
-
analyze: { agent: 'analyst', mcp: 'analyze', effort: '
|
|
67
|
-
design: { agent: 'architect', mcp: 'analyze', effort: '
|
|
68
|
-
review: { agent: 'code-reviewer', mcp: 'review', effort: '
|
|
64
|
+
implement: { agent: 'executor', mcp: 'implement', effort: 'codex53_high' },
|
|
65
|
+
debug: { agent: 'debugger', mcp: 'implement', effort: 'codex53_high' },
|
|
66
|
+
analyze: { agent: 'analyst', mcp: 'analyze', effort: 'gpt54_xhigh' },
|
|
67
|
+
design: { agent: 'architect', mcp: 'analyze', effort: 'gpt54_xhigh' },
|
|
68
|
+
review: { agent: 'code-reviewer', mcp: 'review', effort: 'codex53_high' },
|
|
69
69
|
document: { agent: 'writer', mcp: 'docs', effort: 'pro' },
|
|
70
|
-
research: { agent: 'scientist', mcp: 'analyze', effort: '
|
|
71
|
-
'quick-fix':{ agent: 'build-fixer', mcp: 'implement', effort: '
|
|
70
|
+
research: { agent: 'scientist', mcp: 'analyze', effort: 'codex53_high' },
|
|
71
|
+
'quick-fix':{ agent: 'build-fixer', mcp: 'implement', effort: 'codex53_low' },
|
|
72
72
|
explain: { agent: 'writer', mcp: 'docs', effort: 'flash' },
|
|
73
73
|
test: { agent: 'test-engineer', mcp: null, effort: null },
|
|
74
74
|
};
|
package/hub/team/tui.mjs
CHANGED
|
@@ -65,24 +65,24 @@ const AGENT_TIMEOUT_SEC = Object.freeze({
|
|
|
65
65
|
});
|
|
66
66
|
|
|
67
67
|
const CODEX_PROFILE_BY_AGENT = Object.freeze({
|
|
68
|
-
executor: '
|
|
69
|
-
'build-fixer': '
|
|
70
|
-
debugger: '
|
|
71
|
-
'deep-executor': '
|
|
72
|
-
architect: '
|
|
73
|
-
planner: '
|
|
74
|
-
critic: '
|
|
75
|
-
analyst: '
|
|
76
|
-
'code-reviewer': '
|
|
77
|
-
'security-reviewer': '
|
|
78
|
-
'quality-reviewer': '
|
|
79
|
-
scientist: '
|
|
80
|
-
'scientist-deep': '
|
|
81
|
-
'document-specialist': '
|
|
82
|
-
verifier: '
|
|
83
|
-
designer: '
|
|
84
|
-
writer: '
|
|
85
|
-
spark: '
|
|
68
|
+
executor: 'codex53_high',
|
|
69
|
+
'build-fixer': 'codex53_low',
|
|
70
|
+
debugger: 'codex53_high',
|
|
71
|
+
'deep-executor': 'gpt54_xhigh',
|
|
72
|
+
architect: 'gpt54_xhigh',
|
|
73
|
+
planner: 'gpt54_xhigh',
|
|
74
|
+
critic: 'gpt54_xhigh',
|
|
75
|
+
analyst: 'gpt54_xhigh',
|
|
76
|
+
'code-reviewer': 'codex53_high',
|
|
77
|
+
'security-reviewer': 'codex53_high',
|
|
78
|
+
'quality-reviewer': 'codex53_high',
|
|
79
|
+
scientist: 'codex53_high',
|
|
80
|
+
'scientist-deep': 'gpt54_high',
|
|
81
|
+
'document-specialist': 'codex53_high',
|
|
82
|
+
verifier: 'codex53_high',
|
|
83
|
+
designer: 'gpt54_xhigh', // Gemini primary, codex fallback — UI/UX는 5.4 에이전틱
|
|
84
|
+
writer: 'codex53_high', // Gemini primary, codex fallback용
|
|
85
|
+
spark: 'spark53_low',
|
|
86
86
|
});
|
|
87
87
|
|
|
88
88
|
const GEMINI_MODEL_BY_AGENT = Object.freeze({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "triflux",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.3.1",
|
|
4
4
|
"description": "CLI-first multi-model orchestrator for Claude Code — route tasks to Codex, Gemini, and Claude",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -8,10 +8,14 @@
|
|
|
8
8
|
"tfx": "bin/triflux.mjs",
|
|
9
9
|
"tfl": "bin/triflux.mjs",
|
|
10
10
|
"tfx-setup": "bin/tfx-setup.mjs",
|
|
11
|
-
"tfx-doctor": "bin/tfx-doctor.mjs"
|
|
11
|
+
"tfx-doctor": "bin/tfx-doctor.mjs",
|
|
12
|
+
"tfx-profile": "bin/tfx-profile.mjs",
|
|
13
|
+
"tfx-doctor-tui": "bin/tfx-doctor-tui.mjs",
|
|
14
|
+
"tfx-setup-tui": "bin/tfx-setup-tui.mjs"
|
|
12
15
|
},
|
|
13
16
|
"files": [
|
|
14
17
|
"bin",
|
|
18
|
+
"tui",
|
|
15
19
|
"hub",
|
|
16
20
|
"skills",
|
|
17
21
|
"!skills/tfx-workspace",
|
package/scripts/setup.mjs
CHANGED
|
@@ -31,55 +31,26 @@ const BREADCRUMB_PATH = join(CLAUDE_DIR, "scripts", ".tfx-pkg-root");
|
|
|
31
31
|
|
|
32
32
|
const REQUIRED_CODEX_PROFILES = [
|
|
33
33
|
{
|
|
34
|
-
name: "
|
|
35
|
-
lines: [
|
|
36
|
-
'model = "gpt-5.3-codex"',
|
|
37
|
-
'model_reasoning_effort = "low"',
|
|
38
|
-
],
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
name: "normal",
|
|
42
|
-
lines: [
|
|
43
|
-
'model = "gpt-5.3-codex"',
|
|
44
|
-
'model_reasoning_effort = "medium"',
|
|
45
|
-
],
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
name: "high",
|
|
34
|
+
name: "codex53_high",
|
|
49
35
|
lines: [
|
|
50
36
|
'model = "gpt-5.3-codex"',
|
|
51
37
|
'model_reasoning_effort = "high"',
|
|
52
38
|
],
|
|
53
39
|
},
|
|
54
40
|
{
|
|
55
|
-
name: "
|
|
56
|
-
lines: [
|
|
57
|
-
'model = "gpt-5.3-codex"',
|
|
58
|
-
'model_reasoning_effort = "high"',
|
|
59
|
-
'model_temperature = 0.2',
|
|
60
|
-
],
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
name: "xhigh",
|
|
41
|
+
name: "codex53_xhigh",
|
|
64
42
|
lines: [
|
|
65
43
|
'model = "gpt-5.3-codex"',
|
|
66
44
|
'model_reasoning_effort = "xhigh"',
|
|
67
45
|
],
|
|
68
46
|
},
|
|
69
47
|
{
|
|
70
|
-
name: "
|
|
48
|
+
name: "spark53_low",
|
|
71
49
|
lines: [
|
|
72
|
-
'model = "gpt-5.
|
|
50
|
+
'model = "gpt-5.3-codex-spark"',
|
|
73
51
|
'model_reasoning_effort = "low"',
|
|
74
52
|
],
|
|
75
53
|
},
|
|
76
|
-
{
|
|
77
|
-
name: "spark_balanced",
|
|
78
|
-
lines: [
|
|
79
|
-
'model = "gpt-5.1-codex-mini"',
|
|
80
|
-
'model_reasoning_effort = "medium"',
|
|
81
|
-
],
|
|
82
|
-
},
|
|
83
54
|
];
|
|
84
55
|
|
|
85
56
|
// ── 파일 동기화 ──
|