triflux 10.0.0-alpha.2 → 10.0.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 (190) hide show
  1. package/package.json +1 -1
  2. package/skills/merge-worktree/SKILL.md.tmpl +144 -0
  3. package/skills/shared/arguments-processing.md +2 -0
  4. package/skills/shared/mandatory-rules.md +6 -0
  5. package/skills/shared/telemetry-segment.md +6 -0
  6. package/skills/star-prompt/SKILL.md.tmpl +122 -0
  7. package/skills/tfx-analysis/SKILL.md.tmpl +106 -0
  8. package/skills/tfx-analysis/skill.json +11 -0
  9. package/skills/tfx-auto/SKILL.md.tmpl +3 -2
  10. package/skills/tfx-auto/skill.json +26 -0
  11. package/skills/{tfx-workspace/skill-snapshot/tfx-auto-codex/SKILL.md → tfx-auto-codex/SKILL.md.tmpl} +31 -3
  12. package/skills/tfx-auto-codex/skill.json +8 -0
  13. package/skills/tfx-autopilot/SKILL.md.tmpl +115 -0
  14. package/skills/tfx-autopilot/skill.json +10 -0
  15. package/skills/tfx-autoresearch/SKILL.md +5 -6
  16. package/skills/tfx-autoresearch/SKILL.md.tmpl +135 -0
  17. package/skills/tfx-autoresearch/skill.json +14 -0
  18. package/skills/tfx-autoroute/SKILL.md.tmpl +188 -0
  19. package/skills/tfx-autoroute/skill.json +12 -0
  20. package/skills/tfx-codex/SKILL.md.tmpl +3 -2
  21. package/skills/tfx-codex/skill.json +8 -0
  22. package/skills/tfx-codex-swarm/SKILL.md +10 -671
  23. package/skills/tfx-codex-swarm/SKILL.md.tmpl +16 -0
  24. package/skills/tfx-codex-swarm/skill.json +5 -0
  25. package/skills/tfx-consensus/SKILL.md.tmpl +145 -0
  26. package/skills/tfx-consensus/skill.json +8 -0
  27. package/skills/tfx-debate/SKILL.md.tmpl +191 -0
  28. package/skills/tfx-debate/skill.json +12 -0
  29. package/skills/tfx-deep-analysis/SKILL.md.tmpl +227 -0
  30. package/skills/tfx-deep-analysis/skill.json +10 -0
  31. package/skills/tfx-deep-interview/SKILL.md +2 -1
  32. package/skills/tfx-deep-interview/SKILL.md.tmpl +203 -0
  33. package/skills/tfx-deep-interview/skill.json +12 -0
  34. package/skills/tfx-deep-plan/SKILL.md.tmpl +281 -0
  35. package/skills/tfx-deep-plan/skill.json +13 -0
  36. package/skills/tfx-deep-qa/SKILL.md.tmpl +164 -0
  37. package/skills/tfx-deep-qa/skill.json +11 -0
  38. package/skills/tfx-deep-research/SKILL.md.tmpl +216 -0
  39. package/skills/tfx-deep-research/skill.json +14 -0
  40. package/skills/tfx-deep-review/SKILL.md.tmpl +178 -0
  41. package/skills/tfx-deep-review/skill.json +12 -0
  42. package/skills/tfx-doctor/SKILL.md.tmpl +172 -0
  43. package/skills/tfx-doctor/skill.json +8 -0
  44. package/skills/tfx-find/skill.json +12 -0
  45. package/skills/tfx-forge/SKILL.md.tmpl +187 -0
  46. package/skills/tfx-forge/skill.json +12 -0
  47. package/skills/tfx-fullcycle/SKILL.md.tmpl +285 -0
  48. package/skills/tfx-fullcycle/skill.json +11 -0
  49. package/skills/{tfx-workspace/skill-snapshot/tfx-gemini/SKILL.md → tfx-gemini/SKILL.md.tmpl} +14 -6
  50. package/skills/tfx-gemini/skill.json +8 -0
  51. package/skills/tfx-hooks/SKILL.md.tmpl +216 -0
  52. package/skills/tfx-hooks/skill.json +8 -0
  53. package/skills/tfx-hub/SKILL.md.tmpl +212 -0
  54. package/skills/tfx-hub/skill.json +8 -0
  55. package/skills/tfx-index/skill.json +11 -0
  56. package/skills/tfx-interview/SKILL.md.tmpl +284 -0
  57. package/skills/tfx-interview/skill.json +12 -0
  58. package/skills/tfx-multi/SKILL.md.tmpl +183 -0
  59. package/skills/tfx-multi/skill.json +8 -0
  60. package/skills/tfx-panel/SKILL.md.tmpl +188 -0
  61. package/skills/tfx-panel/skill.json +12 -0
  62. package/skills/tfx-persist/SKILL.md.tmpl +269 -0
  63. package/skills/tfx-persist/skill.json +12 -0
  64. package/skills/tfx-plan/SKILL.md.tmpl +3 -2
  65. package/skills/tfx-plan/skill.json +11 -0
  66. package/skills/tfx-profile/SKILL.md.tmpl +239 -0
  67. package/skills/tfx-profile/skill.json +8 -0
  68. package/skills/tfx-prune/SKILL.md.tmpl +199 -0
  69. package/skills/tfx-prune/skill.json +12 -0
  70. package/skills/tfx-psmux-rules/SKILL.md.tmpl +317 -0
  71. package/skills/tfx-psmux-rules/skill.json +8 -0
  72. package/skills/tfx-qa/SKILL.md.tmpl +3 -2
  73. package/skills/tfx-qa/skill.json +11 -0
  74. package/skills/tfx-ralph/SKILL.md.tmpl +27 -0
  75. package/skills/tfx-ralph/skill.json +8 -0
  76. package/skills/tfx-remote-setup/SKILL.md.tmpl +576 -0
  77. package/skills/tfx-remote-setup/skill.json +8 -0
  78. package/skills/tfx-remote-spawn/SKILL.md +11 -8
  79. package/skills/tfx-remote-spawn/SKILL.md.tmpl +263 -0
  80. package/skills/tfx-remote-spawn/skill.json +9 -0
  81. package/skills/tfx-research/SKILL.md.tmpl +3 -2
  82. package/skills/tfx-research/skill.json +13 -0
  83. package/skills/tfx-review/SKILL.md.tmpl +3 -2
  84. package/skills/tfx-review/skill.json +11 -0
  85. package/skills/tfx-setup/SKILL.md.tmpl +380 -0
  86. package/skills/tfx-setup/skill.json +8 -0
  87. package/skills/tfx-swarm/SKILL.md +32 -0
  88. package/skills/tfx-swarm/SKILL.md.tmpl +154 -0
  89. package/skills/tfx-swarm/skill.json +5 -0
  90. package/skills/tfx-codex-swarm-workspace/iteration-1/benchmark.json +0 -33
  91. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/eval_metadata.json +0 -42
  92. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/grading.json +0 -11
  93. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/analysis.md +0 -87
  94. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/classification.md +0 -35
  95. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/commands.sh +0 -275
  96. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/outputs/routing.md +0 -56
  97. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/with_skill/timing.json +0 -5
  98. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/grading.json +0 -11
  99. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/analysis.md +0 -92
  100. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/classification.md +0 -71
  101. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/commands.sh +0 -264
  102. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/outputs/routing.md +0 -113
  103. package/skills/tfx-codex-swarm-workspace/iteration-1/full-swarm-all-prds/without_skill/timing.json +0 -5
  104. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/eval_metadata.json +0 -32
  105. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/grading.json +0 -9
  106. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/analysis.md +0 -96
  107. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/classification.md +0 -38
  108. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/commands.sh +0 -151
  109. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/outputs/routing.md +0 -51
  110. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/with_skill/timing.json +0 -5
  111. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/grading.json +0 -9
  112. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/analysis.md +0 -127
  113. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/classification.md +0 -57
  114. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/commands.sh +0 -129
  115. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/outputs/routing.md +0 -84
  116. package/skills/tfx-codex-swarm-workspace/iteration-1/implicit-swarm-no-keywords/without_skill/timing.json +0 -5
  117. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/eval_metadata.json +0 -27
  118. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/grading.json +0 -8
  119. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/analysis.md +0 -98
  120. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/classification.md +0 -65
  121. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/commands.sh +0 -123
  122. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/outputs/routing.md +0 -66
  123. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/with_skill/timing.json +0 -5
  124. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/grading.json +0 -8
  125. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/analysis.md +0 -88
  126. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/classification.md +0 -40
  127. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/commands.sh +0 -130
  128. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/outputs/routing.md +0 -61
  129. package/skills/tfx-codex-swarm-workspace/iteration-1/selective-spawn-with-override/without_skill/timing.json +0 -5
  130. package/skills/tfx-workspace/async-tests/run-tests.sh +0 -203
  131. package/skills/tfx-workspace/evals/evals.json +0 -79
  132. package/skills/tfx-workspace/iteration-1/benchmark.json +0 -162
  133. package/skills/tfx-workspace/iteration-1/codex-gemini-remap/eval_metadata.json +0 -11
  134. package/skills/tfx-workspace/iteration-1/codex-gemini-remap/old_skill/grading.json +0 -9
  135. package/skills/tfx-workspace/iteration-1/codex-gemini-remap/old_skill/outputs/analysis.md +0 -154
  136. package/skills/tfx-workspace/iteration-1/codex-gemini-remap/old_skill/timing.json +0 -5
  137. package/skills/tfx-workspace/iteration-1/codex-gemini-remap/with_skill/grading.json +0 -9
  138. package/skills/tfx-workspace/iteration-1/codex-gemini-remap/with_skill/outputs/analysis.md +0 -126
  139. package/skills/tfx-workspace/iteration-1/codex-gemini-remap/with_skill/timing.json +0 -5
  140. package/skills/tfx-workspace/iteration-1/doctor-diagnosis/eval_metadata.json +0 -11
  141. package/skills/tfx-workspace/iteration-1/doctor-diagnosis/old_skill/grading.json +0 -9
  142. package/skills/tfx-workspace/iteration-1/doctor-diagnosis/old_skill/outputs/analysis.md +0 -119
  143. package/skills/tfx-workspace/iteration-1/doctor-diagnosis/old_skill/timing.json +0 -5
  144. package/skills/tfx-workspace/iteration-1/doctor-diagnosis/with_skill/grading.json +0 -9
  145. package/skills/tfx-workspace/iteration-1/doctor-diagnosis/with_skill/outputs/analysis.md +0 -115
  146. package/skills/tfx-workspace/iteration-1/doctor-diagnosis/with_skill/timing.json +0 -5
  147. package/skills/tfx-workspace/iteration-1/hub-start-sequence/eval_metadata.json +0 -10
  148. package/skills/tfx-workspace/iteration-1/hub-start-sequence/old_skill/grading.json +0 -8
  149. package/skills/tfx-workspace/iteration-1/hub-start-sequence/old_skill/outputs/analysis.md +0 -86
  150. package/skills/tfx-workspace/iteration-1/hub-start-sequence/old_skill/timing.json +0 -5
  151. package/skills/tfx-workspace/iteration-1/hub-start-sequence/with_skill/grading.json +0 -8
  152. package/skills/tfx-workspace/iteration-1/hub-start-sequence/with_skill/outputs/analysis.md +0 -81
  153. package/skills/tfx-workspace/iteration-1/hub-start-sequence/with_skill/timing.json +0 -5
  154. package/skills/tfx-workspace/iteration-1/multi-team-creation/eval_metadata.json +0 -12
  155. package/skills/tfx-workspace/iteration-1/multi-team-creation/old_skill/grading.json +0 -10
  156. package/skills/tfx-workspace/iteration-1/multi-team-creation/old_skill/outputs/analysis.md +0 -316
  157. package/skills/tfx-workspace/iteration-1/multi-team-creation/old_skill/timing.json +0 -5
  158. package/skills/tfx-workspace/iteration-1/multi-team-creation/with_skill/grading.json +0 -10
  159. package/skills/tfx-workspace/iteration-1/multi-team-creation/with_skill/outputs/analysis.md +0 -352
  160. package/skills/tfx-workspace/iteration-1/multi-team-creation/with_skill/timing.json +0 -5
  161. package/skills/tfx-workspace/iteration-1/review.html +0 -1325
  162. package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/eval_metadata.json +0 -12
  163. package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/old_skill/grading.json +0 -10
  164. package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/old_skill/outputs/analysis.md +0 -97
  165. package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/old_skill/timing.json +0 -5
  166. package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/with_skill/grading.json +0 -10
  167. package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/with_skill/outputs/analysis.md +0 -94
  168. package/skills/tfx-workspace/iteration-1/routing-implement-shortcut/with_skill/timing.json +0 -5
  169. package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/eval_metadata.json +0 -12
  170. package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/old_skill/grading.json +0 -10
  171. package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/old_skill/outputs/analysis.md +0 -209
  172. package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/old_skill/timing.json +0 -5
  173. package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/with_skill/grading.json +0 -10
  174. package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/with_skill/outputs/analysis.md +0 -193
  175. package/skills/tfx-workspace/iteration-1/routing-multi-task-triage/with_skill/timing.json +0 -5
  176. package/skills/tfx-workspace/iteration-2/benchmark.json +0 -62
  177. package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/eval_metadata.json +0 -13
  178. package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/old_skill/grading.json +0 -11
  179. package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/old_skill/outputs/analysis.md +0 -382
  180. package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/old_skill/timing.json +0 -5
  181. package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/with_skill/grading.json +0 -11
  182. package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/with_skill/outputs/analysis.md +0 -333
  183. package/skills/tfx-workspace/iteration-2/multi-team-creation-refactored/with_skill/timing.json +0 -5
  184. package/skills/tfx-workspace/iteration-2/review.html +0 -1325
  185. package/skills/tfx-workspace/skill-snapshot/tfx-auto/SKILL.md +0 -217
  186. package/skills/tfx-workspace/skill-snapshot/tfx-codex/SKILL.md +0 -65
  187. package/skills/tfx-workspace/skill-snapshot/tfx-doctor/SKILL.md +0 -94
  188. package/skills/tfx-workspace/skill-snapshot/tfx-hub/SKILL.md +0 -133
  189. package/skills/tfx-workspace/skill-snapshot/tfx-multi/SKILL.md +0 -426
  190. package/skills/tfx-workspace/skill-snapshot/tfx-setup/SKILL.md +0 -101
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "triflux",
3
- "version": "10.0.0-alpha.2",
3
+ "version": "10.0.0",
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": {
@@ -0,0 +1,144 @@
1
+ ---
2
+ name: merge-worktree
3
+ description: "워크트리 브랜치를 main으로 squash-merge + conventional commit 자동 생성. codex-swarm 워크트리 자동 인식. '머지해', 'merge worktree', '워크트리 머지', '결과 수집', 'squash merge' 요청에 사용."
4
+ argument-hint: "[target-branch]"
5
+ disable-model-invocation: true
6
+ ---
7
+
8
+ # Merge Worktree
9
+
10
+ 워크트리 브랜치를 대상 브랜치로 squash-merge하고 conventional commit 메시지를 자동 작성한다.
11
+
12
+ ## Current context
13
+
14
+ * Git dir: `!git rev-parse --git-dir`
15
+ * Current branch: `!git branch --show-current`
16
+ * Recent commits: `!git log --oneline -20`
17
+ * Working tree status: `!git status --short`
18
+
19
+ ## Instructions
20
+
21
+ ### Phase 1: Validation
22
+
23
+ 1. **Worktree 확인**: `git rev-parse --git-dir` 출력에 `/worktrees/`가 포함되어야 한다. 아니면 중지.
24
+
25
+ 2. **현재 브랜치 확인**: `git branch --show-current`
26
+
27
+ 3. **대상 브랜치 결정**:
28
+ * `$ARGUMENTS`가 있으면 해당 브랜치 사용
29
+ * 없으면 `main` 존재 확인, 없으면 `master`
30
+
31
+ 4. **원본 레포 경로 확인**: `git rev-parse --git-common-dir`의 부모 디렉토리
32
+
33
+ 5. **클린 상태 확인**: `git status --porcelain`이 비어있어야 한다. 미커밋 변경이 있으면 먼저 커밋/스태시 안내.
34
+
35
+ ### Phase 2: Research
36
+
37
+ 1. **커밋 이력**: `git log --oneline <target>..HEAD`
38
+
39
+ 2. **변경 파일 요약**: `git diff <target>...HEAD --stat`
40
+
41
+ 3. **전체 diff**: `git diff <target>...HEAD` — 꼼꼼히 읽는다.
42
+
43
+ 4. **핵심 파일 읽기**: 가장 큰 변경, 신규 파일, 삭제 파일을 Read로 확인.
44
+
45
+ 5. **변경 분류**:
46
+ * Features (신규 기능)
47
+ * Fixes (버그 수정)
48
+ * Refactors (구조 변경)
49
+ * Tests (테스트)
50
+ * Docs (문서)
51
+ * Config/Chore (빌드, CI, 의존성)
52
+
53
+ 6. **dominant type 결정**: `feat`, `fix`, `refactor`, `docs`, `chore`, `test` 중 하나
54
+
55
+ ### Phase 3: 대상 브랜치 준비
56
+
57
+ 1. **대상 브랜치 최근 커밋 확인**: `git -C <원본레포> log --oneline -10 <target>`
58
+
59
+ 2. **WIP 커밋 감지**: `wip:`, `auto-commit`, `WIP` 시작 커밋이 있으면 사용자에게 경고.
60
+
61
+ 3. **최신 fetch**: `git -C <원본레포> fetch origin <target> 2>/dev/null`
62
+
63
+ ### Phase 4: Squash Merge
64
+
65
+ 1. **대상 브랜치 checkout**:
66
+ ```
67
+ git -C <원본레포> checkout <target>
68
+ ```
69
+
70
+ 2. **squash merge 실행**:
71
+ ```
72
+ git -C <원본레포> merge --squash <워크트리브랜치>
73
+ ```
74
+
75
+ 3. **충돌 처리**: 충돌 발생 시 충돌 파일 목록 + 마커를 보여주고 **중지**. 자동 해결 시도 금지.
76
+
77
+ ### Phase 5: 커밋 메시지 작성 + 커밋
78
+
79
+ Phase 2 분석 기반으로 아래 구조의 커밋 메시지를 작성한다:
80
+
81
+ ```
82
+ <type>: <명령형 요약, 72자 이내, 마침표 없음>
83
+
84
+ <무엇을 왜 했는지 2-4문장. 동기와 접근 방식 중심.>
85
+
86
+ Changes:
87
+ * <그룹별 변경 사항>
88
+ * <하위 항목은 서브 불릿>
89
+ ```
90
+
91
+ **규칙:**
92
+ * `<type>`은 `feat`, `fix`, `refactor`, `docs`, `chore`, `test` 중 하나
93
+ * 여러 유형이 섞이면 dominant 사용
94
+ * 요약: 명령형 ("add", "fix", "refactor"), 마침표 없음, 72자 제한
95
+ * 본문: *왜*와 *맥락*, *무엇*만이 아님
96
+ * Changes: 관련 항목 그룹핑, 중요한 것 먼저
97
+ * Co-Authored-By 푸터 **절대 추가 금지** (글로벌 설정 `includeCoAuthoredBy: false`)
98
+
99
+ **커밋 실행**:
100
+ ```bash
101
+ git -C <원본레포> commit -m "$(cat <<'EOF'
102
+ <커밋 메시지>
103
+ EOF
104
+ )"
105
+ ```
106
+
107
+ ### Phase 6: 정리 + 검증
108
+
109
+ 1. **커밋 확인**: `git -C <원본레포> log --oneline -3`
110
+
111
+ 2. **워크트리 자동 정리**:
112
+ ```bash
113
+ git -C <원본레포> worktree remove <워크트리경로>
114
+ git -C <원본레포> branch -d <워크트리브랜치>
115
+ ```
116
+
117
+ 3. **codex-swarm 정리 감지**: 워크트리 경로가 `.codex-swarm/wt-*` 패턴이면:
118
+ * 같은 `.codex-swarm/` 디렉토리에 다른 워크트리가 남아있는지 확인
119
+ * 모든 워크트리가 머지 완료되었으면 `.codex-swarm/` 전체 정리 제안
120
+ * `git worktree prune` 실행
121
+
122
+ 4. **결과 보고**:
123
+ * 커밋 해시 + 요약
124
+ * 머지 대상 브랜치
125
+ * 워크트리 정리 완료 여부
126
+ * push 안내 (`git push`)
127
+
128
+ ## codex-swarm 연동
129
+
130
+ 이 스킬은 `tfx-codex-swarm`의 Step 10 "결과 수집"에서 자동으로 호출된다.
131
+ codex-swarm이 완료한 각 워크트리에 대해 순차적으로 실행:
132
+
133
+ ```
134
+ 각 워크트리에 대해:
135
+ 1. 워크트리로 cd
136
+ 2. /merge-worktree main
137
+ 3. 다음 워크트리로 이동
138
+ ```
139
+
140
+ ## 주의사항
141
+
142
+ * force-push, destructive 연산은 사용자 확인 없이 절대 실행 금지
143
+ * pre-commit hook 건너뛰기(`--no-verify`) 금지
144
+ * 예상치 못한 상황이면 추측하지 말고 **중지 후 설명**
@@ -0,0 +1,2 @@
1
+ > **ARGUMENTS 처리**: 이 스킬이 `ARGUMENTS: <값>`과 함께 호출되면, 해당 값을 사용자 입력으로 취급하여
2
+ > 워크플로우의 첫 단계 입력으로 사용한다. ARGUMENTS가 비어있거나 없으면 기존 절차대로 사용자에게 입력을 요청한다.
@@ -0,0 +1,6 @@
1
+ > headless-guard가 이 규칙 위반을 **자동 차단**한다. 우회 불가.
2
+
3
+ 1. **`codex exec` / `gemini -p` 직접 호출 절대 금지**
4
+ 2. Codex·Gemini 작업은 직접 CLI 대신 반드시 TFX 래퍼(이 계열 스킬에서는 `Bash("tfx multi --teammate-mode headless --auto-attach --dashboard --assign 'cli:프롬프트:역할' --timeout 600")`)로만 실행
5
+ 3. Claude 작업은 `Agent(run_in_background=true)`
6
+ 4. 교차 검토/병렬 단계에서는 Bash + Agent를 같은 메시지에서 동시 호출
@@ -0,0 +1,6 @@
1
+ > **Telemetry**
2
+ >
3
+ > - Skill: `{{SKILL_NAME}}`
4
+ > - Description: `{{SKILL_DESCRIPTION}}`
5
+ > - Session: 요청별 식별자를 유지해 단계별 실행 로그를 추적한다.
6
+ > - Errors: 실패 시 원인/복구/재시도 여부를 구조화해 기록한다.
@@ -0,0 +1,122 @@
1
+ ---
2
+ name: star-prompt
3
+ description: >-
4
+ CLI 프로젝트의 setup/postinstall 흐름에 GitHub 스타 요청 프롬프트를 추가한다.
5
+ gh CLI 인증 확인 → 이미 스타 여부 감지 → 인터랙티브 confirm → gh API로 자동 스타.
6
+ Apple 스타일 UX 카피 포함. 'star prompt', '스타 요청', '리포 스타', 'star request',
7
+ '깃헙 스타 넣어줘', 'star 눌러달라고', '응원 요청' 같은 요청에 사용한다.
8
+ ---
9
+
10
+ # tfx-star-prompt — GitHub Star Request Prompt
11
+
12
+ CLI 도구의 setup 완료 시점에 GitHub 리포 스타를 요청하는 프롬프트를 추가한다.
13
+ 사용자 경험을 해치지 않으면서, 이미 스타한 사용자에겐 감사를 표하고, 아직 안 한 사용자에겐 부담 없이 한 번 물어본다.
14
+
15
+ ## 동작 흐름
16
+
17
+ ```
18
+ gh auth status ─── 실패 → URL만 표시 (비인터랙티브 폴백)
19
+
20
+ ✓ 인증됨
21
+
22
+ gh api user/starred/{owner}/{repo} ─── 성공 → "이미 함께하고 계시군요. ⭐"
23
+
24
+ ✗ 미스타
25
+
26
+ confirm("⭐ 하나가 큰 차이를 만듭니다.") ─── N → URL 조용히 표시
27
+
28
+ Y
29
+
30
+ gh api -X PUT /user/starred/{owner}/{repo} → "함께해 주셔서 감사합니다. ⭐"
31
+
32
+ 실패 → URL 폴백
33
+ ```
34
+
35
+ ## 구현 패턴
36
+
37
+ ### 인터랙티브 (TUI / readline confirm)
38
+
39
+ setup 위저드 완료 후 호출. `confirm()` 으로 Y/n 입력 받고 `gh api`로 자동 스타.
40
+
41
+ ```javascript
42
+ async function starRequest() {
43
+ let ghOk = false;
44
+ try {
45
+ execFileSync("gh", ["auth", "status"], {
46
+ timeout: 5000, encoding: "utf8", stdio: ["pipe", "pipe", "pipe"],
47
+ });
48
+ ghOk = true;
49
+ } catch {}
50
+
51
+ if (!ghOk) {
52
+ // gh 미설치/미인증 — URL만 표시
53
+ info(`⭐ 하나가 큰 차이를 만듭니다. https://github.com/{owner}/{repo}`);
54
+ return;
55
+ }
56
+
57
+ let alreadyStarred = false;
58
+ try {
59
+ execFileSync("gh", ["api", "user/starred/{owner}/{repo}"], {
60
+ timeout: 5000, encoding: "utf8", stdio: ["pipe", "pipe", "pipe"],
61
+ });
62
+ alreadyStarred = true;
63
+ } catch {}
64
+
65
+ if (alreadyStarred) {
66
+ ok(`이미 함께하고 계시군요. ⭐`);
67
+ return;
68
+ }
69
+
70
+ if (await confirm(`⭐ 하나가 큰 차이를 만듭니다.`, true)) {
71
+ try {
72
+ execFileSync("gh", ["api", "-X", "PUT", "/user/starred/{owner}/{repo}"], {
73
+ timeout: 5000, stdio: ["pipe", "pipe", "pipe"],
74
+ });
75
+ ok(`함께해 주셔서 감사합니다. ⭐`);
76
+ } catch {
77
+ info(`https://github.com/{owner}/{repo}`);
78
+ }
79
+ } else {
80
+ // 거절 시 URL만 조용히
81
+ console.log(` https://github.com/{owner}/{repo}`);
82
+ }
83
+ }
84
+ ```
85
+
86
+ ### 비인터랙티브 (postinstall / CLI banner)
87
+
88
+ confirm 불가한 환경. 이미 스타 여부만 감지하고 메시지 분기.
89
+
90
+ ```javascript
91
+ try {
92
+ execFileSync("gh", ["auth", "status"], { timeout: 5000, stdio: ["pipe","pipe","pipe"] });
93
+ try {
94
+ execFileSync("gh", ["api", "user/starred/{owner}/{repo}"], { timeout: 5000, stdio: ["pipe","pipe","pipe"] });
95
+ ok(`이미 함께하고 계시군요. ⭐`);
96
+ } catch {
97
+ info(`⭐ 하나가 큰 차이를 만듭니다. https://github.com/{owner}/{repo}`);
98
+ }
99
+ } catch {
100
+ info(`⭐ 하나가 큰 차이를 만듭니다. https://github.com/{owner}/{repo}`);
101
+ }
102
+ ```
103
+
104
+ ## 적용 시 규칙
105
+
106
+ 1. `{owner}/{repo}`를 대상 리포로 치환한다
107
+ 2. 프로젝트의 기존 ANSI 컬러 상수(AMBER, CYAN, RESET 등)를 사용한다
108
+ 3. setup 완료 직후, 최종 요약 다음에 호출한다 — 핵심 설정 흐름을 방해하지 않는다
109
+ 4. 모든 gh 호출은 `timeout: 5000`, `stdio: ["pipe","pipe","pipe"]`로 감싸서 실패해도 setup을 블로킹하지 않는다
110
+ 5. 거절 시 죄책감을 주지 않는다 — URL만 조용히 남긴다
111
+
112
+ ## UX 카피 톤
113
+
114
+ Apple 스타일: 짧고, 자신감 있고, 부담 없이.
115
+
116
+ | 상황 | 멘트 |
117
+ |------|------|
118
+ | 이미 스타 | `이미 함께하고 계시군요. ⭐` |
119
+ | 요청 | `⭐ 하나가 큰 차이를 만듭니다.` |
120
+ | 수락 후 | `함께해 주셔서 감사합니다. ⭐` |
121
+ | 거절 | URL만 |
122
+ | gh 없음 | `⭐ 하나가 큰 차이를 만듭니다.` + URL |
@@ -0,0 +1,106 @@
1
+ ---
2
+ name: tfx-analysis
3
+ description: "코드나 아키텍처를 분석해야 할 때 사용한다. '코드 분석', 'code analysis', '아키텍처 분석', '이 코드 어떻게 돌아가?', '구조 파악' 같은 요청에 반드시 사용. 코드 품질, 보안, 성능, 복잡도 분석이 필요한 모든 상황에 적극 활용."
4
+ triggers:
5
+ - 코드 분석
6
+ - code analysis
7
+ - 아키텍처 분석
8
+ - analysis
9
+ argument-hint: "<분석 대상 — 파일, 디렉토리, 또는 주제>"
10
+ ---
11
+
12
+ # tfx-analysis — Light Code Analysis
13
+
14
+ > **ARGUMENTS 처리**: 이 스킬이 `ARGUMENTS: <값>`과 함께 호출되면, 해당 값을 사용자 입력으로 취급하여
15
+ > 워크플로우의 첫 단계 입력으로 사용한다. ARGUMENTS가 비어있거나 없으면 기존 절차대로 사용자에게 입력을 요청한다.
16
+
17
+
18
+ > **Deep 버전**: tfx-deep-analysis. "제대로/꼼꼼히" 수정자로 자동 에스컬레이션.
19
+ > Codex 단일 분석으로 빠른 인사이트. SuperClaude sc:analyze 영감.
20
+
21
+ ## 용도
22
+
23
+ - 코드 품질 빠른 점검
24
+ - 모듈/파일 구조 분석
25
+ - 의존성 관계 파악
26
+ - 성능 병목 후보 식별
27
+ - 기술 부채 탐지
28
+ - "이 코드 어떤 상태야?" 류의 질문
29
+
30
+ ## 워크플로우
31
+
32
+ ### Step 1: 분석 대상 식별
33
+
34
+ ```
35
+ 우선순위:
36
+ 1. 사용자가 파일/디렉토리 지정 → 해당 범위
37
+ 2. 사용자가 주제 지정 (예: "인증 모듈") → 관련 파일 탐색
38
+ 3. 지정 없음 → 프로젝트 전체 고수준 분석
39
+
40
+ 분석 유형 자동 감지:
41
+ 파일 1개 → 코드 품질 + 로직 분석
42
+ 디렉토리 → 구조 + 의존성 + 모듈 분석
43
+ 프로젝트 전체 → 아키텍처 + 기술 부채 분석
44
+ ```
45
+
46
+ ### Step 2: Codex 분석 실행
47
+
48
+ ```bash
49
+ bash ~/.claude/scripts/tfx-route.sh codex \
50
+ "시니어 소프트웨어 엔지니어로서 다음을 분석하라:
51
+ 대상: {target}
52
+ 유형: {analysis_type}
53
+
54
+ 분석 항목:
55
+ 1. 구조 — 파일/모듈 구성, 계층, 의존성 방향
56
+ 2. 복잡도 — 순환 복잡도 높은 함수, 깊은 중첩
57
+ 3. 품질 — SOLID 위반, 코드 냄새, 중복
58
+ 4. 성능 — O(n²) 패턴, 불필요한 연산, 캐싱 부재
59
+ 5. 기술 부채 — TODO/FIXME, deprecated API, 하드코딩
60
+ 6. 테스트 — 커버리지 추정, 테스트 부재 영역
61
+
62
+ 구조화된 보고서로 출력하라." analyze
63
+ ```
64
+
65
+ ### Step 3: 결과 포맷
66
+
67
+ ```markdown
68
+ ## 분석 결과: {target}
69
+
70
+ ### 구조 개요
71
+ {파일/모듈 구조 요약 또는 의존성 다이어그램}
72
+
73
+ ### 주요 발견
74
+ | # | 카테고리 | 심각도 | 설명 | 위치 |
75
+ |---|---------|--------|------|------|
76
+ | 1 | 복잡도 | high | {설명} | `{file}:{line}` |
77
+ | 2 | 성능 | medium | {설명} | `{file}:{line}` |
78
+
79
+ ### 메트릭
80
+ - 파일 수: {n} | 총 라인: {n}
81
+ - 평균 복잡도: {n} | 최대 복잡도: {n} (`{file}:{function}`)
82
+ - TODO/FIXME: {n}개
83
+ - 테스트 커버리지 추정: {n}%
84
+
85
+ ### 개선 권장사항
86
+ 1. **{우선순위 1}** — {구체적 제안}
87
+ 2. **{우선순위 2}** — {구체적 제안}
88
+ 3. **{우선순위 3}** — {구체적 제안}
89
+ ```
90
+
91
+ ## 토큰 예산
92
+
93
+ | 단계 | 토큰 |
94
+ |------|------|
95
+ | Step 1 (식별) | ~500 |
96
+ | Step 2 (Codex 분석) | ~5K |
97
+ | Step 3 (포맷) | ~2K |
98
+ | **총합** | **~8K** |
99
+
100
+ ## 사용 예
101
+
102
+ ```
103
+ /tfx-analysis "src/auth/"
104
+ /tfx-analysis "이 프로젝트 전체 아키텍처 분석"
105
+ /tfx-analysis "src/utils/parser.ts 코드 품질"
106
+ ```
@@ -0,0 +1,11 @@
1
+ {
2
+ "name": "tfx-analysis",
3
+ "description": "코드나 아키텍처를 분석해야 할 때 사용한다. '코드 분석', 'code analysis', '아키텍처 분석', '이 코드 어떻게 돌아가?', '구조 파악' 같은 요청에 반드시 사용. 코드 품질, 보안, 성능, 복잡도 분석이 필요한 모든 상황에 적극 활용.",
4
+ "triggers": [
5
+ "코드 분석",
6
+ "code analysis",
7
+ "아키텍처 분석",
8
+ "analysis"
9
+ ],
10
+ "argument_hint": "<분석 대상 — 파일, 디렉토리, 또는 주제>"
11
+ }
@@ -27,9 +27,10 @@ triggers:
27
27
  argument-hint: "<command|task> [args...]"
28
28
  ---
29
29
 
30
- # {{SKILL_NAME}} — 통합 CLI 오케스트레이터
30
+ # tfx-auto — 통합 CLI 오케스트레이터
31
31
 
32
- {{> base}}
32
+ > **ARGUMENTS 처리**: 이 스킬이 `ARGUMENTS: <값>`과 함께 호출되면, 해당 값을 사용자 입력으로 취급하여
33
+ > 워크플로우의 첫 단계 입력으로 사용한다. ARGUMENTS가 비어있거나 없으면 기존 절차대로 사용자에게 입력을 요청한다.
33
34
 
34
35
 
35
36
  > **MANDATORY RULES**
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "tfx-auto",
3
+ "description": "통합 CLI 오케스트레이터. 커맨드 숏컷(단일) + 자동 분류/분해(병렬) + 수동 병렬. tfx-route.sh 기반. '코드 짜줘', '구현해줘', '만들어줘', '수정해줘', '고쳐줘', 'implement', 'build', 'fix' 같은 구현/수정 요청에 사용. CLI 라우팅이 필요한 모든 작업에 적극 활용.",
4
+ "triggers": [
5
+ "tfx-auto",
6
+ "implement",
7
+ "build",
8
+ "research",
9
+ "brainstorm",
10
+ "design",
11
+ "test",
12
+ "analyze",
13
+ "troubleshoot",
14
+ "improve",
15
+ "cleanup",
16
+ "explain",
17
+ "document",
18
+ "pm",
19
+ "reflect",
20
+ "estimate",
21
+ "spec-panel",
22
+ "business-panel",
23
+ "index-repo"
24
+ ],
25
+ "argument_hint": "<command|task> [args...]"
26
+ }
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: tfx-auto-codex
3
- description: Codex 리드형 tfx-auto. Claude 네이티브 역할을 Codex로 치환하고 Gemini 사용은 유지합니다.
3
+ description: >
4
+ Codex 리드형 tfx-auto. Claude 네이티브 역할을 Codex로 치환하고 Gemini 사용은 유지합니다.
5
+ '코덱스 리드', '코덱스가 주도', 'codex lead' 같은 요청에 사용.
4
6
  triggers:
5
7
  - tfx-auto-codex
6
8
  argument-hint: "\"작업 설명\" | N:agent_type \"작업 설명\""
@@ -8,6 +10,11 @@ argument-hint: "\"작업 설명\" | N:agent_type \"작업 설명\""
8
10
 
9
11
  # tfx-auto-codex — Codex 리드형 tfx-auto
10
12
 
13
+ > **ARGUMENTS 처리**: 이 스킬이 `ARGUMENTS: <값>`과 함께 호출되면, 해당 값을 사용자 입력으로 취급하여
14
+ > 워크플로우의 첫 단계 입력으로 사용한다. ARGUMENTS가 비어있거나 없으면 기존 절차대로 사용자에게 입력을 요청한다.
15
+
16
+
17
+ > **래퍼**: tfx-auto의 Codex 전용 바로가기. TFX_NO_CLAUDE_NATIVE=1.
11
18
  > 목적: 기존 `tfx-auto`의 오케스트레이션 패턴을 유지하면서
12
19
  > Claude 네이티브 역할(`explore`, `verifier`, `test-engineer`, `qa-tester`)을
13
20
  > Codex로 치환해 Codex/Gemini만으로 실행한다.
@@ -21,7 +28,7 @@ argument-hint: "\"작업 설명\" | N:agent_type \"작업 설명\""
21
28
  3. **Claude 네이티브 제거**
22
29
  - 실행 시 `TFX_NO_CLAUDE_NATIVE=1`로 강제.
23
30
  4. **고난도 설계는 xhigh**
24
- - 설계/분해/비판 검토 성격의 작업은 `codex --profile xhigh` 기준으로 운용.
31
+ - 설계/분해/비판 검토 성격의 작업은 `codex --profile gpt54_xhigh` 기준으로 운용.
25
32
 
26
33
  ## 사용법
27
34
 
@@ -46,10 +53,31 @@ TFX_NO_CLAUDE_NATIVE=1 bash ~/.claude/scripts/tfx-route.sh {agent} '{prompt}' {m
46
53
  `TFX_NO_CLAUDE_NATIVE=1`일 때:
47
54
 
48
55
  - `explore` -> Codex `fast`
49
- - `verifier` -> Codex `thorough review`
56
+ - `verifier` -> Codex `thorough review` (**기본값: 이미 Codex로 설정됨**)
50
57
  - `test-engineer` -> Codex `high`
51
58
  - `qa-tester` -> Codex `thorough review`
52
59
 
60
+ > **참고:** `verifier`는 tfx-auto-codex의 기본 라우팅에서 이미 Codex로 실행된다.
61
+ > 별도 오버라이드가 필요한 경우 `TFX_VERIFIER_OVERRIDE` 환경변수를 사용한다.
62
+
63
+ ### TFX_VERIFIER_OVERRIDE
64
+
65
+ `verifier` 역할의 기본 Codex 라우팅을 재정의한다.
66
+
67
+ ```bash
68
+ # Claude 네이티브 verifier로 실행 (예: 도구 접근이 필요한 경우)
69
+ TFX_VERIFIER_OVERRIDE=claude-native /tfx-auto-codex "..."
70
+
71
+ # 특정 Codex 프로필로 강제 지정
72
+ TFX_VERIFIER_OVERRIDE=codex:xhigh /tfx-auto-codex "..."
73
+ ```
74
+
75
+ | 값 | 동작 |
76
+ |----|------|
77
+ | 미설정 (기본) | Codex `thorough review` |
78
+ | `codex:<profile>` | 지정 프로필로 Codex 실행 |
79
+ | `claude-native` | Claude 네이티브 verifier로 폴백 |
80
+
53
81
  ## 트리아지 기준
54
82
 
55
83
  - `codex`: 코드 구현/수정/분석/리뷰/디버깅/테스트/검증/리서치
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "tfx-auto-codex",
3
+ "description": "Codex 리드형 tfx-auto. Claude 네이티브 역할을 Codex로 치환하고 Gemini 사용은 유지합니다. '코덱스 리드', '코덱스가 주도', 'codex lead' 같은 요청에 사용.",
4
+ "triggers": [
5
+ "tfx-auto-codex"
6
+ ],
7
+ "argument_hint": "\\\"작업 설명\\\" | N:agent_type \\\"작업 설명\\\""
8
+ }
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: tfx-autopilot
3
+ description: "단일 파일/모듈 수준의 간단한 작업을 자율 구현할 때 사용한다. 구현+검증까지 5분 이내 완료 가능한 작업, '간단히', '빠르게', '하나만', '자동으로', '알아서 해', '그냥 해줘' 같은 수식어가 있을 때 사용. 복잡한 멀티파일 작업은 tfx-fullcycle을 사용하세요."
4
+ triggers:
5
+ - autopilot
6
+ - 자동
7
+ - 알아서 해
8
+ argument-hint: "<구현할 작업 설명>"
9
+ ---
10
+
11
+ # tfx-autopilot — Light Autonomous Execution
12
+
13
+ > **ARGUMENTS 처리**: 이 스킬이 `ARGUMENTS: <값>`과 함께 호출되면, 해당 값을 사용자 입력으로 취급하여
14
+ > 워크플로우의 첫 단계 입력으로 사용한다. ARGUMENTS가 비어있거나 없으면 기존 절차대로 사용자에게 입력을 요청한다.
15
+
16
+
17
+ > Codex 직접 구현 → Claude 검증. 최소 토큰으로 빠른 자율 실행.
18
+
19
+ ## 용도
20
+
21
+ - 명확한 단일 작업을 빠르게 자동 구현
22
+ - 보일러플레이트 생성 + 검증
23
+ - 간단한 버그 수정 자동화
24
+ - 린트/포맷/리팩터 자동 적용
25
+ - "알아서 해줘" 류의 명확한 요청
26
+
27
+ ## 워크플로우
28
+
29
+ ### Step 1: 작업 파싱
30
+
31
+ 사용자 입력에서 구현 범위와 완료 기준을 추출한다:
32
+
33
+ ```
34
+ 입력: "로그인 API에 rate limiting 추가"
35
+ 파싱: {
36
+ task: "로그인 API에 rate limiting 추가",
37
+ scope: ["src/routes/auth.ts", "src/middleware/"],
38
+ criteria: [
39
+ "rate limiter 미들웨어 생성",
40
+ "로그인 엔드포인트에 적용",
41
+ "기존 테스트 통과"
42
+ ]
43
+ }
44
+ ```
45
+
46
+ 모호하면 AskUserQuestion으로 명확화.
47
+
48
+ ### Step 2: Codex 직접 구현
49
+
50
+ ```bash
51
+ bash ~/.claude/scripts/tfx-route.sh codex \
52
+ "다음 작업을 구현하라:
53
+ 작업: {task}
54
+ 프로젝트 컨텍스트: {context}
55
+ 완료 기준: {criteria}
56
+
57
+ 1. 관련 파일을 읽고 구조를 파악하라
58
+ 2. 필요한 코드를 작성/수정하라
59
+ 3. 기존 테스트를 실행하여 회귀가 없는지 확인하라
60
+ 4. 변경 사항을 요약하라" implement
61
+ ```
62
+
63
+ ### Step 3: Claude 검증
64
+
65
+ Codex 실행 완료 후, Claude가 변경 사항을 검증한다:
66
+
67
+ ```
68
+ 검증 항목:
69
+ 1. 파일 변경 확인 — git diff로 실제 변경 내용 확인
70
+ 2. 완료 기준 충족 — 각 criterion 대조
71
+ 3. 회귀 여부 — 테스트 결과 확인
72
+ 4. 코드 품질 — 명백한 결함 여부 (깊은 리뷰는 아님)
73
+
74
+ 판정:
75
+ PASS → 완료 보고
76
+ FAIL → Codex에 수정 지시 (1회 재시도)
77
+ 재시도 FAIL → 사용자에게 문제 보고
78
+ ```
79
+
80
+ ### Step 4: 완료 보고
81
+
82
+ ```markdown
83
+ ## Autopilot 완료: {task}
84
+
85
+ ### 변경 사항
86
+ - `{file1}` — {변경 요약}
87
+ - `{file2}` — {변경 요약}
88
+
89
+ ### 검증
90
+ - 완료 기준: {pass}/{total} 충족
91
+ - 테스트: {pass}/{total} 통과
92
+ - 검증: Claude ✓
93
+
94
+ ### 다음 단계 (선택)
95
+ - {추가 권장 사항이 있으면}
96
+ ```
97
+
98
+ ## 토큰 예산
99
+
100
+ | 단계 | 토큰 |
101
+ |------|------|
102
+ | Step 1 (파싱) | ~500 |
103
+ | Step 2 (Codex 구현) | ~5K |
104
+ | Step 3 (Claude 검증) | ~3K |
105
+ | Step 4 (보고) | ~500 |
106
+ | 재시도 (필요 시) | +4K |
107
+ | **총합** | **~10K** |
108
+
109
+ ## 사용 예
110
+
111
+ ```
112
+ /tfx-autopilot "이 함수에 입력 검증 추가해줘"
113
+ /tfx-autopilot "ESLint 경고 전부 수정"
114
+ /tfx-autopilot "알아서 해 — 이 TODO 코멘트 3개 구현"
115
+ ```
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "tfx-autopilot",
3
+ "description": "단일 파일/모듈 수준의 간단한 작업을 자율 구현할 때 사용한다. 구현+검증까지 5분 이내 완료 가능한 작업, '간단히', '빠르게', '하나만', '자동으로', '알아서 해', '그냥 해줘' 같은 수식어가 있을 때 사용. 복잡한 멀티파일 작업은 tfx-fullcycle을 사용하세요.",
4
+ "triggers": [
5
+ "autopilot",
6
+ "자동",
7
+ "알아서 해"
8
+ ],
9
+ "argument_hint": "<구현할 작업 설명>"
10
+ }
@@ -2,17 +2,16 @@
2
2
  name: tfx-autoresearch
3
3
  description: >
4
4
  자율 웹 리서치 → 실행 가능 계획 도출.
5
- 주제를 받아 웹 검색 → 정보 수집 → 분석 → 구조화된 리서치 보고서 생성.
6
- '알아봐', '조사해', '리서치해줘', '검색하고 정리해', 'research and plan' 같은 요청에 반드시 사용.
7
- 검색 실행 가능한 계획까지 도출이 필요할 때 적극 활용.
5
+ 주제를 받아 웹 검색 → 정보 수집 → 분석 → 구조화된 리서치 보고서 + 실행 계획 생성.
6
+ '자율 리서치', 'autoresearch', '검색하고 정리해', 'research and plan' 같은 요청에 사용.
7
+ 단순 검색은 tfx-research, 자율 리서치+계획 도출은 스킬.
8
8
  triggers:
9
9
  - autoresearch
10
10
  - 자율 리서치
11
11
  - 자동 리서치
12
12
  - 웹 리서치
13
- - 조사해
14
- - 알아봐
15
- - research this
13
+ - research and plan
14
+ - 검색하고 정리해
16
15
  argument-hint: "<topic>"
17
16
  source: GAP 분석 P2 #8
18
17
  ---