클로드스킬마트스킬 둘러보기바로 쓰는 문장영상으로 배우기터미널 사용법스킬이 뭐예요?
목록으로

ast-grep 구조 검색·코드 리라이트

텍스트가 아닌 코드 '구조'로 검색하고 25개 언어에서 안전하게 일괄 리팩터링(codemod)을 수행하게 해주는 스킬.

개발·코딩중급67,5315,507AI 점수 9/10마지막 업데이트: 2026. 8. 9.

무엇을 해주나

  • grep/rg처럼 문자열이 아니라 AST(구문 트리) 기준으로 코드를 찾습니다. $VAR(노드 1개), $$$(노드 0개 이상) 와일드카드를 사용합니다.
  • 동봉된 파이썬 헬퍼(scripts/ast_grep_helper.py)로 search / replace / scan / validate / doctor 를 일관되게 실행합니다.
  • 패턴을 오프라인으로 먼저 검증해 정규식 오용(\w+, .*, |) 같은 흔한 실수를 미리 잡아줍니다.
  • 치환은 기본이 dry-run이며, --apply를 붙일 때만 실제로 파일을 수정합니다. --json--update-all이 동시에 동작하지 않는 함정도 2-pass로 자동 처리합니다.
  • YAML 룰(sg scan)로 린트 규칙·자동 수정까지 확장할 수 있습니다.

이런 분께 추천

  • 대규모 코드베이스에서 API 마이그레이션·일괄 리팩터링을 해야 하는 개발자
  • 팀 공용 린트 규칙이나 CI 코드모드를 만들고 싶은 분
  • 정규식 치환으로 인한 오작동을 겪어본 분

활용 예시

  1. console.log($MSG)logger.info($MSG) 전체 치환 (먼저 dry-run으로 영향 파일 수 확인 후 --apply).
  2. TypeScript에서 as any 캐스팅을 모두 찾아 제거하거나, require(...)import로 마이그레이션.
  3. Python에서 Optional[X]X | None으로 변환, 또는 빈 catch 블록·누락된 await 탐색.

· · · 설치 가이드 · · ·

설치 없이 지금 한 번 써보기

아래를 Claude에 붙여넣으면 설치하지 않고도 이 스킬을 그대로 씁니다.

이 파일의 지시를 읽고 그대로 따라서 나를 도와줘:
https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/HEAD/packages/shared-skills/skills/ast-grep/SKILL.md

내가 원하는 것: (여기에 하고 싶은 일을 쓰세요)

Claude가 링크를 열지 못하면, 링크를 직접 열어 내용을 복사해 붙여넣으세요.

쓸 만하면 아래에서 ZIP을 받아 설치하세요. 그러면 매번 붙여넣지 않아도 알아서 작동합니다.

Claude 앱에 설치 (터미널 필요 없음)
  1. 아래 버튼으로 ZIP 파일을 받으세요.
  2. Claude 설정 → Capabilities에서 '코드 실행 및 파일 생성'을 켭니다. (한 번만)
  3. Claude에서 Customize → Skills → + → '스킬 업로드'를 누르고 받은 ZIP을 올립니다.
ZIP 내려받기
Claude Code에 설치

Claude에게 맡기기 — 아래 문장을 Claude Code에 붙여넣으세요

클로드스킬마트에서 찾은 스킬을 설치해줘.
GitHub 저장소 code-yeongyu/oh-my-openagent 의 packages/shared-skills/skills/ast-grep 폴더를 내 ~/.claude/skills/ast-grep/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/code-yeongyu/oh-my-openagent.git /tmp/oh-my-openagent && mkdir -p ~/.claude/skills && cp -r /tmp/oh-my-openagent/packages/shared-skills/skills/ast-grep ~/.claude/skills/

제3자가 만든 스킬입니다. 설치 전 원본 저장소를 한 번 확인하세요.

  1. ast-grep 바이너리를 설치합니다: brew install ast-grep 또는 cargo install ast-grep --locked (npm: npm i -g @ast-grep/cli).
  2. 저장소를 클론합니다: git clone https://github.com/code-yeongyu/oh-my-openagent.git /tmp/oh-my-openagent
  3. 스킬 폴더를 통째로 복사합니다(헬퍼 스크립트와 references 포함): mkdir -p ~/.claude/skills && cp -r /tmp/oh-my-openagent/packages/shared-skills/skills/ast-grep ~/.claude/skills/
  4. 설치 확인: python3 ~/.claude/skills/ast-grep/scripts/ast_grep_helper.py doctor
  5. Claude Code를 재시작하고 "이 저장소에서 console.log를 모두 logger.info로 바꿔줘"처럼 요청하세요.
  6. Linux에서는 sg가 시스템 명령과 충돌하므로 alias sg=ast-grep을 설정해두면 좋습니다.
GitHub에서 원본 보기라이선스: NOASSERTION