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

ACSL 형식 명세 주석 도우미

C/C++ 코드에 Frama-C로 검증 가능한 ACSL 형식 명세(계약·루프 불변식·메모리 안전성)를 자동으로 작성해 주는 스킬입니다.

개발·코딩고급24823AI 점수 7/10마지막 업데이트: 2026. 8. 21.

무엇을 해주나

  • C/C++ 함수에 ACSL 함수 계약(requires/ensures/assigns)을 작성합니다.
  • 반복문에 루프 불변식(loop invariant), 종료 증명용 변형식(loop variant), loop assigns를 추가합니다.
  • 포인터 유효성(\valid, \valid_read), 별칭 없음(\separated) 등 메모리 안전성 명세를 생성합니다.
  • 재사용 가능한 술어(predicate)와 공리(axiomatic) 정의, 중간 assert/assume 삽입을 도와줍니다.
  • 함수 분석 → 계약 작성 → 루프 주석 → 단정문 → 술어 정리의 5단계 워크플로를 따릅니다.
  • references/ 폴더에 ACSL 문법 레퍼런스, 자주 쓰는 패턴, Frama-C 연동 팁이 동봉되어 있습니다.

이런 분께 추천

  • Frama-C WP 플러그인으로 C 코드를 형식 검증하는 개발자·연구자
  • 항공·자동차·의료 등 고신뢰 임베디드 소프트웨어 인증 작업자
  • 배열 범위 초과, 널 포인터, 오버플로를 증명 수준에서 막고 싶은 팀
  • 형식검증 수업·논문 실험에서 명세 작성 시간을 줄이고 싶은 학생

활용 예시

  1. "이 find_max_index 함수에 ACSL 계약과 루프 불변식을 붙여줘" → 사후조건에 최댓값 성질까지 포함한 명세 생성
  2. "memcpy 래퍼에 메모리 안전성 명세를 추가해줘" → \valid, \valid_read, \separated, assigns 절 작성
  3. "입력이 음수일 때와 정상일 때를 나눠 behavior 명세로 만들어줘" → complete behaviors; disjoint behaviors;까지 포함한 분기 명세 생성

· · · 설치 가이드 · · ·

설치 없이 지금 한 번 써보기

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

이 파일의 지시를 읽고 그대로 따라서 나를 도와줘:
https://raw.githubusercontent.com/ArabelaTso/Skills-4-SE/HEAD/skills/acsl-annotation-assistant/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/acsl-annotation-assistant 폴더를 내 ~/.claude/skills/acsl-annotation-assistant/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/ArabelaTso/Skills-4-SE.git /tmp/skills-4-se && mkdir -p ~/.claude/skills && cp -r /tmp/skills-4-se/skills/acsl-annotation-assistant ~/.claude/skills/

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

  1. 터미널을 열고 저장소를 내려받습니다: git clone https://github.com/ArabelaTso/Skills-4-SE.git
  2. 스킬 폴더가 없으면 만듭니다: mkdir -p ~/.claude/skills
  3. 이 스킬만 복사합니다: cp -r Skills-4-SE/skills/acsl-annotation-assistant ~/.claude/skills/
  4. ls ~/.claude/skills/acsl-annotation-assistantSKILL.mdreferences/가 있는지 확인합니다.
  5. Claude Code를 재시작한 뒤 "이 C 함수에 ACSL 주석을 달아줘"처럼 요청하면 스킬이 발동합니다.
  6. (권장) 실제 검증을 위해 Frama-C를 설치합니다: macOS는 brew install frama-c, Ubuntu는 sudo apt install frama-c.
  7. 생성된 주석은 frama-c -wp your_file.c 로 직접 증명해 보고 실패하는 절을 다듬으세요.
GitHub에서 원본 보기라이선스: Apache-2.0