triflux 10.44.0 โ†’ 10.46.0

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 (203) hide show
  1. package/README.md +1 -1
  2. package/adapters/codex/skills/tfx-harness/SKILL.md +45 -9
  3. package/bin/tfx-live.mjs +1298 -100
  4. package/bin/triflux.mjs +9 -6
  5. package/config/routing-policy.json +1 -1
  6. package/hooks/codex-session-hook.mjs +67 -1
  7. package/hooks/cto-north-star-brief.mjs +3 -16
  8. package/hooks/error-context.mjs +3 -6
  9. package/hooks/hook-manager.mjs +1 -1
  10. package/hooks/hook-registry.json +0 -11
  11. package/hooks/keyword-rules.json +8 -4
  12. package/hooks/permission-safe-allow.mjs +36 -2
  13. package/hooks/session-start-fast.mjs +50 -1
  14. package/hooks/session-start-lake.mjs +3 -16
  15. package/hub/bridge.mjs +111 -5
  16. package/hub/dynamic-routing-engine.mjs +1 -1
  17. package/hub/gemini-adapter.mjs +29 -11
  18. package/hub/lib/memory-store.mjs +66 -30
  19. package/hub/lib/tfx-route-args.mjs +41 -4
  20. package/hub/pipe.mjs +10 -15
  21. package/hub/reflexion.mjs +0 -57
  22. package/hub/router.mjs +202 -24
  23. package/hub/schema.sql +1 -0
  24. package/hub/server.mjs +172 -93
  25. package/hub/store.mjs +106 -33
  26. package/hub/team/backend.mjs +4 -2
  27. package/hub/team/claude-daemon-control.mjs +2 -0
  28. package/hub/team/cli/commands/start/start-headless.mjs +2 -0
  29. package/hub/team/cli/commands/start/start-mux.mjs +24 -3
  30. package/hub/team/cli/services/runtime-mode.mjs +23 -9
  31. package/hub/team/codex-review.mjs +2 -3
  32. package/hub/team/conductor.mjs +80 -24
  33. package/hub/team/cto-auto-collect.mjs +2 -6
  34. package/hub/team/cto-pull.mjs +4 -0
  35. package/hub/team/dashboard-open.mjs +1 -0
  36. package/hub/team/execution-mode.mjs +38 -2
  37. package/hub/team/headless.mjs +493 -82
  38. package/hub/team/interactive-tui-transport.mjs +15 -1
  39. package/hub/team/launcher-template.mjs +19 -2
  40. package/hub/team/orchestrator.mjs +36 -9
  41. package/hub/team/pane.mjs +176 -14
  42. package/hub/team/psmux.mjs +79 -70
  43. package/hub/team/retry-state-machine.mjs +47 -16
  44. package/hub/team/session.mjs +57 -0
  45. package/hub/team/terminal-opener.mjs +68 -13
  46. package/hub/team/tui-viewer.mjs +65 -14
  47. package/hub/team/uds-orchestrator.mjs +384 -83
  48. package/hub/tools.mjs +6 -0
  49. package/hub/workers/codex-mcp.mjs +35 -6
  50. package/hud/cli-policy.mjs +69 -0
  51. package/hud/constants.mjs +20 -17
  52. package/hud/context-monitor.mjs +31 -21
  53. package/hud/hud-qos-status.mjs +81 -91
  54. package/hud/providers/claude.mjs +150 -84
  55. package/hud/providers/codex.mjs +10 -1
  56. package/hud/renderers.mjs +21 -59
  57. package/hud/utils.mjs +1 -15
  58. package/package.json +1 -1
  59. package/scripts/__tests__/keyword-detector.test.mjs +89 -1
  60. package/scripts/__tests__/release-governance.test.mjs +329 -12
  61. package/scripts/__tests__/release-publish-ancestor.test.mjs +67 -0
  62. package/scripts/__tests__/release-verify-wait.test.mjs +169 -0
  63. package/scripts/__tests__/resolve-auto-release.test.mjs +216 -0
  64. package/scripts/__tests__/skill-surface.test.mjs +6 -4
  65. package/scripts/__tests__/tfx-route-bash-node-parity.test.mjs +7 -5
  66. package/scripts/__tests__/tfx-route-node-entry.test.mjs +27 -21
  67. package/scripts/claude-login-detect.mjs +107 -25
  68. package/scripts/ensure-agy-hooks.mjs +31 -1
  69. package/scripts/keyword-detector.mjs +11 -1
  70. package/scripts/lib/agent-route-policy.mjs +47 -39
  71. package/scripts/lib/cli-agy.mjs +24 -4
  72. package/scripts/lib/codex-profile-config.mjs +45 -13
  73. package/scripts/lib/codex-recovery.sh +19 -0
  74. package/scripts/lib/gemini-profiles.mjs +113 -29
  75. package/scripts/lib/keyword-rules.mjs +12 -0
  76. package/scripts/lib/logger.mjs +60 -43
  77. package/scripts/lib/machine-profile.mjs +293 -0
  78. package/scripts/lib/mcp-health.mjs +44 -18
  79. package/scripts/notion-read.mjs +2 -1
  80. package/scripts/release/check-packages-mirror.mjs +53 -1
  81. package/scripts/release/lib.mjs +1 -2
  82. package/scripts/release/prepare.mjs +24 -9
  83. package/scripts/release/publish.mjs +16 -1
  84. package/scripts/release/resolve-auto-release.mjs +136 -0
  85. package/scripts/release/verify.mjs +74 -25
  86. package/scripts/remote-spawn.mjs +830 -32
  87. package/scripts/session-stale-cleanup.mjs +0 -1
  88. package/scripts/setup.mjs +487 -150
  89. package/scripts/sync-hub-mcp-settings.mjs +11 -3
  90. package/scripts/test-lock.mjs +15 -1
  91. package/scripts/tfx-gate-activate.mjs +4 -4
  92. package/scripts/tfx-route-post.mjs +90 -13
  93. package/scripts/tfx-route.sh +520 -141
  94. package/skills/merge-worktree/SKILL.md +3 -3
  95. package/skills/star-prompt/skill.json +1 -1
  96. package/skills/tfx-analysis/SKILL.md +8 -9
  97. package/skills/tfx-analysis/skill.json +1 -10
  98. package/skills/tfx-auto/SKILL.md +208 -50
  99. package/skills/tfx-auto/skill.json +2 -23
  100. package/skills/tfx-doctor/skill.json +0 -3
  101. package/skills/tfx-find/skill.json +0 -7
  102. package/skills/tfx-forge/SKILL.md +2 -2
  103. package/skills/tfx-forge/skill.json +0 -7
  104. package/skills/tfx-goal-clarify/skill.json +5 -0
  105. package/skills/tfx-harness/SKILL.md +26 -3
  106. package/skills/tfx-harness/skill.json +5 -0
  107. package/skills/tfx-hooks/SKILL.md +0 -2
  108. package/skills/tfx-hooks/skill.json +0 -3
  109. package/skills/tfx-hub/SKILL.md +1 -6
  110. package/skills/tfx-hub/skill.json +0 -3
  111. package/skills/tfx-index/skill.json +0 -6
  112. package/skills/tfx-interview/SKILL.md +0 -2
  113. package/skills/tfx-live/SKILL.md +131 -5
  114. package/skills/tfx-live/skill.json +0 -5
  115. package/skills/tfx-plan/SKILL.md +7 -8
  116. package/skills/tfx-plan/skill.json +1 -12
  117. package/skills/tfx-profile/SKILL.md +15 -13
  118. package/skills/tfx-profile/skill.json +0 -3
  119. package/skills/tfx-prune/SKILL.md +4 -6
  120. package/skills/tfx-qa/SKILL.md +7 -7
  121. package/skills/tfx-qa/skill.json +1 -11
  122. package/skills/tfx-ralph/SKILL.md +8 -11
  123. package/skills/tfx-remote/SKILL.md +2 -2
  124. package/skills/tfx-remote/skill.json +0 -3
  125. package/skills/tfx-research/SKILL.md +2 -2
  126. package/skills/tfx-research/skill.json +1 -16
  127. package/skills/tfx-review/SKILL.md +11 -11
  128. package/skills/tfx-review/skill.json +1 -11
  129. package/skills/tfx-setup/SKILL.md +5 -6
  130. package/skills/tfx-setup/skill.json +0 -3
  131. package/skills/tfx-ship/SKILL.md +43 -36
  132. package/skills/tfx-ship/skill.json +1 -9
  133. package/skills/tfx-wt/skill.json +0 -7
  134. package/tui/codex-profile.mjs +3 -3
  135. package/tui/gemini-profile.mjs +11 -24
  136. package/tui/monitor.mjs +1 -0
  137. package/tui/setup.mjs +7 -6
  138. package/scripts/headless-guard-fast.sh +0 -29
  139. package/scripts/headless-guard.mjs +0 -523
  140. package/skills/tfx-autopilot/SKILL.md +0 -51
  141. package/skills/tfx-autopilot/skill.json +0 -12
  142. package/skills/tfx-codex-swarm-workspace/iteration-1/benchmark.json +0 -75
  143. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/eval_metadata.json +0 -42
  144. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/grading.json +0 -39
  145. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/analysis.md +0 -87
  146. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/classification.md +0 -35
  147. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/commands.sh +0 -275
  148. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/routing.md +0 -56
  149. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/timing.json +0 -5
  150. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/grading.json +0 -39
  151. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/analysis.md +0 -92
  152. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/classification.md +0 -71
  153. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/commands.sh +0 -264
  154. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/routing.md +0 -113
  155. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/timing.json +0 -5
  156. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/eval_metadata.json +0 -32
  157. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/grading.json +0 -29
  158. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/analysis.md +0 -96
  159. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/classification.md +0 -38
  160. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/commands.sh +0 -151
  161. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/routing.md +0 -51
  162. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/timing.json +0 -5
  163. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/grading.json +0 -29
  164. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/analysis.md +0 -127
  165. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/classification.md +0 -57
  166. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/commands.sh +0 -129
  167. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/routing.md +0 -84
  168. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/timing.json +0 -5
  169. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/eval_metadata.json +0 -27
  170. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/grading.json +0 -24
  171. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/analysis.md +0 -98
  172. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/classification.md +0 -65
  173. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/commands.sh +0 -123
  174. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/routing.md +0 -66
  175. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/timing.json +0 -5
  176. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/grading.json +0 -20
  177. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/analysis.md +0 -88
  178. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/classification.md +0 -40
  179. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/commands.sh +0 -130
  180. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/routing.md +0 -61
  181. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/timing.json +0 -5
  182. package/skills/tfx-consensus/SKILL.md +0 -56
  183. package/skills/tfx-consensus/skill.json +0 -8
  184. package/skills/tfx-debate/SKILL.md +0 -60
  185. package/skills/tfx-debate/skill.json +0 -14
  186. package/skills/tfx-fullcycle/SKILL.md +0 -47
  187. package/skills/tfx-fullcycle/skill.json +0 -13
  188. package/skills/tfx-multi/SKILL.md +0 -45
  189. package/skills/tfx-multi/references/agent-wrapper-rules.md +0 -94
  190. package/skills/tfx-multi/references/thorough-pipeline.md +0 -105
  191. package/skills/tfx-multi/skill.json +0 -10
  192. package/skills/tfx-panel/SKILL.md +0 -60
  193. package/skills/tfx-panel/skill.json +0 -14
  194. package/skills/tfx-persist/SKILL.md +0 -63
  195. package/skills/tfx-persist/skill.json +0 -14
  196. package/skills/tfx-psmux-rules/SKILL.md +0 -41
  197. package/skills/tfx-psmux-rules/skill.json +0 -10
  198. package/skills/tfx-remote-setup/SKILL.md +0 -42
  199. package/skills/tfx-remote-setup/skill.json +0 -10
  200. package/skills/tfx-remote-spawn/SKILL.md +0 -52
  201. package/skills/tfx-remote-spawn/skill.json +0 -10
  202. package/skills/tfx-swarm/SKILL.md +0 -49
  203. package/skills/tfx-swarm/skill.json +0 -13
