tfx-prune
명시 `tfx-prune` 또는 TFX 3자 합의 cleanup을 요청할 때 사용한다. 무수식 AI slop/deslop/refactor는 host ai-slop-cleaner가 소유한다.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
명시 `tfx-prune` 또는 TFX 3자 합의 cleanup을 요청할 때 사용한다. 무수식 AI slop/deslop/refactor는 host ai-slop-cleaner가 소유한다.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
어떤 스킬·경로를 선택할지 묻는 메타 라우팅 요청에 사용한다. 실행하지 않고 canonical routing SSOT에서 branch와 즉시 owner 하나만 반환한다.
Use when Claude, Codex, or a Triflux worker needs live Claude↔Codex orchestration: start/ask/stop, multi-turn, peer relay, daemon UDS attach, or UDS-first with tmux fallback.
CLI 프로젝트의 setup/postinstall 흐름에 GitHub 스타 요청을 추가한다. 'star prompt', '스타 요청', '리포 스타', 'star request', '깃헙 스타 넣어줘', 'star 눌러달라고', '응원 요청' 같은 요청에 사용한다.
코드나 아키텍처를 분석해야 할 때 사용한다. '코드 분석', 'code analysis', '아키텍처 분석', '이 코드 어떻게 돌아가?', '구조 파악', '심층 분석', '제대로 분석', '3관점 분석', '편향 없이 분석' 같은 요청에 반드시 사용.
통합 CLI 오케스트레이터이자 실행 스킬 front door. 단일/병렬 구현·수정 작업을 자동 분류해 Codex 우선으로 dispatch 하고, 명시 플래그로 mode/parallel/consensus 등 동작을 오버라이드한다. '코드 짜줘', '구현해줘', '만들어줘', '수정해줘', '고쳐줘', 'implement', 'build', 'fix' 같은 구현/수정 요청에 사용. 플래그 상세는 argument-hint, 라우팅 정책은 .claude/rules/tfx-routing.md 참조.
triflux 진단 및 수리 도구. AskUserQuestion 기반 인터랙티브 선택지로 CLI 미발견, HUD 미표시, 캐시 오류, 스킬 미설치 등을 진단하고 자동 수정합니다. Use when: not working, broken, error, 안 돼, 이상해, 에러, 캐시, reset, doctor
| internal | true |
| name | tfx-prune |
| description | 명시 `tfx-prune` 또는 TFX 3자 합의 cleanup을 요청할 때 사용한다. 무수식 AI slop/deslop/refactor는 host ai-slop-cleaner가 소유한다. |
| argument-hint | [파일 경로 또는 git diff 범위] |
라우팅 정본 D8은 .claude/rules/tfx-routing.md를 따른다.
ARGUMENTS 처리: 이 스킬이
ARGUMENTS: <값>과 함께 호출되면, 해당 값을 사용자 입력으로 취급하여 워크플로우의 첫 단계 입력으로 사용한다. ARGUMENTS가 비어있거나 없으면 기존 절차대로 사용자에게 입력을 요청한다.
OMC ai-slop-cleaner 오마주. 핵심 차별점: 단일 판단이 아닌 3자 독립 감지 + 합의 기반 제거. "AI가 만든 슬롭은 AI 3명이 합의해야 슬롭이다."
headless-guard가 이 규칙 위반을 자동 차단한다. 우회 불가.
codex exec 직접 호출 및 deprecated Gemini CLI 직접 호출 절대 금지Bash("tfx multi --teammate-mode headless --auto-attach --dashboard --assign 'cli:프롬프트:역할' --timeout 1800", run_in_background=true) 만 사용 — foreground Bash는 하니스가 600s에 강제 종료. 결과는 task-notification 후 회수Agent(run_in_background=true)| CLI | 역할 | 감지 관점 |
|---|---|---|
| Claude (Opus) | 코드 품질 분석 + 합의 중재 | 설계 원칙, 코드 구조, 불필요 추상화 |
| Codex | AI 슬롭 탐지 | 구현 효율, 중복 패턴, 과잉 에러 핸들링 |
| Antigravity | 가독성 평가 | 가독성/DX, 과잉 주석, 과잉 타입 |
| 카테고리 | 설명 | 예시 |
|---|---|---|
| 불필요 추상화 | 단일 용도인데 인터페이스/팩토리/전략 패턴 적용 | UserFactory for 1 user type |
| 중복 코드 | 같은 로직의 반복 | 동일 validation을 3곳에 복붙 |
| 과잉 에러 핸들링 | 발생 불가능한 에러를 처리 | catch (e) { /* impossible */ } |
| 과잉 주석 | 코드가 이미 명확한데 주석 | // increment i by 1 i++ |
| 과잉 타입 | 불필요하게 복잡한 타입 정의 | 5단계 중첩 제네릭 |
| 사용되지 않는 코드 | import 했지만 사용 안 함 | dead imports, unused variables |
| 과잉 로깅 | 불필요한 console.log/debug | console.log("here") |
인자 없이 호출된 경우 사용자에게 범위를 선택받는다:
1. 최근 변경 파일만 (git diff)
2. 전체 프로젝트
3. 특정 디렉토리 지정
git diff HEAD로 최근 변경 파일 대상파일 경로나 git diff 범위가 인자로 이미 제공된 경우 이 단계를 건너뛴다.
대상 결정 우선순위:
git diff --name-only HEAD~1로 최근 변경 파일소스 파일만 필터: .ts, .js, .mjs, .tsx, .py 등. node_modules, dist, build 제외.
아래 2개 도구를 반드시 같은 응답에서 동시에 호출하라.
Claude (Agent, background):
Agent(
subagent_type="general-purpose",
model="opus",
run_in_background=true,
prompt="다음 파일에서 AI 슬롭을 감지하세요. 코드 품질 관점으로 분석합니다.
슬롭 정의: 불필요 추상화, 중복, 과잉 에러핸들링, 과잉 주석, 과잉 타입, 미사용 코드, 과잉 로깅.
파일: {file_content}
각 발견에 대해 JSON: [{ id, category, line_start, line_end, description, severity, suggested_fix }]
severity: critical(기능에 영향) | high(가독성 심각) | medium(개선) | low(취향)
슬롭이 아닌 것은 보고하지 마세요. 과탐(false positive)보다 미탐이 낫습니다."
)
Codex + Antigravity (Bash, background):
Bash("tfx multi --teammate-mode headless --auto-attach --dashboard \
--assign 'codex:다음 파일에서 AI 슬롭을 감지하세요. 구현 효율 관점(중복 패턴, 과잉 에러핸들링, 미사용 코드)으로 분석. 파일: {file_content}. JSON: [{id,category,line_start,line_end,description,severity,suggested_fix}]. severity: critical|high|medium|low. 과탐보다 미탐이 낫습니다.:slop-detector' \
--assign 'antigravity:다음 파일에서 AI 슬롭을 감지하세요. 가독성/DX 관점(과잉 주석, 과잉 타입, 불필요 추상화)으로 분석. 파일: {file_content}. JSON: [{id,category,line_start,line_end,description,severity,suggested_fix}]. severity: critical|high|medium|low. 과탐보다 미탐이 낫습니다.:readability-reviewer' \
--timeout 1800", run_in_background=true)
배리어: 위 dispatch는 background — task-notification 완료(
=== HEADLESS_COMPLETE ... ===마커) 후 출력 파일에서 결과를 회수하고, Agent 결과도 수집한 다음에만 Step 3을 진행한다.
3개 CLI 결과를 교차검증한다:
for each finding in ALL results:
agreement = count(CLIs that found same or similar slop at same location)
if agreement >= 2:
→ "CONFIRMED SLOP" — 제거 대상
elif agreement == 1:
→ "UNCONFIRMED" — 제거하지 않음 (과탐 방지)
원칙: 2+ 합의된 항목만 제거한다. 1개 CLI만 지적한 항목은 무시한다.
확정된 슬롭을 안전 순서대로 제거한다:
각 제거 후 변경 내용을 기록한다. 제거 이유를 주석으로 남기지 않는다 (그것 자체가 슬롭).
제거 후 안전성을 검증한다:
Bash("npm test") (또는 프로젝트 테스트 명령)## Deslop 보고서
### 요약
| 항목 | 수 |
|------|-----|
| 대상 파일 | {count} |
| 감지 (전체) | {total_findings} |
| 합의 확정 | {confirmed} |
| 미확정 (무시) | {unconfirmed} |
| 제거 완료 | {removed} |
| 롤백 (테스트 실패) | {rolled_back} |
### 제거된 슬롭
| # | 파일 | 라인 | 카테고리 | 합의 | 설명 |
|---|------|------|----------|------|------|
| 1 | auth.ts | 42-48 | 과잉 주석 | 3/3 | 자명한 코드에 장문 주석 |
| 2 | utils.ts | 15-20 | 미사용 import | 2/3 | lodash 미사용 |
### 미확정 (수동 검토 권장)
| # | 파일 | 라인 | 카테고리 | 지적 CLI | 설명 |
|---|------|------|----------|---------|------|
| 1 | api.ts | 80-95 | 불필요 추상화 | Codex만 | Factory 패턴 필요성 논쟁 |
### 테스트 결과
통과: {pass}/{total} | 실패: {fail} | 롤백: {rollback}
| 단계 | 토큰 |
|---|---|
| Step 1 (파일 수집) | ~0.5K |
| Step 2 (3x 독립 감지) | ~6K |
| Step 3 (합의 필터링) | ~1K |
| Step 4 (제거) | ~1.5K |
| Step 5 (회귀 테스트) | ~0.5K |
| Step 6 (보고서) | ~0.5K |
| 총합 | ~10K |
/tfx-prune
/tfx-prune src/auth/middleware.ts
/tfx-prune HEAD~5..HEAD