Claude Skill

search-first

코드를 새로 짜기 전에 기존 솔루션(레포 내부 → 사내 미러 → 패키지 레지스트리 → MCP/스킬 → GitHub)을 먼저 검색하는 워크플로. 새 기능/유틸/의존성 추가 직전, "X 기능 넣어줘" 요청에 코드부터 쓰려는 순간 발동. (원본: [affaan-m/ECC](https://github.com/affaan-m/ECC) 의 search-first 스킬, MIT — 이식·번안)

LLM Mart · 0 points · 11 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download leeyudok-agents-scaffold-.claude_skills_search-first-1b2f034.zip · 1 KB
Part of leeyudok/agents-scaffold — 32 skills

Install

skills CLI npx skills add https://github.com/LeeYudok/agents-scaffold/tree/main/.claude/skills/search-first
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install leeyudok-agents-scaffold@llmmart
Git git clone https://github.com/LeeYudok/agents-scaffold.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole leeyudok/agents-scaffold collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

search-first — 짜기 전에 찾는다

바퀴 재발명 방지 워크플로. 커스텀 코드는 검색이 빈손일 때의 마지막 선택지다.

발동 시점

  • 기존 솔루션이 있을 법한 새 기능/유틸/헬퍼를 만들려는 순간
  • 의존성·통합(외부 API, 파서, 클라이언트 등) 추가 직전
  • "X 기능 추가해줘" 요청을 받고 바로 코드를 쓰려는 순간

검색 순서 (안쪽 → 바깥쪽)

순서 채널 방법
1 이 레포 안 rg 로 관련 모듈/테스트 스윕 — 이미 있는데 못 본 것일 수 있음
2 사내 미러 <your-git-host>/mirrors/ 그룹 먼저 (OSS agents/skills/아이콘 등 미러). 외부 원본 직접 참조 대신 미러로 들여와서 사용. 미러 그룹이 없으면 건너뜀
3 패키지 레지스트리 npm / PyPI / crates.io 등 프로젝트 스택에 맞는 곳
4 MCP / 스킬 이미 연결된 MCP 서버가 그 기능을 제공하는지, .claude/skills/ 에 같은 스킬이 있는지
5 GitHub / 웹 유지보수되는 OSS 구현체·템플릿 검색. 채택 시 mirrors 로 포크해서 사용

채널이 사용 불가(오프라인, 인증 없음 등)면 조용히 건너뛰지 말고 어느 채널을 못 봤는지 명시한다.

평가 → 결정

후보는 기능 적합도 / 유지보수 상태(최근 커밋·이슈 응답) / 라이선스 / 의존성 무게로 평가.

신호 결정
정확히 맞음 + 관리 잘됨 + MIT/Apache 채택 — 설치해서 그대로 사용
부분 일치 + 좋은 기반 확장 — 설치 + 얇은 래퍼
약한 후보 여러 개 조합 — 작은 패키지 2~3개 결합
쓸 만한 게 없음 직접 구현 — 단, 검색에서 본 설계를 참고해서

비trivial 기능이면 서브에이전트로

Agent(subagent_type="general-purpose", model="sonnet", prompt="
  다음 기능의 기존 솔루션 조사: [설명]
  언어/프레임워크: [스택], 제약: [있으면]
  검색: 레포 내부 → 사내 미러(<your-git-host>/mirrors) → npm/PyPI → MCP → GitHub
  리턴: 후보 비교표 + 채택/확장/직접구현 권고
")

안티패턴

  • 코드 직행: 검색 없이 유틸부터 작성
  • 미러 무시: GitHub 원본을 바로 참조 (내부 미러로 들여온 뒤 사용이 원칙)
  • 조용한 스킵: 검색 채널이 죽어 있었는데 "없음"으로 보고
  • 과도한 래핑: 라이브러리를 두껍게 감싸 장점을 죽임
  • 의존성 비대: 작은 기능 하나에 거대 패키지 도입
Files (agents-scaffold)
  • SKILL.md 3.1 KB
    ---
    name: search-first
    description: 코드를 새로 짜기 전에 기존 솔루션(레포 내부 → 사내 미러 → 패키지 레지스트리 → MCP/스킬 → GitHub)을 먼저 검색하는 워크플로. 새 기능/유틸/의존성 추가 직전, "X 기능 넣어줘" 요청에 코드부터 쓰려는 순간 발동. (원본: [affaan-m/ECC](https://github.com/affaan-m/ECC) 의 search-first 스킬, MIT — 이식·번안)
    allowed-tools: Bash, Read, Grep, Glob, WebSearch, WebFetch
    ---
    
    # search-first — 짜기 전에 찾는다
    
    바퀴 재발명 방지 워크플로. 커스텀 코드는 **검색이 빈손일 때의 마지막 선택지**다.
    
    ## 발동 시점
    
    - 기존 솔루션이 있을 법한 새 기능/유틸/헬퍼를 만들려는 순간
    - 의존성·통합(외부 API, 파서, 클라이언트 등) 추가 직전
    - "X 기능 추가해줘" 요청을 받고 바로 코드를 쓰려는 순간
    
    ## 검색 순서 (안쪽 → 바깥쪽)
    
    | 순서 | 채널 | 방법 |
    |---|---|---|
    | 1 | **이 레포 안** | `rg` 로 관련 모듈/테스트 스윕 — 이미 있는데 못 본 것일 수 있음 |
    | 2 | **사내 미러** | `<your-git-host>/mirrors/` 그룹 먼저 (OSS agents/skills/아이콘 등 미러). 외부 원본 직접 참조 대신 미러로 들여와서 사용. 미러 그룹이 없으면 건너뜀 |
    | 3 | **패키지 레지스트리** | npm / PyPI / crates.io 등 프로젝트 스택에 맞는 곳 |
    | 4 | **MCP / 스킬** | 이미 연결된 MCP 서버가 그 기능을 제공하는지, `.claude/skills/` 에 같은 스킬이 있는지 |
    | 5 | **GitHub / 웹** | 유지보수되는 OSS 구현체·템플릿 검색. 채택 시 mirrors 로 포크해서 사용 |
    
    채널이 사용 불가(오프라인, 인증 없음 등)면 **조용히 건너뛰지 말고** 어느 채널을 못 봤는지 명시한다.
    
    ## 평가 → 결정
    
    후보는 기능 적합도 / 유지보수 상태(최근 커밋·이슈 응답) / 라이선스 / 의존성 무게로 평가.
    
    | 신호 | 결정 |
    |---|---|
    | 정확히 맞음 + 관리 잘됨 + MIT/Apache | **채택** — 설치해서 그대로 사용 |
    | 부분 일치 + 좋은 기반 | **확장** — 설치 + 얇은 래퍼 |
    | 약한 후보 여러 개 | **조합** — 작은 패키지 2~3개 결합 |
    | 쓸 만한 게 없음 | **직접 구현** — 단, 검색에서 본 설계를 참고해서 |
    
    ## 비trivial 기능이면 서브에이전트로
    
    ```
    Agent(subagent_type="general-purpose", model="sonnet", prompt="
      다음 기능의 기존 솔루션 조사: [설명]
      언어/프레임워크: [스택], 제약: [있으면]
      검색: 레포 내부 → 사내 미러(<your-git-host>/mirrors) → npm/PyPI → MCP → GitHub
      리턴: 후보 비교표 + 채택/확장/직접구현 권고
    ")
    ```
    
    ## 안티패턴
    
    - **코드 직행**: 검색 없이 유틸부터 작성
    - **미러 무시**: GitHub 원본을 바로 참조 (내부 미러로 들여온 뒤 사용이 원칙)
    - **조용한 스킵**: 검색 채널이 죽어 있었는데 "없음"으로 보고
    - **과도한 래핑**: 라이브러리를 두껍게 감싸 장점을 죽임
    - **의존성 비대**: 작은 기능 하나에 거대 패키지 도입
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related