Communitygithub.com

LevNas/ccaudit

AI 기반 Claude Code 세션의 감사 기록을 녹화하고 보존합니다: 세션 종료 시 원격 저장소로 자동 플러시, /audit-flush 명령어로 수동 검사 지원.

ccaudit란 무엇인가요?

이 스킬은 Claude Code 세션에서 생성된 감사 기록(audit trail)을 안전하게 관리하고 보존하기 위해 설계되었습니다. `leviathan/ccaudit` 에이전트 스킬의 일부로, 자동 플러시(Stop 훅)의 수동 대응 기능을 제공합니다. 사용자는 `/audit-flush` 명령을 통해 스테이징된 항목을 검사하거나, 이전 실패로 `$CCAUDIT_PENDING_DIR`에 대기 중인 항목을 재시도하거나, 자동 플러시가 비활성화된 경우 명시적으로 플러시를 실행할 수 있습니다. 주요 기능으로는 `--dry-run` (미리보기), `--force` (실패한 항목 재시도) 플래그가 있으며, 감사 항목은 추가 전용(append-only) 방식으로 관리되어 무결성을 보장합니다. Claude Code 환경에서 동작하며, 환경 변수 `CCAUDIT_TRAIL_REPO`, `CCAUDIT_PENDING_DIR` 등을 사용합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add LevNas/ccaudit

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

audit-flush

Stop 훅의 수동 대응 기능입니다. 동일한 로직을 필요 시 호출합니다.

사용 시기

  • 사용자가 자동 플러시 전에 스테이징된 트레일 항목을 검사하도록 요청한 경우
  • 이전 실패(시크릿 히트 또는 푸시 오류) 후 $CCAUDIT_PENDING_DIR로 이동한 항목을 재시도하려는 경우
  • 자동 플러시가 비활성화된 경우(CCAUDIT_MANUAL=1) 항목을 명시적으로 플러시해야 하는 경우
  • 사용자가 "<사용자>가 시간 X에 이 플러시를 검사하고 승인함"이라는 기록이 필요한 경우 — /audit-flush 실행은 무인 Stop 훅이 남길 수 없는 트레이스(커밋 작성자와 타임스탬프)를 남깁니다.

플래그

플래그동작
(없음)hooks/auto-flush.sh와 동일한 흐름: 스캔, 시크릿 검사, 푸시, 스테이징 정리.
--dry-run플러시될 항목을 나열하고, 아무것도 건드리지 않고 종료.
--force스테이징 외에 $CCAUDIT_PENDING_DIR의 내용도 포함하여 모든 것을 재시도.

절차

skills/audit-flush/procedure.md를 단계별로 따르세요. 추가 안전 검사를 임의로 추가하지 마십시오. 훅과 이 스킬은 동작이 동일해야 하며, 차이가 발생하면 정의되지 않은 상태가 생성됩니다.

이 스킬이 하지 않는 일

  • 트레일 항목을 수정하지 않습니다. 항목은 스테이징에 한 번 쓰여지면 추가 전용(append-only)입니다.
  • 원격 트레일 저장소에서 삭제하지 않습니다. 잘못된 항목이 푸시된 경우, 수정은 해당 잘못된 항목을 해시로 참조하는 새 항목이어야 하며, 절대 재작성하지 않습니다.
  • 원격을 재구성하지 않습니다. CCAUDIT_TRAIL_REPO는 이 스킬의 관점에서 읽기 전용입니다.

관련 스킬