Tag:automation
All the articles with the tag "automation".
Claude Code CI/CD 개념과 연동 — 파이프라인엔 Enter 칠 사람이 없다, 대화를 부품으로 바꾸는 헤드리스 모드의 세 전환(파이프와 JSON, 권한 사전 선언, `--bare`), 그 부품을 GitHub 이벤트에 배선하는 `claude-code-action@v1`(`@claude` 멘션 ↔ `prompt` 자동화, 모드 자동 감지), PR의 마지막 클릭은 끝내 사람에게 남기는 설계, 그리고 exit 0이 '버그 없음'이 아닌 `claude ultrareview` 게이트
Published: at 09:24 PM섹션 9의 문이 열린다. 40차시는 "사람의 터미널에서 팀의 파이프라인으로, 무대가 옮겨간다"로 끝났다 — 이번 차시가 그 이사다. 먼저 CI/CD 한 컷. 파이프라인은 이벤트(push·PR·스케줄)가 트리거하는 단계들의 사슬이고, 지금까지 그 단계는 전부 *결정론적 검사*(빌드·테스트·린트)였다. Claude가 들어오면 처음으로 **판단이 필요한 단계** — 리뷰하고, 고치고, 요약하는 — 가 파이프라인에 들어온다. 그런데 파이프라인엔 결정적 결핍이 하나 있다.
Claude Code SessionStart·Stop·SessionEnd Hook — 세션의 양 끝에 환경·검증·정리를 박는 법
Published: at 06:43 PMClaude Code의 세션 라이프사이클 hook을 한 차시로 정리한다. *도구* 단위가 아니라 *세션* 단위에서 발화하는 세 이벤트 — SessionStart(시작·재개·clear·compact), Stop(응답 종료 직전), SessionEnd(세션 종료) — 의 발화 조건, 입력 JSON 스키마, 응답 옵션, 매처 값(SessionStart 4값·SessionEnd 6값·Stop 매처 없음), 그리고 차단 가능 여부(SessionStart 불가·Stop 가능·SessionEnd 불가)를 비교한다.
Claude Code PreToolUse Hook과 보안 — 도구가 실행되기 전에 위험한 명령과 민감 파일을 막는 게이트
Published: at 10:34 PMClaude Code의 PreToolUse Hook을 보안 관점에서 깊게 본다. 도구가 *실행되기 직전*에 발화해 호출 자체를 막을 수 있다는 핵심 성질 — PostToolUse(후처리, 못 막음)와 정반대 — 에서 출발해, 입력 JSON(tool_name·tool_input·tool_use_id, tool_output 없음), 차단의 두 갈래(exit 2 + stderr vs exit 0 + `permissionDecision` JSON), exit 2가 PreToolUse에서는 *블로킹*이라는 점(PostToolUse와 반대이며 exit 1은 차단이 아님), `permissionDecision` 4값(allow/deny/ask/defer)의 정확한 의미, 그리고 Hook과 권한 규칙·권한 모드의 관계 — Hook은 제약을 조이기만 하고 풀지 못한다, deny는 bypassPermissions도 뚫는다, allow는 deny 규칙을 못 이긴다, 여러 hook 병합 시 deny>ask>allow — 를 정리한다. 실전 패턴으로 위험한 Bash 명령 차단(rm -rf·DROP TABLE), 민감 파일 보호(.env·.git/), `ask`로 사용자 승인 에스컬레이션, `updatedInput`으로 입력 sanitize까지 묶고, 정적 권한 패턴과 동적 hook의 역할 분담, matcher와 `if` 필드, 셸 프로필이 JSON 출력을 오염시키는 문제도 함께 본다.