@@ -1,88 +0,0 @@
1
- # Analysis: Selective Spawn without SKILL.md Guidance
2
-
3
- > Generated: 2026-03-30
4
- > Eval: `selective-spawn-with-override` (eval_id: 2)
5
- > Variant: `without_skill`
6
-
7
- ## Task Summary
8
-
9
- **User request**: "issue 24ํ•˜๊ณ  28๋ฒˆ PRD๋งŒ ์ฝ”๋ฑ์Šค ์Šคํฐํ•ด์ค˜. ๋‘˜ ๋‹ค xhigh๋กœ ์„ธํŒ…ํ•˜๊ณ  ralph๋กœ ๋๊นŒ์ง€ ๋Œ๋ ค"
10
-
11
- **Decomposed requirements**:
12
- 1. Select only issues 24 and 28 from the 7 available PRDs
13
- 2. Override effort level to `xhigh` for both sessions
14
- 3. Use `$ralph` workflow (persist until complete) instead of default `$autopilot`
15
- 4. Spawn as Codex sessions (not Claude Code)
16
-
17
- ## Approach Without Skill Guidance
18
-
19
- Without the `tfx-codex-swarm` SKILL.md, the agent must rely on:
20
-
21
- ### Knowledge Sources Used
22
-
23
- | Source | What it provided |
24
- |--------|-----------------|
25
- | `.omc/codex-spawn/codex-prd-launcher.sh` | Existing launcher pattern: `codex exec --full-auto` with `-c` flag config overrides |
26
- | `.omc/codex-spawn/spawn-all.sh` | WT tab spawning pattern using `wt.exe -w new` with `new-tab` chaining |
27
- | `.omc/codex-spawn/prompt-{24,28}.md` | Existing prompt templates for these specific issues |
28
- | `~/.codex/config.toml` | Available profiles including `codex53_xhigh` with exact model/effort settings |
29
- | `.omx/plans/prd-issue-{24,28}.md` | Full PRD content for classification and prompt generation |
30
- | `tui/codex-profile.mjs` | Effort levels: `low`, `medium`, `high`, `xhigh` |
31
- | `hub/workers/codex-mcp.mjs` | Codex MCP API surface: model, profile, approvalPolicy, config options |
32
- | `skills/tfx-ralph/SKILL.md` | Ralph = tfx-persist alias, Tri-Verified Persistence Loop, tier degradation |
33
- | `.omx/tmux-hook.json` | OMX tmux injection supports ralph/ultrawork/team modes |
34
-
35
- ### What the Skill Would Have Provided
36
-
37
- The `tfx-codex-swarm` SKILL.md provides a structured 10-step workflow:
38
-
39
- 1. **Task file scan** with defined search paths (`.omx/plans/*.md`, `.omc/plans/*.md`, `docs/prd/*.md`)
40
- 2. **AskUserQuestion-based selection** UI with "์ „์ฒด/์„ ํƒ/์ตœ๊ทผ" options
41
- 3. **Automatic type classification** table (implement/investigate/refactor)
42
- 4. **Size-based profile routing** with explicit thresholds (XL/L/M/S)
43
- 5. **Profile-to-flag mapping** table
44
- 6. **Worktree naming convention** (`.codex-swarm/wt-issue-{N}`)
45
- 7. **Prompt template** structure
46
- 8. **psmux session + Codex launch** commands
47
- 9. **WT tab attach** with psmux-first and wt.exe fallback
48
- 10. **Post-spawn management** (status, merge, cleanup)
49
-
50
- ### Decisions Made Without Skill
51
-
52
- | Decision | Without Skill | With Skill |
53
- |----------|--------------|------------|
54
- | PRD location | Found via `Glob **/*prd*` | Defined scan paths in Step 1 |
55
- | Selection method | Direct from user request ("24ํ•˜๊ณ  28๋ฒˆ") | AskUserQuestion UI (Step 2) |
56
- | Classification | Manual PRD content analysis | Keyword table lookup (Step 3) |
57
- | Profile routing | Matched user "xhigh" to `codex53_xhigh` in config.toml | Size assessment -> routing table -> override flow (Step 4) |
58
- | Worktree path | Copied `.codex-swarm/wt-issue-{N}` from existing patterns | Defined in Step 5 |
59
- | Prompt structure | Based on existing `.omc/codex-spawn/prompt-{24,28}.md` | Template in Step 6 |
60
- | Execution mode | `codex` interactive (not `codex exec`) for OMX skill compat | Explicit in Step 7 note |
61
- | WT attach | psmux attach + wt.exe fallback from spawn-all.sh | Defined in Step 8 |
62
-
63
- ## Critical Difference: `codex` vs `codex exec`
64
-
65
- The existing `codex-prd-launcher.sh` uses `codex exec --full-auto` (non-interactive). However, this is **incompatible with OMX skills** like `$ralph`. The SKILL.md Step 7 explicitly notes:
66
-
67
- > "Codex ๋Œ€ํ™”์‹ ๋ชจ๋“œ ์‹คํ–‰ -- OMX ์Šคํ‚ฌ($plan, $autopilot ๋“ฑ)์ด ๋™์ž‘ํ•˜๋ ค๋ฉด ๋Œ€ํ™”์‹ ํ•„์ˆ˜"
68
- > "codex exec(๋น„๋Œ€ํ™”์‹)์—์„œ๋Š” OMX $skill์ด ํŠธ๋ฆฌ๊ฑฐ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋ฐ˜๋“œ์‹œ ๋Œ€ํ™”์‹์œผ๋กœ ์‹คํ–‰"
69
-
70
- Without skill guidance, an agent might incorrectly use `codex exec --full-auto` (copying the launcher pattern), which would silently prevent `$ralph` from activating. The without_skill variant here correctly uses interactive `codex` (without `exec`) because the `$ralph` requirement was analyzed against the tfx-ralph SKILL.md.
71
-
72
- ## Assertion Compliance
73
-
74
- Per `eval_metadata.json`:
75
-
76
- | Assertion | Status | Evidence |
77
- |-----------|--------|----------|
78
- | `only-2-selected` | PASS | commands.sh contains only issue-24 and issue-28. No references to 25, 26, 27, 29, 30. Exactly 2 `git worktree add`, 2 `psmux new-session`, 2 `psmux send-keys` |
79
- | `xhigh-override` | PASS | routing.md shows `codex53_xhigh` for both. commands.sh uses `model_reasoning_effort="xhigh"` in both send-keys commands |
80
- | `ralph-skill` | PASS | Prompts contain "$ralph ์Šคํ‚ฌ๋กœ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต ์‹คํ–‰ํ•˜์„ธ์š”". classification.md shows `$ralph (user override)` |
81
- | `worktree-2-only` | PASS | commands.sh has exactly 2 `git worktree add` commands (wt-issue-24, wt-issue-28) |
82
-
83
- ## Risk Notes
84
-
85
- 1. **Interactive mode requirement**: Without SKILL.md, an agent could default to `codex exec` from the existing launcher, breaking `$ralph` activation
86
- 2. **Profile existence**: `codex53_xhigh` must exist in `~/.codex/config.toml` -- verified present
87
- 3. **OMX tmux hook**: `.omx/tmux-hook.json` confirms ralph is in `allowed_modes`, so tmux injection will function
88
- 4. **Tier degradation**: `$ralph` (= tfx-persist) has a 3-tier degradation chain. If psmux/Hub/Codex are unavailable, it falls back to Tier 3 (Claude Agent only). The commands assume Tier 1 (full stack available)
@@ -1,40 +0,0 @@
1
- # Codex Swarm - PRD Classification (Selective: Issue 24, 28)
2
-
3
- > Generated: 2026-03-30
4
- > Source: `.omx/plans/prd-issue-{24,28}.md` (2 PRDs selected from 7 total)
5
- > User directive: "issue 24ํ•˜๊ณ  28๋ฒˆ PRD๋งŒ ์ฝ”๋ฑ์Šค ์Šคํฐํ•ด์ค˜. ๋‘˜ ๋‹ค xhigh๋กœ ์„ธํŒ…ํ•˜๊ณ  ralph๋กœ ๋๊นŒ์ง€ ๋Œ๋ ค"
6
- > Mode: without_skill (no SKILL.md guidance)
7
-
8
- ## Selection Filter
9
-
10
- User explicitly requested **only issue 24 and 28**. Issues 25, 26, 27, 29, 30 are excluded.
11
-
12
- ## Classification
13
-
14
- | # | PRD File | Type | Keywords Found | OMX Skill |
15
- |---|----------|------|----------------|-----------|
16
- | 24 | `prd-issue-24-remote-spawn-file-transfer.md` | **implement** | "์ถ”๊ฐ€", "๋ณ€๊ฒฝ", "์ „์†ก" | `$ralph` (user override) |
17
- | 28 | `prd-issue-28-headless-guard-spawn-deadlock.md` | **implement** | "๋ณ€๊ฒฝ", "๊ฐœ์„ ", "์ถ”๊ฐ€" | `$ralph` (user override) |
18
-
19
- ## Classification Logic (without SKILL.md)
20
-
21
- Without skill guidance, classification is inferred from PRD content analysis:
22
-
23
- - **Issue 24**: PRD describes adding a file-transfer phase to `remote-spawn.mjs`. Contains action words "์ถ”๊ฐ€" (add), "๋ณ€๊ฒฝ" (change). Clear implementation task.
24
- - **Issue 28**: PRD describes improving `headless-guard.mjs` denial messages and adding regression tests. Contains "๋ณ€๊ฒฝ" (change), "๊ฐœ์„ " (improve), "์ถ”๊ฐ€" (add). Clear implementation task.
25
-
26
- Both would auto-classify as **implement** under normal routing, which maps to `$plan -> $autopilot`. However, the user explicitly requested `$ralph` (persist until done), overriding the default skill assignment for both tasks.
27
-
28
- ## User Override Summary
29
-
30
- | Override | Default | Applied |
31
- |----------|---------|---------|
32
- | Task selection | all 7 PRDs | **2 PRDs only** (24, 28) |
33
- | OMX skill | `$plan -> $autopilot` | **`$ralph`** (๋๊นŒ์ง€ ๋Œ๋ ค) |
34
- | Profile/effort | auto-routed per size | **xhigh forced** (๋‘˜ ๋‹ค xhigh) |
35
-
36
- ## Summary
37
-
38
- - **2 implement** tasks selected: issues 24, 28
39
- - **5 excluded**: issues 25, 26, 27, 29, 30
40
- - **Skill override**: `$ralph` for both (user: "ralph๋กœ ๋๊นŒ์ง€ ๋Œ๋ ค")
@@ -1,130 +0,0 @@
1
- #!/bin/bash
2
- # commands.sh โ€” Codex selective spawn: Issue 24, 28 only
3
- # Profile: codex53_xhigh | Skill: $ralph | Mode: full-auto
4
- # Generated: 2026-03-30 (without_skill variant)
5
- #
6
- # DO NOT EXECUTE DIRECTLY โ€” this is a generated reference.
7
- # The commands below show what WOULD be executed.
8
- set -euo pipefail
9
-
10
- PROJ_DIR="/c/Users/SSAFY/Desktop/Projects/cli/triflux"
11
- BASH_EXE='C:\Program Files\Git\bin\bash.exe'
12
- SWARM_DIR="$PROJ_DIR/.codex-swarm"
13
-
14
- # ============================================================
15
- # Step 1: Worktree Creation (2 worktrees only)
16
- # ============================================================
17
-
18
- cd "$PROJ_DIR"
19
-
20
- git worktree add "$SWARM_DIR/wt-issue-24" -b codex/issue-24 2>/dev/null || \
21
- git worktree add "$SWARM_DIR/wt-issue-24" codex/issue-24
22
-
23
- git worktree add "$SWARM_DIR/wt-issue-28" -b codex/issue-28 2>/dev/null || \
24
- git worktree add "$SWARM_DIR/wt-issue-28" codex/issue-28
25
-
26
- # ============================================================
27
- # Step 2: Copy PRD files to worktrees
28
- # ============================================================
29
-
30
- mkdir -p "$SWARM_DIR/wt-issue-24/.omx/plans"
31
- cp "$PROJ_DIR/.omx/plans/prd-issue-24-remote-spawn-file-transfer.md" \
32
- "$SWARM_DIR/wt-issue-24/.omx/plans/"
33
-
34
- mkdir -p "$SWARM_DIR/wt-issue-28/.omx/plans"
35
- cp "$PROJ_DIR/.omx/plans/prd-issue-28-headless-guard-spawn-deadlock.md" \
36
- "$SWARM_DIR/wt-issue-28/.omx/plans/"
37
-
38
- # ============================================================
39
- # Step 3: Generate Prompts (with $ralph skill directive)
40
- # ============================================================
41
-
42
- mkdir -p "$SWARM_DIR/prompts"
43
-
44
- cat > "$SWARM_DIR/prompts/prompt-24.md" << 'PROMPT_EOF'
45
- triflux ํ”„๋กœ์ ํŠธ์˜ PRD๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
46
-
47
- PRD ํŒŒ์ผ์„ ๋จผ์ € ์ฝ์œผ์„ธ์š”: .omx/plans/prd-issue-24-remote-spawn-file-transfer.md
48
-
49
- ์ž‘์—… ์ˆœ์„œ:
50
- 1. PRD ํŒŒ์ผ์„ ์ฝ๊ณ  ์š”๊ตฌ์‚ฌํ•ญ์„ ํŒŒ์•…ํ•˜์„ธ์š”
51
- 2. $ralph ์Šคํ‚ฌ๋กœ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต ์‹คํ–‰ํ•˜์„ธ์š”. ๋ฉˆ์ถ”์ง€ ๋งˆ์„ธ์š”.
52
- 3. ๊ตฌํ˜„ ํ›„ ๊ด€๋ จ ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  npm test๋กœ ๊ฒ€์ฆํ•˜์„ธ์š”
53
- 4. ๋ชจ๋“  acceptance criteria๋ฅผ ์ถฉ์กฑํ•  ๋•Œ๊นŒ์ง€ ๊ณ„์†ํ•˜์„ธ์š”
54
-
55
- ํ•ต์‹ฌ ์š”๊ตฌ์‚ฌํ•ญ:
56
- - remote-spawn์—์„œ --handoff ํŒŒ์ผ๊ณผ ์ฐธ์กฐ๋œ ํŒŒ์ผ์„ ์›๊ฒฉ ํ˜ธ์ŠคํŠธ๋กœ ์ „์†ก
57
- - ์ „์†ก ๋Œ€์ƒ์€ ๋ช…์‹œ์ ์ด๊ณ  ๊ฒฝ๊ณ„๊ฐ€ ๋ช…ํ™•ํ•ด์•ผ ํ•จ
58
- - MAX_HANDOFF_BYTES ๋ฐ ๋กœ์ปฌ ๊ฒ€์ฆ ๋™์ž‘ ์œ ์ง€
59
-
60
- ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ:
61
- - triflux: Claude Code์šฉ ๋ฉ€ํ‹ฐ๋ชจ๋ธ CLI ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ดํ„ฐ
62
- - ์–ธ์–ด: JavaScript/ESM (Node.js), ํ…Œ์ŠคํŠธ: npm test
63
- - ํ•ต์‹ฌ ํŒŒ์ผ: scripts/remote-spawn.mjs
64
- PROMPT_EOF
65
-
66
- cat > "$SWARM_DIR/prompts/prompt-28.md" << 'PROMPT_EOF'
67
- triflux ํ”„๋กœ์ ํŠธ์˜ PRD๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
68
-
69
- PRD ํŒŒ์ผ์„ ๋จผ์ € ์ฝ์œผ์„ธ์š”: .omx/plans/prd-issue-28-headless-guard-spawn-deadlock.md
70
-
71
- ์ž‘์—… ์ˆœ์„œ:
72
- 1. PRD ํŒŒ์ผ์„ ์ฝ๊ณ  ์š”๊ตฌ์‚ฌํ•ญ์„ ํŒŒ์•…ํ•˜์„ธ์š”
73
- 2. $ralph ์Šคํ‚ฌ๋กœ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต ์‹คํ–‰ํ•˜์„ธ์š”. ๋ฉˆ์ถ”์ง€ ๋งˆ์„ธ์š”.
74
- 3. ๊ตฌํ˜„ ํ›„ ๊ด€๋ จ ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  npm test๋กœ ๊ฒ€์ฆํ•˜์„ธ์š”
75
- 4. ๋ชจ๋“  acceptance criteria๋ฅผ ์ถฉ์กฑํ•  ๋•Œ๊นŒ์ง€ ๊ณ„์†ํ•˜์„ธ์š”
76
-
77
- ํ•ต์‹ฌ ์š”๊ตฌ์‚ฌํ•ญ:
78
- - headless-guard์˜ ๊ฑฐ๋ถ€ ๋ฉ”์‹œ์ง€๋ฅผ ์•ก์…˜ ์ง€ํ–ฅ์ ์œผ๋กœ ๊ฐœ์„ 
79
- - ๋ฐ”์ดํŒจ์Šค(TFX_ALLOW_DIRECT_CLI=1)์™€ ์Šน์ธ๋œ headless ๋ช…๋ น์„ ๊ฐ™์€ ์‘๋‹ต์— ํ‘œ์‹œ
80
- - ๊ฐ€๋“œ ๊ฒฐ์ • ๋งคํŠธ๋ฆญ์Šค์— ๋Œ€ํ•œ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€
81
-
82
- ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ:
83
- - triflux: Claude Code์šฉ ๋ฉ€ํ‹ฐ๋ชจ๋ธ CLI ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ดํ„ฐ
84
- - ์–ธ์–ด: JavaScript/ESM (Node.js), ํ…Œ์ŠคํŠธ: npm test
85
- - ํ•ต์‹ฌ ํŒŒ์ผ: scripts/headless-guard.mjs
86
- PROMPT_EOF
87
-
88
- # ============================================================
89
- # Step 4: psmux Session Creation + Codex Launch
90
- # ============================================================
91
-
92
- # --- Issue 24: remote-spawn file transfer ---
93
- psmux new-session --name "codex-swarm-24" --dir "$SWARM_DIR/wt-issue-24"
94
-
95
- psmux send-keys --target "codex-swarm-24:0" \
96
- "codex -c 'model=\"gpt-5.3-codex\"' -c 'model_reasoning_effort=\"xhigh\"' \"\$(cat $SWARM_DIR/prompts/prompt-24.md)\"" Enter
97
-
98
- # --- Issue 28: headless-guard spawn deadlock ---
99
- psmux new-session --name "codex-swarm-28" --dir "$SWARM_DIR/wt-issue-28"
100
-
101
- psmux send-keys --target "codex-swarm-28:0" \
102
- "codex -c 'model=\"gpt-5.3-codex\"' -c 'model_reasoning_effort=\"xhigh\"' \"\$(cat $SWARM_DIR/prompts/prompt-28.md)\"" Enter
103
-
104
- # ============================================================
105
- # Step 5: WT Tab Attach (2 tabs in single window)
106
- # ============================================================
107
-
108
- # psmux attach ๋ฐฉ์‹ (์šฐ์„ )
109
- psmux attach --session "codex-swarm-24" --wt-new-window
110
- psmux attach --session "codex-swarm-28" --wt-tab
111
-
112
- # wt.exe fallback (psmux attach ๋ถˆ๊ฐ€ ์‹œ)
113
- # wt.exe -w new \
114
- # --title 'I24-FileTransfer' -d "$SWARM_DIR/wt-issue-24" "$BASH_EXE" -c "psmux attach codex-swarm-24" \; \
115
- # new-tab --title 'I28-GuardDeadlock' -d "$SWARM_DIR/wt-issue-28" "$BASH_EXE" -c "psmux attach codex-swarm-28"
116
-
117
- # ============================================================
118
- # Step 6: Status Report
119
- # ============================================================
120
-
121
- echo ""
122
- echo "=== Codex Selective Spawn Complete ==="
123
- echo ""
124
- echo "| # | Task | Type | OMX Skill | Profile | Worktree | Session |"
125
- echo "|---|------------------|-----------|-----------|----------------|--------------|-----------------|"
126
- echo "| 24 | file-transfer | implement | \$ralph | codex53_xhigh | wt-issue-24 | codex-swarm-24 |"
127
- echo "| 28 | guard-deadlock | implement | \$ralph | codex53_xhigh | wt-issue-28 | codex-swarm-28 |"
128
- echo ""
129
- echo "Sessions: 2 | Profile: codex53_xhigh | Skill: \$ralph | Mode: full-auto"
130
- echo "Excluded: issues 25, 26, 27, 29, 30"
@@ -1,61 +0,0 @@
1
- # Codex Swarm - Profile Routing (Selective: Issue 24, 28 with xhigh override)
2
-
3
- > Generated: 2026-03-30
4
- > Mode: without_skill (no SKILL.md guidance)
5
-
6
- ## Size Assessment
7
-
8
- | # | PRD File | Lines | Affected Files | High-cost Keywords | Dependencies | Size |
9
- |---|----------|-------|----------------|-------------------|--------------|------|
10
- | 24 | prd-issue-24 | 73 | 4 (`remote-spawn.mjs`, handoff, scp, staging) | 0 | none | **L** |
11
- | 28 | prd-issue-28 | 69 | 4 (`headless-guard.mjs`, `hub/team/psmux.mjs`, codex, gemini) | 0 | none | **L** |
12
-
13
- Both PRDs fall in the **L (standard)** range.
14
-
15
- ## Default Routing (what auto-routing would produce)
16
-
17
- Under normal routing for L-size implement tasks:
18
-
19
- | # | Task | Size | Type | Auto Profile | Auto Flags |
20
- |---|------|------|------|-------------|------------|
21
- | 24 | file-transfer | L | implement | `codex53_high` | `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="high"'` |
22
- | 28 | guard-deadlock | L | implement | `codex53_high` | `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="high"'` |
23
-
24
- ## Applied Routing (after user xhigh override)
25
-
26
- User directive: "๋‘˜ ๋‹ค xhigh๋กœ ์„ธํŒ…ํ•˜๊ณ " overrides the auto-routed `codex53_high` to `codex53_xhigh`.
27
-
28
- | # | Task | Size | Type | Profile | Codex Flags |
29
- |---|------|------|------|---------|-------------|
30
- | 24 | file-transfer | L | implement | **`codex53_xhigh`** | `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="xhigh"'` |
31
- | 28 | guard-deadlock | L | implement | **`codex53_xhigh`** | `-c 'model="gpt-5.3-codex"' -c 'model_reasoning_effort="xhigh"'` |
32
-
33
- ### Profile Resolution
34
-
35
- `codex53_xhigh` maps to the existing Codex config profile `[profiles.codex53_xhigh]`:
36
- ```toml
37
- [profiles.codex53_xhigh]
38
- model = "gpt-5.3-codex"
39
- model_reasoning_effort = "xhigh"
40
- ```
41
-
42
- This profile exists in `~/.codex/config.toml`, so either `-c` inline flags or `--profile codex53_xhigh` can be used.
43
-
44
- ## Execution Defaults
45
-
46
- | Setting | Value | Note |
47
- |---------|-------|------|
48
- | Mode | `--full-auto` | Sandbox auto-approve (YOLO) |
49
- | Worktree | enabled | Per-session independent worktree |
50
- | psmux | enabled | Session management via send-keys |
51
- | WT | 2 tabs in single window | Only 2 sessions (not 7) |
52
- | OMX skill | `$ralph` | Persist loop until task fully complete |
53
-
54
- ## Cost / Duration Estimate
55
-
56
- | Factor | Value |
57
- |--------|-------|
58
- | Model | gpt-5.3-codex (SWE-Bench 72%, Terminal-Bench 77%) |
59
- | Effort | xhigh (maximum reasoning, slowest) |
60
- | Sessions | 2 concurrent |
61
- | Expected duration | 15-45 min per session (xhigh adds ~2-3x vs high) |
@@ -1,5 +0,0 @@
1
- {
2
- "total_tokens": 65928,
3
- "duration_ms": 259460,
4
- "total_duration_seconds": 259.5
5
- }
@@ -1,56 +0,0 @@
1
- ---
2
- name: tfx-consensus
3
- description: >
4
- DEPRECATED โ€” tfx-auto consensus root ๋กœ ํ†ตํ•ฉ๋จ. `/tfx-auto --mode consensus` ๊ฐ€ canonical entrypoint ๋‹ค.
5
- Phase 4a ๋ถ€ํ„ฐ consensus/debate/panel ์€ ๊ฐ™์€ ์—”์ง„ family ๋ฅผ ๊ณต์œ ํ•˜๊ณ , ์ฐจ์ด๋Š” `--shape` ์™€ renderer ์—๋งŒ ๋‚จ๊ธด๋‹ค.
6
- Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ ์˜ˆ์ •.
7
- deprecated: true
8
- superseded-by: tfx-auto
9
- triggers: [consensus, ํ•ฉ์˜]
10
- argument-hint: "<๋ถ„์„ ์ฃผ์ œ ๋˜๋Š” ์ปจํ…์ŠคํŠธ โ€” tfx-auto ๋กœ passthrough>"
11
- ---
12
-
13
- # tfx-consensus (DEPRECATED โ†’ tfx-auto alias)
14
-
15
- > DEPRECATED. `/tfx-auto --mode consensus` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ.
16
- > `shape=consensus` ๊ฐ€ ๊ธฐ๋ณธ๊ฐ’์ด๋ฏ€๋กœ ์ถ”๊ฐ€ `--shape` ์—†์ด ๊ธฐ์กด ์˜๋ฏธ๋ฅผ ์œ ์ง€ํ•œ๋‹ค.
17
-
18
- ## ๋™์ž‘
19
-
20
- canonical ์œ„์ž„ **์ด์ „** ์— ์•„๋ž˜ bash ๋ธ”๋ก์„ ํ•œ ๋ฒˆ ์‹คํ–‰ํ•œ๋‹ค. Phase 5 (v11) ๋ฌผ๋ฆฌ ์‚ญ์ œ ๊ฒŒ์ดํŠธ๋Š” `.omc/state/alias-usage.log` ์˜ 7์ผ zero-usage ๊ฒ€์ฆ์— ์˜์กด โ€” ์ด logging ์ด ๋น ์ง€๋ฉด ๊ฒŒ์ดํŠธ๊ฐ€ ์˜์˜ ์—ด๋ฆฌ์ง€ ์•Š๋Š”๋‹ค.
21
-
22
- ```bash
23
- mkdir -p .omc/state
24
- echo "[deprecated] tfx-consensus -> use: tfx-auto --mode consensus" >&2
25
- echo "[DEPRECATED] tfx-consensus โ€” see tfx-auto --mode consensus"
26
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) tfx-consensus -> tfx-auto --mode consensus" >> .omc/state/alias-usage.log
27
- ```
28
-
29
- 1. ์œ„ bash ๋ธ”๋ก ์‹คํ–‰ (stderr ๊ฒฝ๊ณ  + stdout `[DEPRECATED]` ๋งˆ์ปค + alias-usage.log append).
30
- 2. ARGUMENTS ์ „์ฒด ์•ž์— `--mode consensus` ๋ฅผ prepend ํ•˜์—ฌ `Skill("tfx-auto")` ํ˜ธ์ถœ.
31
- 3. `--shape` ๋ฏธ์ง€์ • ์‹œ ๊ธฐ๋ณธ๊ฐ’์€ `consensus` ๋‹ค. `--analysis-prompt-file`, `--cli-set`, `--resolution-threshold` ๊ฐ™์€ ํ•ฉ์˜ ์ธ์ž๋Š” ๊ทธ๋Œ€๋กœ passthrough ํ•œ๋‹ค.
32
-
33
- ## ๋“ฑ๊ฐ€ ํ”Œ๋ž˜๊ทธ
34
-
35
- `--mode consensus`
36
-
37
- ๋™๋“ฑํ•œ ๋ช…์‹œ ํ‘œํ˜„:
38
- - `/tfx-auto "<topic>" --mode consensus`
39
- - `/tfx-auto "<topic>" --mode consensus --shape consensus`
40
-
41
- ## ์ด alias ์˜ ์˜๋ฏธ
42
-
43
- tfx-consensus ๋Š” ์—ฌ์ „ํžˆ consensus family ์˜ canonical semantics ๋ฅผ ๋Œ€ํ‘œํ•˜์ง€๋งŒ, ๋ณ„๋„ ์—”์ง„์œผ๋กœ ์œ ์ง€ํ•˜์ง€ ์•Š๋Š”๋‹ค. Phase 4a ๋ถ€ํ„ฐ ๊ณตํ†ต orchestration, participant ์ƒํƒœ, artifact ๊ฒฝ๋กœ, `meta_judgment` ์Šคํ‚ค๋งˆ๋ฅผ `tfx-auto --mode consensus` ๊ฐ€ ์†Œ์œ ํ•œ๋‹ค.
44
-
45
- ๊ณตํ†ต ๊ณ„์•ฝ:
46
- - Triflux anti-bias contract: `triad`๋Š” Claude/Opus counter-bias outvoice + Codex implementation/reality check + Antigravity product/UX auxiliary ๊ด€์ ์„ ๋ณด์กดํ•œ๋‹ค. Claude/Opus๋Š” ํ•ฉ์˜์—์„œ minority/dispute๋ฅผ ์ง€์šฐ๋Š” ์ตœ์ข… ์‹ฌํŒ์ด ์•„๋‹ˆ๋ผ ๋ฐ˜๋ก /์œ„ํ—˜/ํ•„์š” ์ฆ๊ฑฐ๋ฅผ ๋ช…์‹œํ•˜๋Š” outvoice๋‹ค.
47
- - artifact ๊ฒฝ๋กœ: `.omc/artifacts/consensus/<session-id>/consensus.{md,json}`
48
- - ๊ณตํ†ต ๋ฉ”ํƒ€ ์œ ํ‹ธ: `hub/team/consensus-meta.mjs`
49
- - ๊ณตํ†ต root ๋ฉ”ํƒ€: `mode`, `shape`, `topic`, `cli_set`, `participants`, `status`
50
-
51
- ## ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
52
-
53
- | ๊ธฐ์กด ํ˜ธ์ถœ | ์ƒˆ ํ˜ธ์ถœ |
54
- |----------|---------|
55
- | `/tfx-consensus "์ด PR merge ๊ฐ€๋Šฅ?"` | `/tfx-auto "์ด PR merge ๊ฐ€๋Šฅ?" --mode consensus` |
56
- | `/tfx-consensus "ํ•ฉ์˜ ๋ถ„์„" --analysis-prompt-file prompt.md` | `/tfx-auto "ํ•ฉ์˜ ๋ถ„์„" --mode consensus --analysis-prompt-file prompt.md` |
@@ -1,8 +0,0 @@
1
- {
2
- "name": "tfx-consensus",
3
- "description": "DEPRECATED โ€” tfx-auto consensus root ๋กœ ํ†ตํ•ฉ๋จ. `/tfx-auto --mode consensus` ๊ฐ€ canonical entrypoint ๋‹ค. Phase 4a ๋ถ€ํ„ฐ consensus/debate/panel ์€ ๊ฐ™์€ ์—”์ง„ family ๋ฅผ ๊ณต์œ ํ•˜๊ณ , ์ฐจ์ด๋Š” `--shape` ์™€ renderer ์—๋งŒ ๋‚จ๊ธด๋‹ค. Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ ์˜ˆ์ •.",
4
- "triggers": "[consensus, ํ•ฉ์˜]",
5
- "argument_hint": "<๋ถ„์„ ์ฃผ์ œ ๋˜๋Š” ์ปจํ…์ŠคํŠธ โ€” tfx-auto ๋กœ passthrough>",
6
- "deprecated": true,
7
- "superseded_by": "tfx-auto"
8
- }
@@ -1,60 +0,0 @@
1
- ---
2
- name: tfx-debate
3
- description: >
4
- DEPRECATED โ€” tfx-auto consensus shape ๋กœ ํ†ตํ•ฉ๋จ. `/tfx-auto --mode consensus --shape debate` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ.
5
- Phase 4a ๋ถ€ํ„ฐ debate ๋Š” ๋ณ„๋„ ์—”์ง„์ด ์•„๋‹ˆ๋ผ consensus family ๋‚ด๋ถ€์˜ ์˜ต์…˜ ๋น„๊ต shape ๋‹ค.
6
- Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ ์˜ˆ์ •.
7
- deprecated: true
8
- superseded-by: tfx-auto
9
- triggers:
10
- - debate
11
- - ํ† ๋ก 
12
- - 3์ž ํ† ๋ก 
13
- - tri-debate
14
- - ๋ฉ€ํ‹ฐ๋ชจ๋ธ ํ† ๋ก 
15
- argument-hint: "<ํ† ๋ก  ์ฃผ์ œ ๋˜๋Š” ์งˆ๋ฌธ โ€” tfx-auto ๋กœ passthrough>"
16
- ---
17
-
18
- # tfx-debate (DEPRECATED โ†’ tfx-auto alias)
19
-
20
- > DEPRECATED. `/tfx-auto --mode consensus --shape debate` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ.
21
- > debate ๋Š” ์ด์ œ ๋…๋ฆฝ ์Šคํ‚ฌ์ด ์•„๋‹ˆ๋ผ `tfx-auto` consensus family ์˜ ๋น„๊ต shape ๋‹ค.
22
-
23
- ## ๋™์ž‘
24
-
25
- canonical ์œ„์ž„ **์ด์ „** ์— ์•„๋ž˜ bash ๋ธ”๋ก์„ ํ•œ ๋ฒˆ ์‹คํ–‰ํ•œ๋‹ค. Phase 5 (v11) ๋ฌผ๋ฆฌ ์‚ญ์ œ ๊ฒŒ์ดํŠธ๋Š” `.omc/state/alias-usage.log` ์˜ 7์ผ zero-usage ๊ฒ€์ฆ์— ์˜์กด โ€” ์ด logging ์ด ๋น ์ง€๋ฉด ๊ฒŒ์ดํŠธ๊ฐ€ ์˜์˜ ์—ด๋ฆฌ์ง€ ์•Š๋Š”๋‹ค.
26
-
27
- ```bash
28
- mkdir -p .omc/state
29
- echo "[deprecated] tfx-debate -> use: tfx-auto --mode consensus --shape debate" >&2
30
- echo "[DEPRECATED] tfx-debate โ€” see tfx-auto --mode consensus --shape debate"
31
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) tfx-debate -> tfx-auto --mode consensus --shape debate" >> .omc/state/alias-usage.log
32
- ```
33
-
34
- 1. ์œ„ bash ๋ธ”๋ก ์‹คํ–‰ (stderr ๊ฒฝ๊ณ  + stdout `[DEPRECATED]` ๋งˆ์ปค + alias-usage.log append).
35
- 2. ARGUMENTS ์ „์ฒด ์•ž์— `--mode consensus --shape debate` ๋ฅผ prepend ํ•˜์—ฌ `Skill("tfx-auto")` ํ˜ธ์ถœ.
36
- 3. `--options`, `--criteria`, `--cli-set`, `--analysis-prompt-file` ๊ฐ™์€ debate ์ „์šฉ ์ธ์ž๋Š” ๊ทธ๋Œ€๋กœ passthrough ํ•œ๋‹ค.
37
-
38
- ## ๋“ฑ๊ฐ€ ํ”Œ๋ž˜๊ทธ
39
-
40
- `--mode consensus --shape debate`
41
-
42
- ์˜ต์…˜ ๋น„๊ต shape ์ž…๋ ฅ:
43
- - `--options "A|B|C"` ๋˜๋Š” ๋™๋“ฑํ•œ ์˜ต์…˜ ๋ชฉ๋ก
44
- - `--criteria "latency|complexity|operability"` ๋˜๋Š” ๋™๋“ฑํ•œ ํ‰๊ฐ€ ๊ธฐ์ค€
45
-
46
- ## ์ด alias ์˜ ์˜๋ฏธ
47
-
48
- tfx-debate ์˜ ๋ณธ์งˆ์€ "3-CLI ํ† ๋ก  ์—”์ง„"์ด ์•„๋‹ˆ๋ผ "์˜ต์…˜ ๋น„๊ต์™€ ์ตœ์ข… ์ถ”์ฒœ์„ ๋‚ด๋Š” ๋ณด๊ณ ์„œ shape" ์˜€๋‹ค. Phase 4a ๋ถ€ํ„ฐ orchestration root ๋Š” `--mode consensus` ๋กœ ํ†ตํ•ฉ๋˜๊ณ , debate ์˜๋ฏธ๋Š” `--shape debate` ๋กœ ๋ณด์กด๋œ๋‹ค.
49
-
50
- ๊ณตํ†ต ๊ทœ์•ฝ:
51
- - participants ๊ธฐ๋ณธ๊ฐ’์€ `triad` (Claude/Opus counter-bias outvoice + Codex + Antigravity)
52
- - `--cli-set no-antigravity` ์‹œ Claude/Opus + Codex partial consensus ๋กœ degrade ๊ฐ€๋Šฅ
53
- - ๊ณตํ†ต `meta_judgment` ๋Š” `hub/team/consensus-meta.mjs` ์Šคํ‚ค๋งˆ๋ฅผ ๋”ฐ๋ฅธ๋‹ค
54
-
55
- ## ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
56
-
57
- | ๊ธฐ์กด ํ˜ธ์ถœ | ์ƒˆ ํ˜ธ์ถœ |
58
- |----------|---------|
59
- | `/tfx-debate "REST vs GraphQL"` | `/tfx-auto "REST vs GraphQL" --mode consensus --shape debate` |
60
- | `/tfx-debate "Redis vs Kafka" --options "Redis|Kafka" --criteria "latency|operability"` | `/tfx-auto "Redis vs Kafka" --mode consensus --shape debate --options "Redis\|Kafka" --criteria "latency\|operability"` |
@@ -1,14 +0,0 @@
1
- {
2
- "name": "tfx-debate",
3
- "description": "DEPRECATED โ€” tfx-auto consensus shape ๋กœ ํ†ตํ•ฉ๋จ. `/tfx-auto --mode consensus --shape debate` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ. Phase 4a ๋ถ€ํ„ฐ debate ๋Š” ๋ณ„๋„ ์—”์ง„์ด ์•„๋‹ˆ๋ผ consensus family ๋‚ด๋ถ€์˜ ์˜ต์…˜ ๋น„๊ต shape ๋‹ค. Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ ์˜ˆ์ •.",
4
- "triggers": [
5
- "debate",
6
- "ํ† ๋ก ",
7
- "3์ž ํ† ๋ก ",
8
- "tri-debate",
9
- "๋ฉ€ํ‹ฐ๋ชจ๋ธ ํ† ๋ก "
10
- ],
11
- "argument_hint": "<ํ† ๋ก  ์ฃผ์ œ ๋˜๋Š” ์งˆ๋ฌธ โ€” tfx-auto ๋กœ passthrough>",
12
- "deprecated": true,
13
- "superseded_by": "tfx-auto"
14
- }
@@ -1,47 +0,0 @@
1
- ---
2
- name: tfx-fullcycle
3
- description: >
4
- DEPRECATED โ€” tfx-auto ๋กœ ํ†ตํ•ฉ๋จ. `/tfx-auto --mode deep --parallel 1` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ.
5
- Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ ์˜ˆ์ •. "pipeline-thorough ๋‹จ์ผ ์‹คํ–‰" ์˜๋ฏธ๋Š” ํ”Œ๋ž˜๊ทธ๋กœ ๋™์ผ ํ‘œํ˜„.
6
- deprecated: true
7
- superseded-by: tfx-auto
8
- triggers:
9
- - deep autopilot
10
- - ํ’€ ์˜คํ† 
11
- - ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€
12
- - full auto
13
- argument-hint: "<์ž‘์—… ์„ค๋ช… โ€” tfx-auto ๋กœ passthrough>"
14
- ---
15
-
16
- # tfx-fullcycle (DEPRECATED โ†’ tfx-auto alias)
17
-
18
- > DEPRECATED. `/tfx-auto --mode deep --parallel 1` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ. Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ.
19
-
20
- ## ๋™์ž‘
21
-
22
- canonical ์œ„์ž„ **์ด์ „** ์— ์•„๋ž˜ bash ๋ธ”๋ก์„ ํ•œ ๋ฒˆ ์‹คํ–‰ํ•œ๋‹ค. Phase 5 (v11) ๋ฌผ๋ฆฌ ์‚ญ์ œ ๊ฒŒ์ดํŠธ๋Š” `.omc/state/alias-usage.log` ์˜ 7์ผ zero-usage ๊ฒ€์ฆ์— ์˜์กด โ€” ์ด logging ์ด ๋น ์ง€๋ฉด ๊ฒŒ์ดํŠธ๊ฐ€ ์˜์˜ ์—ด๋ฆฌ์ง€ ์•Š๋Š”๋‹ค.
23
-
24
- ```bash
25
- mkdir -p .omc/state
26
- echo "[deprecated] tfx-fullcycle -> use: tfx-auto --mode deep --parallel 1" >&2
27
- echo "[DEPRECATED] tfx-fullcycle โ€” see tfx-auto --mode deep --parallel 1"
28
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) tfx-fullcycle -> tfx-auto --mode deep --parallel 1" >> .omc/state/alias-usage.log
29
- ```
30
-
31
- 1. ์œ„ bash ๋ธ”๋ก ์‹คํ–‰ (stderr ๊ฒฝ๊ณ  + stdout `[DEPRECATED]` ๋งˆ์ปค + alias-usage.log append).
32
- 2. ARGUMENTS ์ „์ฒด ์•ž์— `--mode deep --parallel 1` ๋ฅผ prepend ํ•˜์—ฌ `Skill("tfx-auto")` ํ˜ธ์ถœ.
33
- 3. tfx-auto ์˜ ํ”Œ๋ž˜๊ทธ ์˜ค๋ฒ„๋ผ์ด๋“œ ๋กœ์ง์ด ๋‚˜๋จธ์ง€ ์ฒ˜๋ฆฌ.
34
-
35
- ## ๋“ฑ๊ฐ€ ํ”Œ๋ž˜๊ทธ
36
-
37
- `--mode deep --parallel 1`
38
-
39
- ## ์ด alias ์˜ ์˜๋ฏธ
40
-
41
- tfx-fullcycle ์˜ "pipeline-thorough ๋‹จ์ผ ์‹คํ–‰" (plan โ†’ PRD โ†’ exec โ†’ verify โ†’ fix loop) ์€ --mode deep --parallel 1 ๊ณผ ๋™์ผํ•˜๋‹ค.
42
-
43
- ## ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
44
-
45
- | ๊ธฐ์กด ํ˜ธ์ถœ | ์ƒˆ ํ˜ธ์ถœ |
46
- |----------|---------|
47
- | `/tfx-fullcycle "์ž‘์—…"` | `/tfx-auto "์ž‘์—…" --mode deep --parallel 1` |
@@ -1,13 +0,0 @@
1
- {
2
- "name": "tfx-fullcycle",
3
- "description": "DEPRECATED โ€” tfx-auto ๋กœ ํ†ตํ•ฉ๋จ. `/tfx-auto --mode deep --parallel 1` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ. Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ ์˜ˆ์ •. \"pipeline-thorough ๋‹จ์ผ ์‹คํ–‰\" ์˜๋ฏธ๋Š” ํ”Œ๋ž˜๊ทธ๋กœ ๋™์ผ ํ‘œํ˜„.",
4
- "triggers": [
5
- "deep autopilot",
6
- "ํ’€ ์˜คํ† ",
7
- "์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€",
8
- "full auto"
9
- ],
10
- "argument_hint": "<์ž‘์—… ์„ค๋ช… โ€” tfx-auto ๋กœ passthrough>",
11
- "deprecated": true,
12
- "superseded_by": "tfx-auto"
13
- }
@@ -1,45 +0,0 @@
1
- ---
2
- name: tfx-multi
3
- description: >
4
- DEPRECATED โ€” tfx-auto ๋กœ ํ†ตํ•ฉ๋จ. `/tfx-auto --parallel N --mode deep` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ.
5
- tfx-auto ๊ฐ€ ์ด ํ”Œ๋ž˜๊ทธ ์กฐํ•ฉ์„ ๋ฐ›์œผ๋ฉด ๋‚ด๋ถ€์ ์œผ๋กœ `tfx multi --teammate-mode headless` ๋ฅผ ํ˜ธ์ถœํ•œ๋‹ค.
6
- Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ ์˜ˆ์ •.
7
- deprecated: true
8
- superseded-by: tfx-auto
9
- triggers:
10
- - tfx-multi
11
- argument-hint: "<์ž‘์—… ์„ค๋ช… โ€” tfx-auto ๋กœ passthrough>"
12
- ---
13
-
14
- # tfx-multi (DEPRECATED โ†’ tfx-auto alias)
15
-
16
- > DEPRECATED. `/tfx-auto --parallel N --mode deep` ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ. Phase 5 (v11) ์— ๋ฌผ๋ฆฌ ์‚ญ์ œ.
17
-
18
- ## ๋™์ž‘
19
-
20
- canonical ์œ„์ž„ **์ด์ „** ์— ์•„๋ž˜ bash ๋ธ”๋ก์„ ํ•œ ๋ฒˆ ์‹คํ–‰ํ•œ๋‹ค. Phase 5 (v11) ๋ฌผ๋ฆฌ ์‚ญ์ œ ๊ฒŒ์ดํŠธ๋Š” `.omc/state/alias-usage.log` ์˜ 7์ผ zero-usage ๊ฒ€์ฆ์— ์˜์กด โ€” ์ด logging ์ด ๋น ์ง€๋ฉด ๊ฒŒ์ดํŠธ๊ฐ€ ์˜์˜ ์—ด๋ฆฌ์ง€ ์•Š๋Š”๋‹ค.
21
-
22
- ```bash
23
- mkdir -p .omc/state
24
- echo "[deprecated] tfx-multi -> use: tfx-auto --parallel N --mode deep" >&2
25
- echo "[DEPRECATED] tfx-multi โ€” see tfx-auto --parallel N --mode deep"
26
- echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) tfx-multi -> tfx-auto --parallel N --mode deep" >> .omc/state/alias-usage.log
27
- ```
28
-
29
- 1. ์œ„ bash ๋ธ”๋ก ์‹คํ–‰ (stderr ๊ฒฝ๊ณ  + stdout `[DEPRECATED]` ๋งˆ์ปค + alias-usage.log append).
30
- 2. ARGUMENTS ์ „์ฒด ์•ž์— `--parallel N --mode deep` ๋ฅผ prepend ํ•˜์—ฌ `Skill("tfx-auto")` ํ˜ธ์ถœ.
31
- 3. tfx-auto ์˜ ํ”Œ๋ž˜๊ทธ ์˜ค๋ฒ„๋ผ์ด๋“œ ๋กœ์ง์ด ๋‚ด๋ถ€์ ์œผ๋กœ `tfx multi --teammate-mode headless` ๋ฅผ ํ˜ธ์ถœํ•œ๋‹ค.
32
-
33
- ## ๋“ฑ๊ฐ€ ํ”Œ๋ž˜๊ทธ
34
-
35
- `--parallel N --mode deep`
36
-
37
- ## ์ด alias ์˜ ์˜๋ฏธ
38
-
39
- tfx-multi ์˜ "๋กœ์ปฌ headless ๋ณ‘๋ ฌ + thorough ๊ธฐ๋ณธ" ์€ --parallel N --mode deep ๊ณผ ๋™์ผ. N ์€ ARGUMENTS ์— ๊ตฌ์ฒด ์ˆซ์ž๊ฐ€ ์žˆ์œผ๋ฉด ๊ทธ๋Œ€๋กœ ์ „๋‹ฌ, ์—†์œผ๋ฉด tfx-auto ๊ฐ€ subtask ์ˆ˜ ๊ธฐ๋ฐ˜์œผ๋กœ ํŒ๋‹จํ•œ๋‹ค.
40
-
41
- ## ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ
42
-
43
- | ๊ธฐ์กด ํ˜ธ์ถœ | ์ƒˆ ํ˜ธ์ถœ |
44
- |----------|---------|
45
- | `/tfx-multi "์ž‘์—…"` | `/tfx-auto "์ž‘์—…" --parallel N --mode deep` |