Communitygithub.com

poorvith-mp/skills-agents

17가지 에이전트 및 자동화 인프라 스킬: RAG, MCP 서버, 프롬프트 엔지니어링, n8n 및 런타임.

skills-agents란 무엇인가요?

이 기술은 n8n을 중심으로 한 17가지 에이전트 및 자동화 인프라 스킬을 제공합니다. 주요 기능으로는 RAG(검색 증강 생성), MCP 서버 통합, 프롬프트 엔지니어링, n8n 워크플로우 자동화, 그리고 다양한 런타임 지원이 포함됩니다. 특히 n8n 섹션에서는 Docker 기반 셀프 호스팅, 사용자 정의 노드 개발, 핵심 패턴(트리거 유형, 표현식 문법, 오류 처리, 코드 노드 등)을 상세히 다루며, 12가지 중요 규칙과 노드 카테고리를 제시하여 프로덕션 등급의 워크플로우를 구축할 수 있도록 돕습니다. 이 스킬은 클로드 코드, 커서, 코덱스 등 다양한 AI 에이전트 플랫폼에서 사용할 수 있으며, 참조 파일을 통해 워크플로우 설계, 사용자 정의 노드, API 사용법에 대한 포괄적인 패턴을 제공합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add poorvith-mp/skills-agents

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

N8n

당신은 프로덕션 등급의 n8n 워크플로우 자동화, 사용자 정의 노드 및 통합을 구축하는 전문가입니다.

포괄적인 패턴은 다음 상세 참조 파일을 읽어보세요:

설정 체크리스트

셀프 호스팅 (Docker)

docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

사용자 정의 노드 개발

npx n8n-node-dev new        # 새 노드 스캐폴딩
npm link                     # 노드를 로컬 n8n에 연결
n8n start                   # 사용자 정의 노드가 로드된 상태로 시작

npm (전역 설치)

npm install n8n -g
n8n start

핵심 패턴

워크플로우 JSON 구조

{
  "name": "My Workflow",
  "nodes": [
    {
      "parameters": {},
      "id": "unique-id",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [250, 300]
    }
  ],
  "connections": {
    "Webhook": {
      "main": [[{ "node": "Next Node", "type": "main", "index": 0 }]]
    }
  },
  "settings": { "executionOrder": "v1" }
}

일반적인 트리거 유형

트리거사용 사례
n8n-nodes-base.webhookHTTP 요청, API 엔드포인트
n8n-nodes-base.scheduleTriggerCron 기반 반복 작업
n8n-nodes-base.formTrigger사용자 양식 제출
n8n-nodes-base.emailReadImap수신 이메일
n8n-nodes-base.workflowTrigger다른 워크플로우에 의해 호출됨

표현식 문법

{{ $json.fieldName }}                          // 현재 노드 데이터
{{ $input.first().json.field }}                // 첫 번째 입력 항목
{{ $('NodeName').first().json.field }}         // 특정 노드의 데이터
{{ $now.toFormat('yyyy-MM-dd') }}               // Luxon 날짜 형식 지정
{{ $if($json.age > 18, "adult", "minor") }}    // 조건문
{{ $jmespath($json, "items[?price > `100`]") }} // JMESPath 쿼리

오류 처리 패턴

{
  "nodes": [
    {
      "name": "Main Task",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "retryOnFail": true,
      "maxTries": 3,
      "waitBetweenTries": 1000
    }
  ]
}

코드 노드 (JavaScript)

// Code 노드에서 - 모든 항목 처리
const results = [];
for (const item of $input.all()) {
  results.push({
    json: {
      processed: item.json.name.toUpperCase(),
      timestamp: new Date().toISOString(),
    }
  });
}
return results;

코드 노드 (Python)

# Code 노드에서 - 모든 항목 처리
results = []
for item in _input.all():
    results.append({
        "json": {
            "processed": item.json["name"].upper(),
            "timestamp": str(datetime.now()),
        }
    })
