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

추상 상태 분석기

코드를 실행하지 않고 변수 범위·널 여부·타입을 추론해 배열 초과, 널 참조, 0 나눗셈, 정수 오버플로 같은 잠재적 런타임 오류를 찾아주는 정적 분석 스킬.

보안·리뷰고급23622AI 점수 7/10마지막 업데이트: 2026. 8. 21.

무엇을 해주나

  • 소스 코드를 추상 해석(abstract interpretation) 방식으로 정적 분석해, 실행 없이 각 지점에서 변수가 가질 수 있는 값의 범위를 추론합니다.
  • 목적에 맞는 추상 도메인을 선택합니다: 구간(Interval, 숫자 범위), 부호(Sign), 널(Null/maybe-null), 타입(Type) 도메인 및 조합.
  • 분기는 나누고 합류점에서는 상태를 병합하며, 루프는 고정점(fixpoint)까지 반복하고 필요하면 확장(widening)을 적용합니다.
  • 배열 범위 초과, 널 역참조, 0으로 나누기, 정수 오버플로, 타입 불일치를 지점별로 검사합니다.
  • 발견 사항을 위치 / 오류 유형 / 그 지점의 추상 상태 / 심각도(확정 vs 잠재) / 원인 설명 / 수정 제안 형식으로 보고합니다.
  • C/C++, Python, Java, JavaScript 각각의 언어 특성(포인터 연산, 동적 타이핑, NPE, 타입 강제 변환)을 반영한 체크 포인트를 제공합니다.

이런 분께 추천

  • 코드 리뷰나 릴리스 전 점검에서 런타임 크래시 가능성을 미리 걸러내고 싶은 개발자
  • 테스트 커버리지가 낮은 레거시 코드의 안전성을 따져봐야 하는 유지보수 담당자
  • 정적 분석기·검증 도구를 배우거나 강의·스터디에서 추상 해석 개념을 실습하고 싶은 분
  • 보안 관점에서 버퍼 오버런, 널 참조 등 메모리·값 안전성을 검토하는 리뷰어

활용 예시

  1. 배열 접근 검증: find_max(arr, n) 함수를 붙여주면 n > len(arr)인 경우 arr[i]가 범위를 벗어날 수 있음을 지적하고 사전 조건(n <= len(arr)) 추가를 제안합니다.
  2. 0 나눗셈 탐지: 나눗셈의 분모 변수가 [-5, 5] 구간으로 추론되면 0이 포함되므로 잠재적 예외로 보고합니다.
  3. 널 역참조 점검: 함수 파라미터가 maybe-null 상태로 들어와 ptr.field에 접근하는 경로를 찾아 널 체크 삽입 위치를 제시합니다.
  4. 정수 오버플로 예측: a, b가 각각 [1000, 2000]일 때 int32 곱셈이 넘칠 수 있음을 경고합니다.

· · · 설치 가이드 · · ·

설치 없이 지금 한 번 써보기

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

이 파일의 지시를 읽고 그대로 따라서 나를 도와줘:
https://raw.githubusercontent.com/ArabelaTso/Skills-4-SE/HEAD/skills/abstract-state-analyzer/SKILL.md

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

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

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

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

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

클로드스킬마트에서 찾은 스킬을 설치해줘.
GitHub 저장소 ArabelaTso/Skills-4-SE 의 skills/abstract-state-analyzer 폴더를 내 ~/.claude/skills/abstract-state-analyzer/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/ArabelaTso/Skills-4-SE.git && mkdir -p ~/.claude/skills && cp -r Skills-4-SE/skills/abstract-state-analyzer ~/.claude/skills/

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

  1. 터미널을 엽니다. (macOS/Linux는 기본 터미널, Windows는 WSL 또는 Git Bash)
  2. 저장소를 원하는 위치에 복제합니다.
    git clone https://github.com/ArabelaTso/Skills-4-SE.git
    
  3. Claude Code 스킬 폴더가 없다면 만듭니다.
    mkdir -p ~/.claude/skills
    
  4. 스킬 폴더 전체를 복사합니다. (references/ 하위 문서까지 함께 복사되도록 폴더 단위로 복사하세요.)
    cp -r Skills-4-SE/skills/abstract-state-analyzer ~/.claude/skills/
    
  5. 설치 확인:
    ls ~/.claude/skills/abstract-state-analyzer
    
  6. Claude Code를 다시 실행한 뒤 "이 함수를 추상 해석으로 분석해서 잠재적 런타임 오류를 찾아줘"처럼 요청하면 스킬이 발동합니다.
  7. 특정 파일을 대상으로 하려면 파일 경로나 코드 블록을 함께 첨부하면 정확도가 올라갑니다.
GitHub에서 원본 보기라이선스: Apache-2.0