How to Use Cloud Code Hooks with n8n (Workflow Automation)
- Cloud Code Hooks의 강력함: 대화 중 특정 이벤트(예: 대화 종료, 승인 대기) 발생 시 사용자 정의 코드를 실행하여 에이전트의 기능을 확장합니다. 🚀
- N8N 연동의 필요성: 장시간 소요되는 에이전트 코딩 작업 중 에이전트의 상태(대기 중, 완료)를 파악하기 어려울 때, N8N을 통해 실시간 알림을 받아 생산성을 높입니다. 🔔
- 다양한 알림 채널: N8N을 활용하여 휴대폰, Discord, Slack, 이메일 등 다양한 채널로 에이전트 작업 완료 또는 대기 알림을 보낼 수 있어 워크플로우를 자동화합니다. 📱
- 훅 설정 기본:
hooks 명령어를 통해 훅을 설정하고, .claude/settings.json 파일에 저장되며, 복잡한 로직은 Python 스크립트를 사용하여 구현하는 것이 효율적입니다. ⚙️
- 에이전트의 도움: 훅 설정 오류(예: 파일 경로 오타) 발생 시 에이전트가 능동적으로 문제를 진단하고 해결책을 제시하여 디버깅 과정을 돕습니다. 🤖
- 스크립트 입력 파악: 훅 스크립트로 전달되는 입력이 불분명할 경우, Cloud Code에 요청하여 모든 입력을 로그 파일에 기록하게 함으로써
stdin을 통해 전달되는 transcript path 등의 핵심 정보를 파악할 수 있습니다. 📝
- 대화 기록(Transcript) 활용: JSONL 형식의 대화 기록 파일은 에이전트의 생각 과정, 생성된 텍스트, 도구 입력 등 모든 대화 정보를 담고 있으며, 이를 파싱하여 마지막 에이전트 메시지 같은 중요한 정보를 추출할 수 있습니다. 📖
- N8N 인스턴스 구축: N8N은 로컬 또는 클라우드(Hostinger VPS 추천)에서 실행 가능하며, 특히 Hostinger의 원클릭 설치 및 할인 혜택을 통해 저렴하고 안정적인 N8N 환경을 구축할 수 있습니다. ☁️
- N8N 워크플로우 구성: 트리거 노드(예:
Web Call 또는 Telegram On Message)로 시작하며, BotFather를 이용한 Telegram 봇 생성 및 N8N과의 연동을 통해 메시지 기반 자동화를 구현할 수 있습니다. 💬
- 보안 및 제어:
pre-tool-use 이벤트에서 sys.exit(2)를 사용하여 에이전트의 파일 변경 등 위험한 작업을 사전에 중단시키는 등 보안 및 제어 기능을 구현할 수 있습니다. 🔒