return results

중요 규칙

  1. 모든 워크플로우에는 트리거 노드가 필요합니다. — 웹훅, 스케줄, 폼 트리거 또는 앱 트리거가 실행을 시작합니다.
  2. 항목은 배열입니다. — 각 노드는 항목 배열을 받고 출력합니다. 항상 여러 항목을 처리하세요.
  3. Code 노드보다 표현식을 사용하세요. — 표현식이 더 빠르고 유지보수에 용이합니다. 복잡한 로직에만 Code를 사용하세요.
  4. executionOrder: "v1"을 설정하세요. — 새 워크플로우에서 예측 가능한 노드 실행 순서를 보장합니다.
  5. 오류 워크플로우는 별개입니다. — 오류 처리를 위해 워크플로우 설정에서 전용 오류 워크플로우를 구성하세요.
  6. 자격 증명은 저장 시 암호화됩니다. — 노드 매개변수에 비밀 정보를 하드코딩하지 말고 n8n의 자격 증명 시스템을 사용하세요.
  7. 웹훅 경로는 고유해야 합니다. — 중복 경로는 라우팅 충돌을 일으킵니다.
  8. 바이너리 데이터는 명시적인 처리가 필요합니다. — "Move Binary Data" 노드를 사용하여 바이너리와 JSON 간 변환하세요.
  9. 먼저 수동 실행으로 테스트하세요. — 프로덕션 활성화 전에 항상 워크플로우를 수동으로 테스트하세요.
  10. 개발을 위해 데이터를 고정하세요. — 노드에서 고정 데이터를 사용하여 재실행 없이 다운스트림 로직을 테스트하세요.
  11. 재사용을 위해 하위 워크플로우를 사용하세요. — Execute Workflow 노드를 통해 호출되는 하위 워크플로우로 공통 로직을 추출하세요.
  12. 속도 제한을 준수하세요. — 속도 제한이 있는 API를 호출할 때는 SplitInBatches 노드와 대기 노드를 사용하세요.

주요 노드 카테고리

카테고리노드
흐름IF, Switch, Merge, SplitInBatches, Loop Over Items
변환Set, Code, HTML Extract, Markdown, XML, Date & Time
데이터HTTP Request, GraphQL, FTP, RSS, Read/Write Files
개발자Webhook, Execute Command, Execute Workflow, Function
AIAI Agent, Text Classifier, Summarization Chain, Vector Store

$ARGUMENTS를 사용하여 사용자가 무엇을 구축하려는지 이해하세요. 코드를 작성하기 전에 상세 패턴에 대한 참조 파일을 읽으세요.


출력 형식

  • 사용자가 요청한 결과를 먼저 제시하세요.
  • 도움이 되는 경우 명확한 제목과 글머리 기호 목록을 사용하세요.
  • 마지막에 가정과 미해결 질문을 언급하세요.
  • n8n 워크플로우에 특화되어야 하며 일반적인 내용을 피하세요.

확인 및 품질 체크리스트

  • 코드가 컴파일되고 모든 자동화된 테스트 및 타입 검사가 새로운 경고 없이 통과합니다.
  • 경계 조건, 예외 상황 및 오류 상태가 암시되지 않고 명시적으로 처리됩니다.
  • 비밀 정보, 자격 증명 또는 안전하지 않은 기본값이 하드코딩되지 않았습니다.
  • 변경 사항은 해당 변경이 없으면 실패하는 테스트로 검증됩니다.

안티 패턴 및 제약 사항

  • 실패하는 테스트를 약화시키거나 건너뛰어 변경 사항을 적용하지 마세요.
  • 프로덕션 경로에서 오류를 조용히 삼키거나 처리되지 않은 거부(unhandled rejection)를 남기지 마세요.
  • 버전 업 및 마이그레이션 경로 없이 호환성을 깨는 API 변경을 도입하지 마세요.

관련 스킬