| name | search-first |
| description | 코딩 전에 조사하는 워크플로입니다. 커스텀 코드를 쓰기 전에 기존 도구, 라이브러리, 패턴을 먼저 찾습니다. researcher agent를 호출합니다. |
| origin | ECC |
/search-first — 코딩 전에 먼저 조사
"구현 전에 기존 해법을 먼저 찾는다"는 워크플로를 체계화합니다.
트리거
다음 상황에서 사용합니다.
- 기존 해법이 있을 가능성이 높은 새 기능을 시작할 때
- 의존성이나 integration을 추가할 때
- 사용자가 "X 기능 추가"를 말했고 곧바로 코드를 쓰려 할 때
- 새 utility, helper, abstraction을 만들기 전에
워크플로
1. NEED ANALYSIS
2. PARALLEL SEARCH
3. EVALUATE
4. DECIDE
5. IMPLEMENT
의사결정 매트릭스
| Signal | Action |
|---|
| Exact match, 잘 관리됨 | Adopt |
| 부분 일치, 기반 좋음 | Extend |
| 약한 후보 여러 개 | Compose |
| 적합한 것 없음 | Build |
사용 방법
Quick Mode
코드 쓰기 전에 머릿속으로 먼저 점검합니다.
- 저장소 안에 이미 있는가? → 먼저
rg
- 흔한 문제인가? → npm/PyPI 검색
- MCP로 되는가? → 설정 확인
- skill로 되는가? →
~/.claude/skills/ 확인
- GitHub에 검증된 구현이 있는가? → 코드 검색
Full Mode
작지 않은 기능이면 researcher agent를 띄웁니다.
Task(subagent_type="general-purpose", prompt="
Research existing tools for: [DESCRIPTION]
Language/framework: [LANG]
Constraints: [ANY]
")
카테고리별 검색 단축
Development Tooling
- Linting →
eslint, ruff, markdownlint
- Formatting →
prettier, black, gofmt
- Testing →
jest, pytest, go test
- Pre-commit →
husky, lint-staged, pre-commit
AI/LLM Integration
- Claude SDK → 최신 문서는 Context7
- Prompt management → MCP 서버 확인
- Document processing →
unstructured, pdfplumber, mammoth
Data & APIs
- HTTP client →
httpx, ky, got
- Validation →
zod, pydantic
- Database → 먼저 MCP 서버 존재 여부 확인
Content & Publishing
- Markdown →
remark, unified, markdown-it
- 이미지 최적화 →
sharp, imagemin
연동 지점
planner agent와 함께
- Researcher가 사용 가능한 도구를 먼저 찾고
- Planner가 이를 구현 계획에 반영합니다
architect agent와 함께
- 기술 스택 선택
- integration pattern 발견
- reference architecture 탐색
iterative-retrieval과 함께
- 1차: broad search
- 2차: 상위 후보 상세 비교
- 3차: 프로젝트 제약과 호환성 확인
안티패턴
- 존재 여부를 확인하지 않고 바로 코드부터 짜는 것
- 이미 capability가 있는데 MCP를 무시하는 것
- 라이브러리를 과하게 감싸서 장점을 잃는 것
- 아주 작은 기능 때문에 거대한 패키지를 들여오는 것