채팅을 통해 다른 n8n 워크플로우를 빌드, 테스트 및 배포하는 n8n 워크플로우 구축
요약
본 워크플로우는 사용자가 채팅으로 자동화 요청을 입력하면, LLM(Claude)이 이를 분석하여 n8n 워크플로우를 자동으로 빌드하고 테스트하며 배포하는 과정을 구현합니다. 이 시스템은 단순한 코드 생성을 넘어 유효성 검사, 목업 테스트, 그리고 안전장치(Safety by design)를 통해 안정적인 자동화 구축을 목표로 합니다.
핵심 포인트
- 채팅 기반으로 n8n 워크플로우를 빌드하고 배포하는 통합 프로세스 제공
- LLM이 생성한 JSON의 유효성 검사 및 수정 라운드를 포함하여 신뢰도 향상
- 실행 전 목업 테스트와 비활성화 저장(Blueprints)을 통해 안전성을 확보함
- 워크플로우 작성 과정에서 자격 증명, 코드 등 위험 요소를 차단하는 가드레일 적용
LLM(대규모 언어 모델)이 n8n 워크플로우 JSON을 작성하게 하는 것은 쉽습니다. 하지만 깨끗하게 임포트되고, 존재하는 노드 버전을 사용하며, 요청한 대로 작동하는 JSON을 얻는 것은 더 어렵습니다. 모델들은 필드를 상상하고, 노드 버전들을 섞어 쓰며, 존재하지 않는 노드에 연결합니다.
그래서 저는 생성을 마지막 단계가 아닌 첫 번째 단계로 취급하는 워크플로우를 만들었습니다. 채팅에서 자동화를 한 문장으로 설명하면, 이 워크플로우가 이를 빌드하고, 확인하며, 테스트하거나 검토한 후, 사용자의 n8n 인스턴스에 저장합니다.
작동 방식 예시
사용자가 다음과 같이 입력합니다:
GitHub에 장애가 발생하면 알려줘. 알림을 https://webhook.site/your-id로 보내줘.
잠시 후 채팅에서 결과, 테스트 결과 또는 확인 사항, 새 워크플로우 링크, 그리고 다음 단계에 대한 답변이 옵니다.
작동 원리
1. 요청을 스펙으로 변환. Claude는 사용자의 문장을 스펙(spec)으로 바꿉니다. 서비스에 대한 상태 점검은 _모니터(monitor)_가 되고, 그 외의 모든 것(폼, 요약, AI 단계, 앱 간 동기화 등)은 _청사진(blueprint)_이 됩니다. 엔드포인트를 제공하면, 실제로 반환되는 내용에 맞춰 확인 절차를 한 번 먼저 수행합니다.
2. 스펙을 워크플로우 JSON으로. Claude가 워크플로우를 만듭니다. 청사진의 경우, 프롬프트에는 n8n 공식 노드 카탈로그에서 가져온 정확한 노드 유형, 버전 및 필드가 포함되며, 이는 하나의 패키지 버전에 고정됩니다.
3. 유효성 검사(Validation). 초안은 노드 유형, 각 버전별 필드, 필수 값, 연결 방식, 표현식 구문, 노드 참조에 대해 확인됩니다. 안전한 실수는 자동으로 수정됩니다. 그 외의 문제는 명확한 피드백과 함께 Claude에게 다시 전달되며, 기본적으로 최대 3번의 빌드 라운드가 가능합니다.
4. 테스트 또는 검토. 모니터는 내장된 목업(mock)을 대상으로 오류, 시간 초과, DNS 실패, 알림 실패 및 스펙에 포함된 각 확인 절차, 그리고 실제 엔드포인트에 대한 한 번의 확인을 거쳐 실행됩니다. 청사진은 원래 요청과 비교하여 Claude가 두 번째 검토를 수행하며, 수정 라운드는 한 번 제공됩니다.
5. 배포(Deployment). 워크플로우는 n8n API를 통해 생성됩니다. 알림 웹훅이 있는 모니터가 활성화됩니다. 청사진(Blueprints)은 비활성 상태로 저장되며, 연결해야 할 계정과 채워야 할 값 목록을 Setup 노트에 기재합니다.
설계 단계부터의 안전성(Safety by design)
워크플로우를 작성하는 워크플로우에는 가드레일이 필요합니다:
- 생성된 워크플로우는 절대로 자격 증명(credentials)을 포함하지 않습니다.
- 코드, 명령어, 파일 및 자체 API 노드는 차단됩니다.
- 모니터는 개인 또는 로컬 네트워크 주소를 대상으로 할 수 없습니다.
- 청사진은 항상 비활성 상태로 저장되므로 실행 전에 검토할 수 있습니다.
- 초안이 검사를 통과하지 못하더라도, 마지막 초안은 여전히 비활성 상태로 저장되며, 그 열린 문제점들이 Setup 노트에 나열됩니다.
설정(Setup)
공개 웹훅 URL을 가진 n8n 인스턴스(Cloud 또는 자체 호스팅), n8n API 키, Anthropic API 키 또는 n8n Cloud의 AI 크레딧, 그리고 노드 카탈로그 및 출력 스키마를 위한 cdn.jsdelivr.net에 대한 아웃바운드 접근 권한이 필요합니다.
- Claude를 세 개의 모델 노드(Anthropic Model (Spec), Anthropic Model (Build), Anthropic Model (Review))에 연결합니다.
- Settings > n8n API에서 n8n API 키를 생성하고, 이를 Create Workflow 및 Activate Workflow의 자격 증명으로 추가합니다. 기본 URL은 인스턴스 URL에
/api/v1을 붙인 것입니다. - Settings 노드를 엽니다. 인스턴스 URL을 자동으로 감지하려면
PUBLIC_URL을 비워두거나, 프록시 뒤에서 실행하는 경우 설정합니다. - 워크플로우를 저장하고 게시(publish)합니다. 섹션들은 게시된 버전을 호출하므로, 편집할 때마다 다시 게시해야 합니다.
- Chat Trigger를 열고 채팅 URL을 복사한 다음, 위의 GitHub 예제를 시도해 봅니다.
접근을 제한하려면 Chat Trigger의 인증을 Basic Auth로 설정합니다.
조정 가능한 항목들(Things you can tune)
MAX_ATTEMPTS와TIME_BUDGET_MINUTES는 빌드 라운드의 횟수와 루프가 중단되기 전의 시간을 설정합니다.DAILY_RUNS_PER_CHAT와DAILY_RUNS_TOTAL은 채팅이 공개되었을 때 사용량을 제한합니다.CORE_NODES_VERSION과AI_NODES_VERSION는 노드 카탈로그를 실행하는 n8n 버전에 고정(pin)시킵니다. 두 가지를 함께 변경하세요.- 세 개의 모델 노드에서 Claude 모델을 교체할 수 있습니다. 예를 들어, 비용 절감을 위해 더 작은 모델을 사용할 수 있습니다.
사용해 보기 (Try it)
이 템플릿은 n8n에서 무료로 이용 가능합니다: https://n8n.io/workflows/20211-build-and-deploy-tested-workflows-from-chat-with-claude-sonnet/
직접 사용해 보시고, 댓글로 무엇을 만들도록 요청했는지와 그 결과가 제대로 작동했는지 알려주세요.
작성자 소개 (About the author)
저는 Helsinki에 기반을 둔 AI 자동화 컨설팅 회사인 AutomiQ의 설립자인 Mychel Garzon입니다. 저희는 기업을 위해 n8n 워크플로우와 AI 에이전트를 구축합니다. 고객 작업 범위에는 M365 거버넌스, LLM 오케스트레이션, 레거시 IBM i 뱅킹 통합 등이 포함됩니다.
- 40개 이상의 게시된 템플릿을 보유한 n8n 인증 크리에이터 (Verified Creator)
- Helsinki n8n 커뮤니티 앰버서더 (Community Ambassador)
- Junction 2025 n8n Tech Challenge 수상자
저의 다른 작업 보기 (More from me)
맞춤형 n8n 워크플로우나 AI 자동화가 필요하신가요? [email protected]로 문의하세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기