← 전체 기능

설치·운영v0.3.0에서 사용 가능

선택 설치하는 훅

oah는 원할 때만 설치하는 훅을 제공한다. 게이트를 충족하지 못한 Claude Code 세션이 끝나지 못하게 하는 Stop 훅, 세션 시작 훅, 작업 중 push를 거절하고 gitleaks로 push할 커밋을 검사하는 pre-push 훅, 영향 지도를 최신으로 유지하는 post-commit·post-merge 훅이다.

필요한 상황

세션을 일찍 끝내거나, 작업 중간에 push하거나, 키를 push하는 가장 위험한 순간은 명령 사이에 일어나고, 작업 끝의 검사로는 늦다.

동작 방식

  1. oah init이 훅을 묻고, oah hooks가 선택형 Claude Code 훅과 git 훅을 설치하거나 지운다.
  2. oah hooks install stop은 게이트를 충족하지 못한 Claude Code 세션이 끝나지 못하게 한다. [gates] stop_agents에 이름을 적으면 그 이름으로 잡힌 리스만 본다.
  3. oah hooks install pre-push는 이 워크트리에 활성이든 만료든 리스가 남아 있는 동안 push를 거절하고(OAH_PUSH_REFUSED), push하는 커밋만 gitleaks로 검사한다(OAH_PUSH_SECRETS).
  4. 선택형 post-commit과 post-merge 훅이 영향 지도를 최신으로 유지한다.
  5. Claude Code에는 세션 시작 훅도 있다. v0.3.0에서는 생성된 oah-<tier> 하위 에이전트 파일을 현재 모델 선택에 맞춘다.

예제

Claude Code Stop 훅을 설치한다(개념 문서).

oah hooks install stop

요구 사항

  • Stop 훅과 세션 시작 훅에는 Claude Code, pre-push 검사에는 gitleaks가 필요하다.

한계와 복구

  • gitleaks가 없으면 pre-push 훅은 경고한 뒤 검사 없이 push를 허용한다. 그래도 oah land는 검사 없이는 거절한다(OAH_LAND_SCAN_REQUIRED).
  • stop_agents에 없는 이름으로 잡힌 리스는 더 이상 세션을 멈추지 않는다. oah finish는 여전히 충족하지 못한 게이트를 거절한다.
  • 훅은 선택이다. 공유 규칙 블록은 따로 에이전트에게 push와 강제 push를 금지한다.

원문 문서

관련 기능