triflux 8.3.0 → 8.4.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.
@@ -0,0 +1,113 @@
1
+ ---
2
+ name: tfx-deep-plan
3
+ description: "중요한 기능의 구현 계획을 3자 합의로 수립할 때 사용한다. 'deep plan', '합의 계획', 'ralplan', '철저한 계획', '제대로 설계하고 시작하자' 같은 요청에 사용. 마이크로서비스 도입, 대규모 리팩터링 등 리스크가 큰 작업의 사전 계획에 적극 활용."
4
+ triggers:
5
+ - deep plan
6
+ - 합의 계획
7
+ - consensus plan
8
+ - deep-plan
9
+ - 철저한 계획
10
+ - ralplan
11
+ argument-hint: "<구현할 기능 설명>"
12
+ ---
13
+
14
+ # tfx-deep-plan — Consensus Planning via Tri-CLI Debate
15
+
16
+ > OMC ralplan 오마주. Planner + Architect + Critic 3자 반복 토론으로 합의된 계획.
17
+
18
+ ## 워크플로우
19
+
20
+ ### Round 1: 독립 계획 (Anti-Herding)
21
+
22
+ ```
23
+ Claude Opus (Planner):
24
+ "소프트웨어 아키텍트로서 {feature}의 구현 계획을 수립하라.
25
+ 태스크 분해, 순서, 의존성, 검증 방법 포함.
26
+ JSON: { tasks, dependencies, risks, complexity, reasoning }"
27
+
28
+ Codex (Architect):
29
+ "시니어 엔지니어로서 {feature}의 기술적 설계를 작성하라.
30
+ 파일 구조, API 인터페이스, 데이터 모델, 에러 처리 포함.
31
+ JSON: { design, file_changes, interfaces, data_models, risks }"
32
+
33
+ Gemini (Critic):
34
+ "QA/보안 전문가로서 {feature} 구현 시 예상되는 문제를 분석하라.
35
+ 엣지 케이스, 보안 위협, 성능 병목, 테스트 전략 포함.
36
+ JSON: { edge_cases, security_risks, performance_concerns, test_strategy }"
37
+ ```
38
+
39
+ ### Round 2: 교차 검토
40
+
41
+ 각 CLI에게 다른 두 CLI의 결과를 제시:
42
+
43
+ ```
44
+ Claude에게:
45
+ "Architect 설계: {codex_result}
46
+ Critic 우려: {gemini_result}
47
+ 이를 반영하여 계획을 수정하라. 수용/반박 근거 포함."
48
+
49
+ Codex에게:
50
+ "Planner 계획: {claude_result}
51
+ Critic 우려: {gemini_result}
52
+ 설계를 수정하라."
53
+
54
+ Gemini에게:
55
+ "Planner 계획: {claude_result}
56
+ Architect 설계: {codex_result}
57
+ 우려 사항이 해소되었는지 판단하라. 미해소 항목 지적."
58
+ ```
59
+
60
+ ### Round 3: 합의 도출 (필요 시)
61
+
62
+ ```
63
+ Round 2 후 Consensus Score 산출:
64
+ >= 80 → 합의 확정
65
+ 60-79 → Round 3 진행 (미합의 항목만)
66
+ < 60 → 사용자에게 주요 불일치 제시 + 방향 결정 요청
67
+ ```
68
+
69
+ ### Final: 합의된 계획 출력
70
+
71
+ ```markdown
72
+ ## 합의된 구현 계획: {feature}
73
+ **Consensus Score**: {score}% | **Rounds**: {count}
74
+
75
+ ### 아키텍처 결정
76
+ {3자 합의된 설계 방향}
77
+
78
+ ### 태스크 (합의됨)
79
+ 1. [ ] {태스크1} → 검증: {방법} — Planner ✓ Architect ✓ Critic ✓
80
+ 2. [ ] {태스크2} → 검증: {방법} — Planner ✓ Architect ✓ Critic: "{조건부}"
81
+ ...
82
+
83
+ ### 파일 변경 계획
84
+ | 파일 | 작업 | 이유 |
85
+ |------|------|------|
86
+ | {file} | 생성/수정 | {reason} |
87
+
88
+ ### 리스크 및 완화 (합의됨)
89
+ - {리스크}: {완화} — 3/3 합의
90
+
91
+ ### 테스트 전략 (Critic 주도)
92
+ {Gemini가 제안하고 Claude/Codex가 합의한 테스트 전략}
93
+
94
+ ### 미합의 사항
95
+ - {항목}: {각 CLI 입장 요약}
96
+ ```
97
+
98
+ ## 토큰 예산
99
+
100
+ | 라운드 | 토큰 |
101
+ |--------|------|
102
+ | Round 1 (3x 독립) | ~12K |
103
+ | Round 2 (3x 교차) | ~9K |
104
+ | Round 3 (필요시) | ~6K |
105
+ | 합의 종합 | ~3K |
106
+ | **총합** | **~20-30K** |
107
+
108
+ ## 사용 예
109
+
110
+ ```
111
+ /tfx-deep-plan "마이크로서비스 간 이벤트 기반 통신 도입"
112
+ /tfx-deep-plan "기존 REST API를 GraphQL로 점진적 마이그레이션"
113
+ ```
@@ -0,0 +1,158 @@
1
+ ---
2
+ name: tfx-deep-qa
3
+ description: "보안, 성능, 접근성까지 포함한 철저한 검증이 필요할 때 사용한다. 'deep qa', '심층 검증', '철저히 테스트', '보안까지 확인', '전방위 검증' 같은 요청에 사용. 프로덕션 배포 전 다각도 품질 검증에 적극 활용."
4
+ triggers:
5
+ - deep qa
6
+ - 심층 검증
7
+ - thorough test
8
+ - deep-qa
9
+ argument-hint: "[테스트 대상 경로 또는 기능 설명]"
10
+ ---
11
+
12
+ # tfx-deep-qa — Tri-CLI Deep Verification
13
+
14
+ > 3-CLI 독립 검증 → 교차검증 → 2+ 합의 항목만 보고. false-positive 87% 감소.
15
+
16
+ ## 핵심 원리
17
+
18
+ **Anti-Herding**: 3개 CLI가 서로의 결과를 보지 않고 독립 검증.
19
+ **Consensus Only**: 2개 이상 CLI가 동일 이슈를 지적한 항목만 최종 보고.
20
+
21
+ ## 용도
22
+
23
+ - 릴리스 전 전면 검증
24
+ - 보안/성능/접근성을 동시에 다각도 점검
25
+ - 단일 CLI 검증으로는 놓치는 교차 영역 결함 탐지
26
+ - false-positive 최소화가 필요한 QA 게이트
27
+
28
+ ## 워크플로우
29
+
30
+ ### Step 1: 검증 대상 수집
31
+
32
+ ```
33
+ 대상 결정:
34
+ 1. 사용자 지정 파일/경로 → 해당 범위
35
+ 2. git diff (staged + unstaged) → 변경된 파일
36
+ 3. 지정 없음 → 프로젝트 전체 테스트
37
+
38
+ 수집 항목:
39
+ - 변경 파일 목록 + diff
40
+ - 관련 테스트 파일
41
+ - 영향 받는 모듈/의존성
42
+ ```
43
+
44
+ ### Step 2: 3-CLI 독립 검증 (동시, 상호 비공개)
45
+
46
+ ```
47
+ Claude Opus (기능 + 엣지케이스, background):
48
+ "QA 엔지니어로서 다음 코드의 기능 정확성을 검증하라.
49
+ - 테스트 실행 후 결과 보고
50
+ - 누락된 엣지 케이스 식별 (null, 빈 입력, 경계값, 동시성)
51
+ - 누락된 테스트 케이스 제안
52
+ JSON: { test_result: {pass, fail, skip},
53
+ findings: [{id, file, line, category, severity, description, test_scenario}],
54
+ edge_case_tests: [...],
55
+ overall_verdict: 'pass'|'fail' }"
56
+
57
+ Codex (보안 + 성능, background):
58
+ codex exec review --profile thorough \
59
+ --dangerously-bypass-approvals-and-sandbox --skip-git-repo-check \
60
+ "보안/성능 전문가로서 검증하라.
61
+ - OWASP Top 10 체크
62
+ - O(n²) 이상 복잡도 탐지
63
+ - 메모리 누수 패턴
64
+ - 입력 검증 누락
65
+ JSON: { findings: [{id, file, line, category, severity, description, fix}],
66
+ overall_verdict: 'pass'|'fail' }"
67
+
68
+ Gemini (UX + 접근성, background):
69
+ gemini -y -p \
70
+ "UX/접근성 전문가로서 검증하라.
71
+ - API 응답 형식 일관성
72
+ - 에러 메시지 사용자 친화성
73
+ - WCAG 2.1 AA 준수 (UI 관련 시)
74
+ - 문서와 실제 동작 일치 여부
75
+ JSON: { findings: [{id, file, line, category, severity, description, suggestion}],
76
+ overall_verdict: 'pass'|'fail' }"
77
+ ```
78
+
79
+ ### Step 3: Consensus Scoring
80
+
81
+ ```
82
+ 모든 findings를 수집하여 유사도 비교:
83
+ - 동일 파일+라인±5 + 유사 카테고리 → 동일 이슈로 간주
84
+ - 3/3 합의 → CONFIRMED (severity 유지)
85
+ - 2/3 합의 → LIKELY (severity 유지, 반대 의견 첨부)
86
+ - 1/3만 지적 → UNVERIFIED (참고용, 별도 섹션)
87
+
88
+ consensus_score = consensus_items / total_unique_items × 100
89
+ ```
90
+
91
+ ### Step 4: 실패 수정 (합의된 항목만)
92
+
93
+ ```
94
+ 합의된 Critical/High 항목에 대해:
95
+ codex exec --dangerously-bypass-approvals-and-sandbox --skip-git-repo-check \
96
+ "다음 합의된 이슈를 수정하라:
97
+ {consensus_findings}
98
+ 수정 후 테스트를 재실행하여 확인하라."
99
+ ```
100
+
101
+ ### Step 5: 종합 보고서
102
+
103
+ ```markdown
104
+ ## Deep QA Report: {target}
105
+ **Consensus Score**: {score}% | **Verifiers**: Claude/Codex/Gemini
106
+ **Verdict**: PASS / CONDITIONAL PASS / FAIL
107
+
108
+ ### Critical (3/3 합의)
109
+ - [C1] `{file}:{line}` — {description}
110
+ - Claude: {detail} | Codex: {detail} | Gemini: {detail}
111
+ - **Fix**: {applied_fix}
112
+
113
+ ### High (2/3 합의)
114
+ - [H1] `{file}:{line}` — {description}
115
+ - 합의: {agreers} | 반대: {dissenter}: "{reason}"
116
+
117
+ ### Verified Medium
118
+ - ...
119
+
120
+ ### 엣지 케이스 테스트 제안
121
+ | 시나리오 | 입력 | 기대 결과 | 제안자 |
122
+ |---------|------|----------|--------|
123
+ | {scenario} | {input} | {expected} | Claude |
124
+
125
+ ### Unverified (1/3만 지적, 참고용)
126
+ - [U1] `{file}:{line}` — {description} (by {single_cli})
127
+
128
+ ### 수정 요약
129
+ - 수정된 파일: {list}
130
+ - 테스트 재실행 결과: {pass}/{total}
131
+
132
+ ### 검증 통계
133
+ | CLI | 영역 | 발견 수 | 합의 기여율 |
134
+ |-----|------|---------|------------|
135
+ | Claude | 기능/엣지케이스 | {n} | {%} |
136
+ | Codex | 보안/성능 | {n} | {%} |
137
+ | Gemini | UX/접근성 | {n} | {%} |
138
+ ```
139
+
140
+ ## 토큰 예산
141
+
142
+ | 단계 | 토큰 |
143
+ |------|------|
144
+ | Step 1 (수집) | ~1K |
145
+ | Step 2 (3x 독립 검증) | ~15K |
146
+ | Step 3 (Consensus) | ~3K |
147
+ | Step 4 (수정) | ~3K |
148
+ | Step 5 (보고) | ~3K |
149
+ | **총합** | **~25K** |
150
+
151
+ ## 사용 예
152
+
153
+ ```
154
+ /tfx-deep-qa
155
+ /tfx-deep-qa "src/auth/ 디렉토리 전체"
156
+ /tfx-deep-qa "최근 커밋 변경사항 심층 검증"
157
+ /tfx-deep-qa "결제 모듈 배포 전 최종 검증"
158
+ ```
@@ -0,0 +1,212 @@
1
+ ---
2
+ name: tfx-deep-research
3
+ description: "기술 비교, 아키텍처 조사, 경쟁사 분석 등 깊이 있는 리서치가 필요할 때 사용한다. '심층 조사', '자세히 알아봐', 'deep research', '전면 리서치', '비교 분석 보고서', '종합 리서치' 같은 요청에 반드시 사용. 단순 검색이 아닌 멀티소스 교차검증이 필요한 리서치에 적극 활용."
4
+ triggers:
5
+ - deep research
6
+ - 딥 리서치
7
+ - 심층 리서치
8
+ - deep-research
9
+ - thorough research
10
+ - 깊이 조사
11
+ - 전면 리서치
12
+ argument-hint: "[--depth quick|standard|deep] <리서치 주제>"
13
+ ---
14
+
15
+ # tfx-deep-research — Multi-Source Deep Research with Tri-CLI Consensus
16
+
17
+ > 쿼리 분해 → 3-CLI 독립 병렬 검색 → 교차검증 → 합의 기반 종합 보고서.
18
+ > STORM(Stanford) perspective-guided + GPT-Researcher recursive tree + Tavily deep research pipeline 영감.
19
+
20
+ ## 용도
21
+
22
+ - 기술 선택 전 심층 조사
23
+ - 경쟁사/대안 분석
24
+ - 새 도메인 학습을 위한 종합 리서치
25
+ - 아키텍처 결정 근거 수집
26
+ - 학술/산업 동향 파악
27
+
28
+ ## Depth 모드
29
+
30
+ | 모드 | 서브쿼리 | 소스/쿼리 | 라운드 | 토큰 | 시간 |
31
+ |------|---------|----------|--------|------|------|
32
+ | quick | 3개 | 2 | 1 | ~20K | 2-3분 |
33
+ | standard | 5개 | 3 | 1-2 | ~40K | 5-8분 |
34
+ | deep | 8-10개 | 5 | 2-3 | ~80K | 10-15분 |
35
+
36
+ 기본값: standard
37
+
38
+ ## 워크플로우
39
+
40
+ ### Pre-Phase: Depth 선택 (--depth 미지정 시)
41
+
42
+ `--depth` 플래그가 지정되지 않은 경우, AskUserQuestion으로 depth를 선택받는다:
43
+
44
+ ```
45
+ AskUserQuestion:
46
+ "리서치 깊이를 선택하세요:"
47
+ 1. quick (3 서브쿼리, ~20K 토큰, 2-3분)
48
+ 2. standard (5 서브쿼리, ~40K 토큰, 5-8분) [기본]
49
+ 3. deep (8-10 서브쿼리, ~80K 토큰, 10-15분)
50
+ ```
51
+
52
+ 사용자가 선택하지 않고 빈 응답을 보내면 기본값 `standard`를 적용한다.
53
+
54
+ ### Phase 0: 주제 분석 및 쿼리 분해
55
+
56
+ Claude Opus가 주제를 분석하고 서브쿼리로 분해한다:
57
+
58
+ ```
59
+ 입력: "2026년 실시간 데이터 파이프라인 아키텍처 비교"
60
+
61
+ 분해 결과:
62
+ {
63
+ "main_topic": "실시간 데이터 파이프라인 아키텍처 2026",
64
+ "sub_queries": [
65
+ "Apache Kafka vs Apache Pulsar vs Redpanda 2026 comparison benchmark",
66
+ "real-time data pipeline architecture patterns 2026 stream processing",
67
+ "Apache Flink vs Spark Structured Streaming vs RisingWave 2026",
68
+ "real-time data pipeline cloud managed services AWS Kinesis GCP Dataflow Azure Event Hub",
69
+ "real-time CDC change data capture Debezium alternatives 2026"
70
+ ],
71
+ "perspectives": [
72
+ "성능/처리량 관점",
73
+ "운영 복잡도/DevOps 관점",
74
+ "비용/스케일링 관점"
75
+ ]
76
+ }
77
+ ```
78
+
79
+ ### Phase 1: 3-CLI 독립 병렬 검색 (Anti-Herding)
80
+
81
+ **3개 CLI가 동시에, 서로의 결과를 보지 않고 검색한다.**
82
+
83
+ 각 CLI에 서로 다른 MCP + 관점을 할당:
84
+
85
+ ```
86
+ Claude (Agent, background):
87
+ - MCP: Exa (neural semantic search)
88
+ - 관점: 학술/기술 깊이 (논문, 공식 문서, 벤치마크)
89
+ - 각 서브쿼리를 Exa web_search_exa로 검색
90
+ - category: "research paper" 우선
91
+ - highlights 추출, numResults: 5/쿼리
92
+
93
+ Codex (Bash, background):
94
+ codex exec --dangerously-bypass-approvals-and-sandbox --skip-git-repo-check \
95
+ "다음 서브쿼리를 Brave Search로 검색하고 결과를 종합하라:
96
+ {sub_queries}
97
+ 관점: 실용/구현/산업 사례 중심
98
+ 각 쿼리당 상위 5개 결과의 제목, URL, 핵심 내용을 추출하라."
99
+
100
+ Gemini (Bash, background):
101
+ gemini -y -p \
102
+ "다음 서브쿼리를 Tavily로 검색하라:
103
+ {sub_queries}
104
+ 관점: 비용/운영/DX(개발자 경험) 중심
105
+ 각 결과를 구조화하여 정리하라."
106
+ ```
107
+
108
+ ### Phase 2: 결과 수집 및 교차검증
109
+
110
+ 3개 CLI 결과를 수집한 후 tfx-consensus 프로토콜 적용:
111
+
112
+ ```
113
+ 교차검증 항목:
114
+ 1. 사실 일치 (3개 소스가 동일 사실을 보고하는가)
115
+ 2. 추천 일치 (동일 기술/접근법을 추천하는가)
116
+ 3. 수치 일치 (벤치마크, 가격, 성능 수치)
117
+ 4. 리스크 일치 (동일 위험을 식별하는가)
118
+
119
+ 소스 신뢰도:
120
+ - 공식 문서/벤치마크 → weight 1.0
121
+ - 학술 논문 → weight 0.9
122
+ - 신뢰 블로그 (engineering blog) → weight 0.7
123
+ - 일반 블로그/포럼 → weight 0.5
124
+ - 날짜 가중: 6개월 이내 ×1.0, 1년 이내 ×0.8, 2년 이내 ×0.5
125
+ ```
126
+
127
+ ### Phase 3: 합의 종합 보고서 생성
128
+
129
+ Claude Opus가 교차검증된 결과를 종합하여 최종 보고서 작성:
130
+
131
+ ```markdown
132
+ # Deep Research Report: {topic}
133
+ **Date**: {date} | **Depth**: {depth} | **Consensus Score**: {score}%
134
+ **Sources**: {total_sources}개 | **Sub-queries**: {count}개
135
+
136
+ ## Executive Summary
137
+ {3-5줄 핵심 요약}
138
+
139
+ ## 핵심 발견사항 (Consensus Items)
140
+ ### 1. {finding_1} — 합의도: {3/3 또는 2/3}
141
+ {상세 내용 + 근거 + 출처}
142
+
143
+ ### 2. {finding_2}
144
+ ...
145
+
146
+ ## 비교 분석
147
+ | 항목 | 옵션A | 옵션B | 옵션C |
148
+ |------|-------|-------|-------|
149
+ | 성능 | ... | ... | ... |
150
+ | 비용 | ... | ... | ... |
151
+ | 운영 | ... | ... | ... |
152
+
153
+ ## 미합의 사항 (Disputed Items)
154
+ - {항목}: Claude는 X, Codex는 Y, Gemini는 Z — 이유: ...
155
+
156
+ ## 추천
157
+ {교차검증된 최종 추천 + 조건부 판단 기준}
158
+
159
+ ## 소스 목록
160
+ 1. [{title}]({url}) — 신뢰도: {score} — 사용 MCP: {exa|brave|tavily}
161
+ ...
162
+ ```
163
+
164
+ ### Phase 4: Recursive Depth (deep 모드 전용)
165
+
166
+ deep 모드에서는 Phase 2에서 발견된 중요 하위 주제에 대해 재귀적으로 Phase 1-3을 반복:
167
+
168
+ ```
169
+ if depth == "deep" AND Phase 2에서 중요 하위 주제 발견:
170
+ for each important_subtopic (max 3):
171
+ recurse Phase 1-3 with sub_queries = [subtopic-specific queries]
172
+ merge recursive results into main report
173
+ ```
174
+
175
+ ## 토큰 예산
176
+
177
+ | 단계 | quick | standard | deep |
178
+ |------|-------|----------|------|
179
+ | Phase 0 (분해) | 1K | 2K | 3K |
180
+ | Phase 1 (3x검색) | 9K | 18K | 30K |
181
+ | Phase 2 (교차검증) | 3K | 5K | 8K |
182
+ | Phase 3 (보고서) | 5K | 10K | 15K |
183
+ | Phase 4 (재귀) | — | — | 24K |
184
+ | **총합** | **~18K** | **~35K** | **~80K** |
185
+
186
+ ## MCP 활용 전략 (Exa/Brave/Tavily 리버스엔지니어링 기반)
187
+
188
+ ### Exa 최적 활용
189
+ - `type: "auto"` — neural+keyword 하이브리드
190
+ - `category: "research paper"` — 학술 검색 시
191
+ - `highlights: true, text.maxCharacters: 300` — 토큰 효율 핵심
192
+ - `includeDomains` — 신뢰 도메인 필터링
193
+
194
+ ### Brave 최적 활용
195
+ - `brave_news_search` — 최신 동향/뉴스
196
+ - `freshness: "pw"` (past week) — 최신성 보장
197
+ - `result_filter: "web"` — 불필요한 결과 방지
198
+ - 독립 인덱스 → Google/Bing과 다른 결과
199
+
200
+ ### Tavily 최적 활용
201
+ - `tavily_search` — 빠른 범용 검색
202
+ - `include_raw_content: false` — 토큰 절약
203
+ - `max_results: 5` — 적정 결과 수
204
+ - `search_depth: "advanced"` — standard 모드 이상
205
+
206
+ ## 사용 예
207
+
208
+ ```
209
+ /tfx-deep-research "2026 실시간 데이터 파이프라인 아키텍처 비교"
210
+ /tfx-deep-research --depth deep "Claude Code vs Cursor vs Windsurf 멀티에이전트 지원 비교"
211
+ /tfx-deep-research --depth quick "pnpm vs bun vs npm 2026 벤치마크"
212
+ ```
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: tfx-deep-review
3
+ description: "철저한 코드 리뷰가 필요할 때 사용한다. '꼼꼼히 리뷰', 'deep review', '심층 리뷰', '보안까지 리뷰', '다각도 리뷰', '중요한 변경이라 제대로 봐줘' 같은 요청에 사용. 보안/성능/가독성 3관점 독립 검증이 필요한 중요 코드 변경에 적극 활용."
4
+ triggers:
5
+ - deep review
6
+ - 심층 리뷰
7
+ - multi review
8
+ - deep-review
9
+ - 철저한 리뷰
10
+ argument-hint: "[파일 경로 또는 변경 설명]"
11
+ ---
12
+
13
+ # tfx-deep-review — Tri-CLI Deep Code Review
14
+
15
+ > 3-CLI 독립 리뷰 → 교차검증 → 2+ 합의 항목만 보고. Diffray + Calimero 영감.
16
+
17
+ ## 핵심 원리
18
+
19
+ **Anti-Herding**: Round 1에서 3개 CLI가 서로의 결과를 보지 않고 독립 리뷰.
20
+ **Consensus Only**: 2개 이상 CLI가 동일 이슈를 지적한 항목만 최종 보고 → false-positive 87% 감소.
21
+
22
+ ## 워크플로우
23
+
24
+ ### Step 1: 리뷰 대상 수집
25
+ ```
26
+ git diff (staged + unstaged) 또는 지정 파일 수집
27
+ ```
28
+
29
+ ### Step 2: 3-CLI 독립 리뷰 (동시, 상호 비공개)
30
+
31
+ ```
32
+ Claude Opus (Agent, background):
33
+ 관점: 로직 결함, 아키텍처 위반, 설계 패턴
34
+ "코드 리뷰어로서 로직/아키텍처 관점에서 분석하라.
35
+ JSON: { findings: [{ id, file, line, severity, category, description, suggestion }] }"
36
+
37
+ Codex (Bash, background):
38
+ 관점: 보안 취약점, 성능 병목, 에러 핸들링
39
+ codex exec review --dangerously-bypass-approvals-and-sandbox --skip-git-repo-check \
40
+ "보안/성능 전문가로서 분석하라. OWASP Top 10, O(n²) 패턴, 누락된 에러 핸들링.
41
+ JSON: { findings: [...] }"
42
+
43
+ Gemini (Bash, background):
44
+ 관점: 가독성, 문서화, 네이밍, DX
45
+ gemini -y -p \
46
+ "코드 품질 전문가로서 분석하라. 가독성, 네이밍 컨벤션, 주석 필요성, 타입 안전성.
47
+ JSON: { findings: [...] }"
48
+ ```
49
+
50
+ ### Step 3: Consensus Scoring
51
+
52
+ ```
53
+ 모든 findings를 수집하여 유사도 비교:
54
+ - 동일 파일+라인±5 + 유사 카테고리 → 동일 이슈로 간주
55
+ - 3/3 합의 → severity 유지
56
+ - 2/3 합의 → severity 유지, 반대 의견 첨부
57
+ - 1/3만 지적 → UNVERIFIED 표시 (참고용, 별도 섹션)
58
+
59
+ consensus_score = consensus_items / total_unique_items × 100
60
+ ```
61
+
62
+ ### Step 4: 종합 보고서
63
+
64
+ ```markdown
65
+ ## Deep Code Review: {target}
66
+ **Consensus Score**: {score}% | **Reviewers**: Claude/Codex/Gemini
67
+
68
+ ### Critical (3/3 합의)
69
+ - [C1] `{file}:{line}` — {description}
70
+ - Claude: {detail} | Codex: {detail} | Gemini: {detail}
71
+ - **Fix**: {suggestion}
72
+
73
+ ### High (2/3 합의)
74
+ - [H1] `{file}:{line}` — {description}
75
+ - 합의: {agreers} | 반대: {dissenter}: "{reason}"
76
+
77
+ ### Verified Medium
78
+ - ...
79
+
80
+ ### Unverified (1/3만 지적, 참고용)
81
+ - [U1] `{file}:{line}` — {description} (by {single_cli})
82
+
83
+ ### 통계
84
+ | CLI | 발견 수 | 합의 기여율 |
85
+ |-----|---------|------------|
86
+ | Claude | {n} | {%} |
87
+ | Codex | {n} | {%} |
88
+ | Gemini | {n} | {%} |
89
+ ```
90
+
91
+ ## 토큰: ~25K
@@ -0,0 +1,123 @@
1
+ ---
2
+ name: tfx-find
3
+ description: "코드베이스에서 파일, 함수, 클래스, 문자열을 빠르게 찾을 때 사용한다. '코드 검색', 'find in code', '어디에 있어?', '이 함수 어디서 쓰여?', '파일 찾아줘', '코드베이스 탐색' 같은 요청에 반드시 사용. 파일 위치, 심볼 사용처, 패턴 검색이 필요한 모든 상황에 적극 활용."
4
+ triggers:
5
+ - 코드 검색
6
+ - codebase search
7
+ - find in code
8
+ - 코드에서 찾기
9
+ - 코드베이스 검색
10
+ argument-hint: "<검색 패턴 또는 질문>"
11
+ ---
12
+
13
+ # tfx-find — Fast Codebase Explorer
14
+
15
+ > OMC explore agent 오마주. Haiku의 속도 + Glob/Grep/Read의 정밀도.
16
+ > "찾는 건 빠르게, 읽는 건 정확하게."
17
+
18
+ ## 용도
19
+
20
+ - 파일 위치를 모를 때 빠르게 찾기
21
+ - 특정 함수/클래스/변수가 어디서 사용되는지 추적
22
+ - 문자열 패턴으로 코드 검색
23
+ - 프로젝트 구조 빠르게 파악
24
+ - 설정 파일, 진입점, 테스트 파일 탐색
25
+
26
+ ## 워크플로우
27
+
28
+ ### Step 1: 검색 의도 파싱
29
+
30
+ 사용자 입력에서 검색 유형을 판별한다:
31
+
32
+ ```
33
+ 검색 유형:
34
+ file_pattern — "*.test.ts 파일 찾아" → Glob
35
+ symbol — "createBridge 함수 어디?" → Grep (정규식)
36
+ string — "TODO 주석 찾아" → Grep (리터럴)
37
+ structure — "프로젝트 구조 보여줘" → Glob + tree
38
+ usage — "Router 클래스 사용처" → Grep (import/require + 참조)
39
+ definition — "handleAuth 정의 찾아" → Grep (function/class/const 패턴)
40
+ ```
41
+
42
+ ### Step 2: 검색 실행
43
+
44
+ 검색 유형에 따라 최적 도구 조합을 선택한다:
45
+
46
+ ```
47
+ file_pattern:
48
+ Glob("**/{pattern}") → 매칭 파일 목록
49
+
50
+ symbol:
51
+ Grep(pattern="{symbol}", type="{lang}") → 파일 목록
52
+ → 상위 5개 파일 Read (정의부 중심, 각 ±10줄)
53
+
54
+ string:
55
+ Grep(pattern="{string}", output_mode="content", context=2) → 매칭 라인 + 컨텍스트
56
+
57
+ structure:
58
+ Glob("**/*.{ts,js,mjs,py,go}") → 파일 트리 구성
59
+ → 디렉토리별 파일 수 + 역할 요약
60
+
61
+ usage:
62
+ Grep(pattern="import.*{symbol}|require.*{symbol}", output_mode="content") → import 위치
63
+ Grep(pattern="{symbol}", output_mode="content") → 실제 사용 위치
64
+ → 중복 제거 후 사용처 목록
65
+
66
+ definition:
67
+ Grep(pattern="(function|class|const|let|var|export)\\s+{symbol}", output_mode="content")
68
+ → 정의 위치 + 파일 경로
69
+ ```
70
+
71
+ ### Step 3: 결과 정리
72
+
73
+ 검색 결과를 구조화하여 보고한다:
74
+
75
+ ```markdown
76
+ ## 검색 결과: {query}
77
+
78
+ ### 매칭 파일 ({count}개)
79
+ | # | 파일 | 라인 | 컨텍스트 |
80
+ |---|------|------|---------|
81
+ | 1 | src/hub/bridge.mjs | 42 | export function createBridge(...) |
82
+ | 2 | src/hub/router.mjs | 15 | import { createBridge } from './bridge' |
83
+
84
+ ### 코드 스니펫
85
+ {핵심 코드 (필요 시)}
86
+
87
+ ### 관련 파일
88
+ - src/hub/bridge.test.mjs (테스트)
89
+ - src/hub/index.mjs (re-export)
90
+ ```
91
+
92
+ ## 검색 최적화 규칙
93
+
94
+ 1. **Glob 먼저, Grep 나중**: 파일 위치를 알면 Glob, 내용 검색은 Grep.
95
+ 2. **type 필터 사용**: `type: "js"` 등으로 불필요 파일 제외.
96
+ 3. **head_limit 사용**: 결과가 많을 때 상위 N개만 반환.
97
+ 4. **병렬 검색**: 독립적인 검색은 동시에 실행.
98
+ 5. **점진적 확장**: 좁은 범위 → 넓은 범위. `src/` → `**/*`.
99
+
100
+ ## 동작 규칙
101
+
102
+ 1. 결과가 0개이면 패턴을 완화하여 재검색한다 (대소문자 무시, 부분 매칭).
103
+ 2. 결과가 50개 초과이면 가장 관련성 높은 10개만 보여주고 필터 제안.
104
+ 3. 파일 내용은 필요한 부분만 Read한다 (전체 파일 읽기 금지).
105
+ 4. 검색 패턴에 정규식 특수문자가 있으면 자동 이스케이프.
106
+
107
+ ## 토큰 예산
108
+
109
+ | 단계 | 토큰 |
110
+ |------|------|
111
+ | 의도 파싱 | ~200 |
112
+ | 검색 실행 | ~1.5K |
113
+ | 결과 정리 | ~1K |
114
+ | **총합** | **~3K** |
115
+
116
+ ## 사용 예
117
+
118
+ ```
119
+ /tfx-find "createBridge 함수 정의와 사용처"
120
+ /코드 검색 "*.test.mjs 파일 목록"
121
+ /find in code "TODO|FIXME|HACK 주석"
122
+ /코드에서 찾기 "환경변수 사용하는 파일"
123
+ ```