소개
시도하고자 했던 것과 그 이유를 알려주세요.
시놀로지 NAS에서 실행되는 n8n을 **Cursor/VS Code에서 직접 제어**하고 싶었습니다. 매번 웹 브라우저를 열어서 워크플로우를 만들고 관리하는 것이 번거로웠거든요. 찾아보니 n8n은 꽤 괜찮은 REST API를 제공하고 있었네요. 그리고 저는 그 정보만 주고 커서와의 연동 프로젝트를 만들라고 커서에게 시켰어요.
**핵심 목표:**
- 🎯 **코드로 워크플로우 생성**: JavaScript로 프로그래매틱하게 워크플로우 정의
- 🔄 **실시간 동기화**: 로컬 JSON 파일 변경 시 자동으로 n8n 서버에 반영
- 📋 **통합 개발 환경**: Cursor/VS Code 안에서 모든 작업 완결
- ✅ **품질 보장**: 워크플로우 생성 시 자동 검증 시스템
**왜 이렇게 하고 싶었나?**
1. **개발자 친화적**: Git으로 버전 관리 가능
2. **효율성**: CLI 명령어로 빠른 작업
3. **재사용성**: 템플릿과 패턴으로 반복 작업 최소화
4. **품질 관리**: 일관된 워크플로우 구조 유지진행 방법
1. 먼저 n8n 서버에서 api를 발급받아야 합니다.
**초기 설정 프롬프트:**
```
cursor로 원격서버의 n8n 워크플로를 만들고 싶어. 그리고 커서에서 n8n 서버에 워크플로우를 올리고 버그를 보고 수정할 수 있을까?
```
n8n-remote-controller/
├── .env # API 키 설정 (git에 포함되지 않음)
├── .gitignore # Git 제외 파일
├── package.json # 프로젝트 설정
├── n8nController.js # n8n API 컨트롤러
├── index.js # CLI 인터페이스
├── watch.js # 파일 감시 도구
└── workflows/ # 워크플로우 JSON 파일 폴더
└── example.json # 예제 워크플로우
**5대 원칙 도입:**
```
워크플로우를 만들때 규칙 몇가지만 만들자.
1. 최대한 n8n의 기존 노드를 탐색하고 사용할 것
2. 간결하게 작성할 것.
3. 노드와 노드 사이에 끊어지는 독립노드가 없을 것.
4. 목적과 단계를 설명할 것
5. 직접 워크플로우를 실행할 것워크플로를 인식하고 삭제해 주는데 잘못 명령 내렸다가 이전에 워크플로 모두 삭제당하는 수가 있음..ㅜㅜ
간단한 날씨 에이전트 하나 만들어 달랬더니 혼자 만들고 삭제하고 수십번 후에 못만들어냄. 결국 내가 만들어서 json으로 가르쳐 줬는데 끝내 재현 못함.
결과와 배운 점
"말귀 못알아듣는 후임"의 등장
속이 터지고 성질이 더러워져 결국 자기 손으로 하게 되는 장점이 있음..
그래도 계속 프롬프트를 업데이트 해가면서 잘 할 때까지 손봐줄 예정임..
도움 받은 글 (옵션)
참고한 지피터스 글이나 외부 사례를 알려주세요.
없어요..