8
n8n 한국어amn8n.com

콘텐츠 생성기

고급

이것은Content Creation, Multimodal AI분야의자동화 워크플로우로, 22개의 노드를 포함합니다.주로 Set, Code, Webhook, Agent, OpenAi 등의 노드를 사용하며. AI 기반 소셜 미디어 콘텐츠 생성기, GPT-4 모델 전략 방법 적용

사전 요구사항
  • HTTP Webhook 엔드포인트(n8n이 자동으로 생성)
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "JjMWwStuPbtjBfyk",
  "meta": {
    "instanceId": "3c35a703d75886d08705c211ee107a7513430dd05494ec0c569f28570a3768fa"
  },
  "name": "Content Generator",
  "tags": [
    {
      "id": "TOmp11D0RTZnlXKe",
      "name": "Creator Hub",
      "createdAt": "2025-07-27T06:39:31.509Z",
      "updatedAt": "2025-07-27T06:39:31.509Z"
    }
  ],
  "nodes": [
    {
      "id": "54370848-f544-4e92-a669-ed3d77832a8a",
      "name": "콘텐츠 생성",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        1872,
        1056
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "GPT-4O"
        },
        "options": {
          "topP": 0.9,
          "temperature": 0.6,
          "presence_penalty": 0.6,
          "frequency_penalty": 0.3
        },
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=# System Prompt for Generate Content Block\n\n## Context\nYou are an elite AI content strategist specializing in both social media and blog content creation for creators, coaches, solopreneurs, and small business owners. Your users struggle with limited time, creative blocks, and posting confidence. They depend on you to produce ONE emotionally resonant, platform-native piece of content that feels authentic, engaging, and ready to publish without any editing required.\n\n## Role\nYou are not a template generator or draft creator. You are a seasoned digital content creator who understands:\n- Human psychology and emotional triggers\n- Platform-specific best practices and engagement patterns\n- Current social media trends and content rhythm\n- Authentic storytelling that builds audience trust\n- What makes content perform well and drive meaningful reactions\n\n## Task\nUsing the structured inputs provided, generate **ONE complete, fully polished piece of content** that matches the specified platform requirements:\n\n**For Social Media Platforms** (Instagram, LinkedIn, X, Facebook, TikTok):\n- Create a ready-to-publish social media post\n- Follow platform-specific word count guidelines\n- Include engaging hook, narrative, value, and CTA\n- Add relevant hashtags\n\n**For Blog Posts**:\n- Create a complete blog article with proper structure\n- Include compelling headline, introduction, body sections, and conclusion\n- Follow blog word count guidelines (700-1,500 words standard)\n- Maintain educational and engaging tone throughout\n\n### Input Variables:\n- **Intent**: `{{ $json.intent }}`\n- **Strategic Reasoning**: `{{ $json.strategicreasioning }}`\n- **Emotional Framing**: `{{ $json.emotional_summary }}`\n- **Platform**: `{{ $json.Platform }}`\n- **Niche**: `{{ $json.Niche }}`\n- **Tone**: `{{ $json.Tone }}`\n- **Objective**: '{{ $json.objective }}',\n- **key_details**: '{{ $json.key_details }}'\n\n**Content Outline Components:**\n- **Hook Idea**: `{{ $json.HookIdea }}`\n- **Story/Idea Summary**: `{{ $json.IdeaSummary }}`\n- **Pivot/Punchline**: `{{ $json.Punchline }}`\n- **CTA Idea**: `{{ $json.cta_idea }}`\n\n### Output Requirements:\n\n**Platform-Specific Word Count Guidelines:**\n- **Instagram**: 125-150 words (optimal engagement), max 2,200 characters\n- **LinkedIn**: 150-300 words (professional posts), max 3,000 characters  \n- **X (Twitter)**: 40-50 words, max 280 characters\n- **Facebook**: 40-80 words (highest engagement), up to 500 words acceptable\n- **TikTok**: 100-150 characters (brief and punchy)\n- **YouTube**: 125-175 words (video descriptions)\n- **Blog Posts**: 700-1,500 words (standard), 300-600 words (short-form), 1,500+ words (long-form)\n\n**Content Creation Strategy:**\n1. **Use the Hook Idea** as your opening to immediately capture attention\n2. **Build from the Story/Idea Summary** to develop your main content body\n3. **Incorporate the Pivot/Punchline** as your key insight or turning point\n4. **End with the CTA Idea** to drive engagement and interaction\n5. **Match the Platform, Niche, and Tone** specifications exactly\n\n**Quality Standards:**\n- Deliver ONE polished, publication-ready piece of content\n- Sound human, not AI-generated\n- Be platform-optimized and engaging\n- Include natural flow and proper formatting\n- Use emojis only when they enhance readability (social media only)\n- Avoid generic filler phrases or overly academic tone\n- No section labels in final output - deliver seamless content\n- For social media: Include 3-5 trending, niche-relevant hashtags\n- For blogs: Use proper headings, subheadings, and paragraph structure\n\n**Hashtag Guidelines:**\n- Use smart, trending hashtags relevant to the niche\n- Avoid overused tags like #love, #instagood, #followme\n- Simulate current trends if specific tags aren't provided\n- Add tags {{ $json.HashtagThemes }}, but **DO NOT** duplicate\n\n**Tone Matching:**\n- **Raw & Relatable**: Unfiltered, personal, authentically messy\n- **Fun & Bold**: Confident, witty, rebellious energy\n- **Inspirational**: Uplifting, purpose-driven, emotional\n- **Professional**: Polished, value-rich, LinkedIn-appropriate\n- **Educational**: Informative, clear, helpful guidance\n\n## Format Rules\n- Output ONE complete, polished piece of content ready for immediate publication\n- No explanatory text, section headers, or multiple options in your response\n- Match the exact Platform, Niche, and Tone specifications from inputs\n- Use the provided outline components strategically in your content structure\n- Ensure the content delivers maximum engagement potential for the specified platform\n- Include strategic emotional elements from the framing provided\n- Content should be copy-paste ready with perfect formatting\n- For blogs: Include proper markdown formatting with headers and structure\n- For social media: Follow platform-specific formatting conventions\n\n## Example Output Structure:\n\n**For Social Media Posts:**\n```\n[Hook from hook_idea - attention-grabbing opener]\n\n[Content body inspired by story_or_idea_summary - 2-5 lines of narrative/insight]\n\n[Pivot/punchline integration - key takeaway that delivers value]\n\n[CTA from cta_idea - encouraging interaction]\n\n#RelevantHashtag #NicheTrend #EngagementTag\n```\n\n**For Blog Posts:**\n```\n# [Compelling Headline Based on Hook Idea]\n\n[Opening paragraph using hook_idea to draw readers in]\n\n[Main content sections developing the story_or_idea_summary with proper subheadings and detailed explanations]\n\n[Integration of pivot_or_punchline as key insight]\n\n[Conclusion incorporating cta_idea for reader engagement]\n```\n\nTransform the provided strategic inputs and outline components into ONE compelling, authentic, fully polished piece of content that your target audience will engage with, share, and remember. This should be publication-ready content that requires no further editing."
            }
          ]
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "PzzLblAykQPFIDZf",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "b0a2fc7d-7e0f-4cb8-8560-2147a4d9fe29",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        16,
        576
      ],
      "webhookId": "4a5295e0-b881-4696-8b06-00c97eb12c7a",
      "parameters": {
        "path": "4a5295e0-b881-4696-8b06-00c97eb12c7a",
        "options": {
          "ignoreBots": true,
          "allowedOrigins": "*"
        },
        "httpMethod": "POST",
        "responseMode": "responseNode"
      },
      "typeVersion": 2
    },
    {
      "id": "2c3bce39-d35b-4ebd-9656-3c491b82bbdb",
      "name": "필드 편집",
      "type": "n8n-nodes-base.set",
      "position": [
        352,
        576
      ],
      "parameters": {
        "options": {
          "ignoreConversionErrors": true
        },
        "assignments": {
          "assignments": [
            {
              "id": "94334cd1-6a44-4a0d-9c00-bd59e57b8081",
              "name": "webInput",
              "type": "array",
              "value": "={{ $item(\"0\").$node[\"Webhook\"].json[\"body\"][\"webInput\"]}}"
            },
            {
              "id": "975005e9-b372-422e-a84d-97e992d930cb",
              "name": "sessionId",
              "type": "string",
              "value": "={{ Date.now() + Math.random().toString(36).substring(2, 15) }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "f4f61a04-93e5-44c0-b1bd-88462edc2d02",
      "name": "개요",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        2864,
        512
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "GPT-4.1"
        },
        "options": {
          "topP": 0.9,
          "maxTokens": 400,
          "temperature": 0.7,
          "presence_penalty": 0.3,
          "frequency_penalty": 0.1
        },
        "messages": {
          "values": [
            {
              "content": "={{ $('Generate Intent').item.json.output.intent }}\n{{ $('Format Emotional Data').item.json.emotional_summary }}\n{{ $json.objective }}\n{{ $json.key_details }}"
            },
            {
              "role": "system",
              "content": "=You are a copy strategist planning the structure of a high-performing post.\n\nUsing the intent and emotional framing, create a post outline with:\n- Hook idea (short, scroll-stopping)\n- Story or idea summary\n- Pivot or punchline\n- CTA idea (engagement-driven)\n- Hashtag themes or inspiration, only when the platform requested is for X or LinkedIn. Or, unless specifically asked for.\n\n{{ $('Generate Intent').item.json.output.intent }}\n{{ $('Format Emotional Data').item.json.emotional_summary }}\n\n\n**DO NOT** generate the full content\n** DO NOT** hallucinate\n\nAdd the below fields to the JSON response\n\nsessionId: {{ $json.sessionId }}\nPlatform: {{ $json.platform }}\nNiche: {{ $json.niche }}\nTone: {{ $json.tone }}\n\nUse below JSON key names when outputing the data\n\n\"Hook idea\"\n\"Story or idea summary\"\n\"Pivot or punchline\"\n\"CTA idea\"\n\"Hashtag themes\"\n\"Key Phrases\"\n\"Emotional Journey\"\n\"Core Emotion\"\n\n\n\n \n\n\n\n\n"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "PzzLblAykQPFIDZf",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "7f06f9bb-d850-4691-b579-136ee318bb15",
      "name": "감정 프레이밍",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        2112,
        560
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "GPT-4.1"
        },
        "options": {
          "topP": 0.9,
          "temperature": 0.3
        },
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=You are a copywriter skilled in emotional marketing. Given the reasoning below, define how the post should emotionally connect with the reader.\n\n\n\nUse the below parameters when creating the emotional framing\n{{ $json.message.content }}\n\n\nUsing the user’s prompt and reasoning, define:\n- Core emotion to evoke (e.g. hope, frustration, courage, belonging)\n- Emotional arc (e.g. pain → relief, stuck → empowered)\n- Tone modifiers (e.g. raw, bold, warm, sarcastic)\n- A few emotionally charged phrases that match this feeling\n\nThis framing will help shape the voice and depth of the post.\n\n\nAdd the below fields to the response output\n\nplatform: {{ $json.message.content.platform }}\nniche: {{ $json.message.content.niche }}\ntone:  {{ $json.message.content.tone }}\nobjective: {{ $json.message.content.objective }}\ndurations: {{ $json.message.content.durations }}\nkey_details: {{ $json.message.content.key_details }}\nsessionId: {{ $json.message.content.sessionId }}\n\n"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "PzzLblAykQPFIDZf",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "fddb6445-c98c-483d-aee5-9ed7ffcf828b",
      "name": "Webhook에 응답",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        2640,
        1056
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.4
    },
    {
      "id": "56fa1304-59ff-4468-bc2e-47e62aea60b4",
      "name": "stringifyJSON",
      "type": "n8n-nodes-base.code",
      "position": [
        2336,
        1056
      ],
      "parameters": {
        "jsCode": "// Loop over input items and stringify the JSON of each one\nfor (const item of $input.all()) {\n  item.json.myStringifiedField = JSON.stringify(item.json.someObject);\n}\nreturn $input.all();"
      },
      "typeVersion": 2
    },
    {
      "id": "8400cde3-f59b-4eec-bb07-6347fd85aef8",
      "name": "정보 추출기",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        672,
        560
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini",
          "cachedResultName": "GPT-4.1-MINI"
        },
        "options": {
          "topP": 0.8,
          "maxTokens": 300,
          "temperature": 0.4,
          "presence_penalty": 0.1,
          "frequency_penalty": 0.1
        },
        "messages": {
          "values": [
            {
              "content": "={{ $json.webInput }}"
            },
            {
              "role": "system",
              "content": "=You are a brand strategist helping clarify a user's content goal.\n\nFrom the input, extract the following clearly:\n- Platform (Instagram, LinkedIn, X, etc.)\n- Niche or industry (e.g. fitness coach, skincare, SaaS)\n- Type of post (e.g. story, tip, motivation, carousel)\n- Brand tone (e.g. raw, witty, bold, inspirational)\n- Audience type (e.g. solopreneurs, moms, Gen Z, founders)\n- Objective (e.g. engagement, trust, relatability, sales)\n- durations (e.g. 2 minutes, 1 week, 1 month, 1 year)\n- key details (e.g. scroll-stopping, eye-catching, high-tech)\n\nInclude the original user prompt\nInclude the sessionId = {{ $json.sessionId || Date.now() + Math.random().toString(36).substring(2, 15)}} in the response\n\n\nOutput example:\n\n{\n\n  \"original_prompt\": \"generate a linkedin post about n8n workflow I just created on How to generate content using AI\",\n  \"sessionId\": \"{{ $json.sessionId }}\",\n  \"platform\": \"LinkedIn\",\n  \"niche_or_industry\": \"Technology / Automation / AI Content Creation\",\n  \"type_of_post\": \"Informative / Educational\",\n  \"brand_tone\": \"Professional\",\n  \"audience_type\": \"Professionals, Marketers, Content Creators, Automation Enthusiasts\",\n  \"objective\": \"Engagement and Trust Building\"\n\n}\n\n\n"
            },
            {
              "role": "assistant",
              "content": "Tone:Raw & Relatable\t\t\t\nWriting Style: Unfiltered, personal, messy-in-a-good-way\n\nTone: Fun & Bold\t\t\nWriting Style: Confident, witty, rebellious\n\nTone: Inspirational\t\nWriting Style: Uplifting, purpose-driven, emotional\n\nTone: Professional\nWriting Style: Polished, value-rich, LinkedIn-style\n\nTone: Educational \nWriting Style: Informative, clear, helpful"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "PzzLblAykQPFIDZf",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "50849995-f5f1-419d-8a6a-506408fab2af",
      "name": "OpenAI 채팅 모델",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1152,
        896
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "gpt-4.1"
        },
        "options": {
          "topP": 0.7,
          "maxRetries": 2,
          "temperature": 0.2,
          "presencePenalty": 0,
          "frequencyPenalty": 0
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "5527e9da-4415-4295-a90a-2990640d7272",
      "name": "의도 생성",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1168,
        560
      ],
      "parameters": {
        "text": "={{ $json.message.content.original_prompt }}",
        "options": {
          "systemMessage": "=You are a helpful assistant who can create the **intent** from the prompt into a paragraph format. Use platform, niche, type of post, audience, objective when creating the intent.\n\nUse the following parameters when generating the intent\n\n{{ $json.message.content.platform }}\n{{ $json.message.content.niche_or_industry }}\n{{ $json.message.content.type_of_post }}\n{{ $json.message.content.brand_tone }}\n{{ $json.message.content.audience_type }}\n{{ $json.message.content.objective }}\n{{ $json.message.content.durations || ''}}\n{{ $json.message.content.key_details || ''}}\n\nconstraints:\nDO NOT change the context\nDO NOT hallucinate\nDo Not generate the content\n**ONLY** create the intent and return. \n**USE** the structured output to respond\n\nsessionID = {{ $json.message.content.sessionId }}\noriginal_prompt = {{ $json.message.content.original_prompt }}\n\naudience_type = {{ $json.message.content.audience_type }}\nobjective = {{ $json.message.content.objective }}",
          "returnIntermediateSteps": true
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2.1
    },
    {
      "id": "1ba2ef19-bc82-40fe-9b9d-dd34a9bcce1c",
      "name": "구조화된 출력 파서",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1344,
        880
      ],
      "parameters": {
        "jsonSchemaExample": "{\n\t\"intent\": \"<paragraph generated by AI>\",\n    \"platform\": \"<include from original message>\",\n    \"niche\": \"<include from original message>\",\n    \"tone\": \"<Include from original message>\",\n\t\"user_prompt\": \"<original user prompt>\",\n    \"objective\": \"<objective>\",\n    \"durations\": \"<durations>\",\n    \"key_details\": \"<key details>\",\n    \"audience_type\": \"<audience_type>\",\n    \"sessionId\": \"<include the sessionId>\"\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "f4a93ee4-6220-4aa7-81f0-202ec7a896b3",
      "name": "전략",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        1664,
        560
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1",
          "cachedResultName": "GPT-4.1"
        },
        "options": {
          "topP": 0.9,
          "maxTokens": 400,
          "temperature": 0.6,
          "presence_penalty": 0.3,
          "frequency_penalty": 0.2
        },
        "messages": {
          "values": [
            {
              "content": "={{ $json.output.intent }}"
            },
            {
              "role": "system",
              "content": "=You are a content strategist thinking through the \"why\" behind a post.\n\nUse the below parameters when creating the reasoning\n\n{{ $json.output.intent }}\n{{ $json.output.user_prompt }}\n{{ $json.output.objective }}\n{{ $json.output.key_details }}\n\nUsing the user prompt and intent, answer:\n- What key belief or pain point are we addressing?\n- What myth or limiting mindset can we challenge?\n- What takeaway should the reader walk away with?\n- What shift in thinking will make this valuable?\n\nBe strategic and reflective — like a seasoned creator planning a meaningful post.\n**DO NOT** output the questions and answers type format.\n**THINK** and compile your response into a meaningful paragraph\n**Remember** the key details like dates, times, durations\n\n\noutput format:\n\n{\n  \"strategicreasioning\": \"<reasoning generated by AI>\",\n  \"platform\": '{{ $json.output.platform }}',\n  \"niche\": '{{ $json.output.niche }}',\n  \"tone\": '{{ $json.output.tone }}',\n  \"audience_type\": '{{ $json.output.audience_type }}',\n  \"objective\": '{{ $json.output.objective }}',\n  \"durations\": '{{ $json.output.durations }}',\n  \"key_details\": '{{ $json.output.key_details }}',\n  \"sessionId\": '{{ $json.output.sessionId }}'\n}\n\n\n\n\n\n\n"
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "PzzLblAykQPFIDZf",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "506e960c-b879-4517-927b-e4d7a390566b",
      "name": "감정 데이터 형식화",
      "type": "n8n-nodes-base.set",
      "position": [
        2576,
        336
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "27e62464-f696-40f7-a972-3a69749fd851",
              "name": "emotional_summary",
              "type": "string",
              "value": "=Core Emotion: {{ $json.message.content.emotional_framing.core_emotion_to_evoke }}\nEmotional Journey: {{ $json.message.content.emotional_framing.emotional_arc }}\nTone Style: {{ $json.message.content.emotional_framing.tone_modifiers }}\nKey Phrases: {{ $json.message.content.emotional_framing.emotionally_charged_phrases }}"
            },
            {
              "id": "6ff43031-b3a8-4151-a4b8-cb6ec4817957",
              "name": "platform",
              "type": "string",
              "value": "={{ $json.message.content.platform }}"
            },
            {
              "id": "ed335b84-923a-41b8-9f42-dbcb2b8e845e",
              "name": "niche",
              "type": "string",
              "value": "={{ $json.message.content.niche }}"
            },
            {
              "id": "63b4614a-8dc2-4d41-9438-6557a5b7e58f",
              "name": "tone",
              "type": "string",
              "value": "={{ $json.message.content.tone }}"
            },
            {
              "id": "b6c88f76-0649-4d89-a8c3-07a40c521dc9",
              "name": "sessionId",
              "type": "string",
              "value": "={{ $json.message.content.sessionId }}"
            },
            {
              "id": "5e939d19-f5b1-4aa6-89b8-465279c0ccd6",
              "name": "durations",
              "type": "string",
              "value": "={{ $json.message.content.durations }}"
            },
            {
              "id": "6f7a87f8-2a3e-43d8-9303-c4de98ee2f2e",
              "name": "objective",
              "type": "string",
              "value": "={{ $json.message.content.objective }}"
            },
            {
              "id": "8fe107c5-043b-4b9f-9c74-587d930eb5fc",
              "name": "key_details",
              "type": "string",
              "value": "={{ $json.message.content.key_details }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "241984c1-83a1-464c-af39-c362f94d8567",
      "name": "스티커 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 576,
        "height": 192,
        "content": "## 🎯 **WORKFLOW OVERVIEW**\n**Purpose**: AI-powered content creation pipeline that transforms user prompts into polished, platform-optimized content  \n**Output**: Ready-to-publish social media posts or blog articles  \n**Users**: Creators, coaches, solopreneurs, small business owners"
      },
      "typeVersion": 1
    },
    {
      "id": "dd3a2415-3ae0-4e6b-b5cc-6fddf6dacd64",
      "name": "스티커 노트1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -16,
        240
      ],
      "parameters": {
        "width": 576,
        "height": 496,
        "content": "### 🔗 **Webhook Node**\n\n- **Purpose**: Receives content requests via HTTP POST\n- **Path**: 4a5295e0-b881-4696-8b06-00c97eb12c7a\n- **Method**: POST\n- **Response**: Use \"Respond to Webhook\" node\n- Input variables expected\n```\n{\n  \"webInput\": \"generate a LinkedIn post about n8n workflow I just created on How to generate content using AI\",\n}\n```\n\n\n\n\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "6e72012a-0a33-44e9-9471-7b795c74be9b",
      "name": "스티커 노트2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        608,
        240
      ],
      "parameters": {
        "width": 400,
        "height": 496,
        "content": "### 🔍 **Information Extractor Node**\n\n- **Model**: GPT-4.1-Mini (cost-effective for extraction)\n- **Temperature**: 0.4 (balanced accuracy/creativity)\n- **JSON Output**: ✅ Enabled\n\n**Extracts**:\n- Platform (Instagram, LinkedIn, X, etc.)\n- Niche/Industry \n- Post Type\n- Brand Tone\n- Audience Type\n- Objective"
      },
      "typeVersion": 1
    },
    {
      "id": "22f12aad-7291-4016-ac03-87fec2f16882",
      "name": "스티커 노트3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1104,
        240
      ],
      "parameters": {
        "color": 5,
        "width": 416,
        "height": 496,
        "content": "### 🎯 **Generate Intent Node**\n\n- **Type**: AI Agent with Structured Output Parser\n- **Model**: OpenAI Chat Model (GPT-4.1)\n- **Temperature**: 0.2 (high accuracy)\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b05a1287-c940-45d3-af3e-8c38a34cae27",
      "name": "스티커 노트4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1552,
        240
      ],
      "parameters": {
        "width": 464,
        "height": 496,
        "content": "### 📋 **Strategy Node**\n\n\n- **Model**: Choose a model suitable for you\n- **Temperature**: 0.6 (balanced reasoning)\n- **JSON Output**: ✅ Enabled\n\n\n**Purpose**: Develops strategic reasoning for content approach  \n**Key Questions Addressed**:\n- What belief/pain point to address?\n- What myth to challenge?\n- What takeaway for reader?\n- What mindset shift needed?"
      },
      "typeVersion": 1
    },
    {
      "id": "03fb8828-50a5-4c88-b01f-ebc5124960c4",
      "name": "스티커 노트5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2048,
        240
      ],
      "parameters": {
        "color": 4,
        "width": 448,
        "height": 496,
        "content": "### ❤️ **Emotional Framing Node**\n\n- **Model**: Choose a model suitable for you \n- **Temperature**: 0.3 (consistent emotional tone)\n- **JSON Output**: ✅ Enabled\n\n\n\n**Output Structure**:\n- Core emotion to evoke\n- Emotional arc (journey)\n- Tone modifiers (array)\n- Emotionally charged phrases (array)"
      },
      "typeVersion": 1
    },
    {
      "id": "666a5f26-9075-41db-8393-7e614a41d8db",
      "name": "스티커 노트6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2768,
        192
      ],
      "parameters": {
        "width": 464,
        "height": 512,
        "content": "### 📝 **Outline Node**\n\n\n- **Model**: Choose a model suitable for you\n- **Temperature**: 0.7 (creative structure)\n- **JSON Output**: ✅ Enabled\n\n**Output Components**:\n- `hook_idea`: Attention-grabbing opener\n- `story_or_idea_summary`: Main content guide\n- `pivot_or_punchline`: Key insight\n- `cta_idea`: Engagement driver"
      },
      "typeVersion": 1
    },
    {
      "id": "968c0fee-7789-4b0c-ac8a-96ef4c6423a0",
      "name": "스티커 노트7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1840,
        800
      ],
      "parameters": {
        "color": 2,
        "width": 384,
        "height": 400,
        "content": "### ✨ **Generate Content Node**\n\n\n- **Model**: GPT-4O or higher (premium for final output)\n- **Temperature: 0.9 (high creativity)\n- **Frequency Penalty**: 0.3\n- **Presence Penalty**: 0.6\n\n\n**Purpose**: Creates final polished content using all previous inputs"
      },
      "typeVersion": 1
    },
    {
      "id": "451adeb0-95b5-4f71-b879-81d9e869cbff",
      "name": "입력 형식화",
      "type": "n8n-nodes-base.set",
      "position": [
        1632,
        1056
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "e580d4b9-0429-4c83-ac53-cf925218a454",
              "name": "HookIdea",
              "type": "string",
              "value": "={{ $json.message.content[\"Hook idea\"] }}"
            },
            {
              "id": "729f509c-e787-4671-8830-d027c8fef03a",
              "name": "IdeaSummary",
              "type": "string",
              "value": "={{ $json.message.content[\"Story or idea summary\"] }}"
            },
            {
              "id": "5cfce3a1-29a8-42dc-bd79-35ff3d17949a",
              "name": "Punchline",
              "type": "string",
              "value": "={{ $json.message.content[\"Pivot or punchline\"] }}"
            },
            {
              "id": "d5bca11c-2bbd-4d5a-9809-625616602369",
              "name": "HashtagThemes",
              "type": "array",
              "value": "={{ $json.message.content[\"Hashtag themes\"] || [] }}"
            },
            {
              "id": "ad379413-d7b9-459d-958d-8f22fe543713",
              "name": "cta_idea",
              "type": "string",
              "value": "={{ $json.message.content[\"CTA idea\"] }}"
            },
            {
              "id": "ae2dba2d-9f44-4117-8135-0a2d7baa70b4",
              "name": "sessionId",
              "type": "string",
              "value": "={{ $json.message.content.sessionId }}"
            },
            {
              "id": "2b490195-bc94-4aad-a414-34e5c4d2b671",
              "name": "Platform",
              "type": "string",
              "value": "={{ $json.message.content.Platform }}"
            },
            {
              "id": "5ec56c08-1e99-4c10-b59d-74ced53bdf8d",
              "name": "Niche",
              "type": "string",
              "value": "={{ $json.message.content.Niche }}"
            },
            {
              "id": "e0e2b1dd-8a11-4137-8df5-a4975f9436a7",
              "name": "Tone",
              "type": "string",
              "value": "={{ $json.message.content.Tone }}"
            },
            {
              "id": "5e9be033-08c3-4825-b1de-da40016bea8c",
              "name": "intent",
              "type": "string",
              "value": "={{ $('Generate Intent').item.json.output.intent }}"
            },
            {
              "id": "12a1022e-11c4-4ca1-8bb7-52c7a2529812",
              "name": "strategicreasioning",
              "type": "string",
              "value": "={{ $('Strategy').item.json.message.content.strategicreasioning }}"
            },
            {
              "id": "aad96887-5c45-481e-85e1-cbc1ec652377",
              "name": "emotional_summary",
              "type": "string",
              "value": "={{ $('Format Emotional Data').item.json.emotional_summary }}"
            },
            {
              "id": "05348e56-7a68-4e75-9c62-9e8c2143b36e",
              "name": "objective",
              "type": "string",
              "value": "={{ $('Format Emotional Data').item.json.objective }}"
            },
            {
              "id": "ad76add3-0b5f-47bf-881e-189a019372fc",
              "name": "key_details",
              "type": "string",
              "value": "={{ $('Format Emotional Data').item.json.key_details }}"
            },
            {
              "id": "1c2913a7-ec68-44f8-9f21-0a21056e17e9",
              "name": "durations",
              "type": "string",
              "value": "={{ $('Format Emotional Data').item.json.durations }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "d60a5d1c-5e30-4f61-b463-87f443840199",
  "connections": {
    "f4f61a04-93e5-44c0-b1bd-88462edc2d02": {
      "main": [
        [
          {
            "node": "451adeb0-95b5-4f71-b879-81d9e869cbff",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b0a2fc7d-7e0f-4cb8-8560-2147a4d9fe29": {
      "main": [
        [
          {
            "node": "2c3bce39-d35b-4ebd-9656-3c491b82bbdb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f4a93ee4-6220-4aa7-81f0-202ec7a896b3": {
      "main": [
        [
          {
            "node": "7f06f9bb-d850-4691-b579-136ee318bb15",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2c3bce39-d35b-4ebd-9656-3c491b82bbdb": {
      "main": [
        [
          {
            "node": "8400cde3-f59b-4eec-bb07-6347fd85aef8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "451adeb0-95b5-4f71-b879-81d9e869cbff": {
      "main": [
        [
          {
            "node": "54370848-f544-4e92-a669-ed3d77832a8a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "56fa1304-59ff-4468-bc2e-47e62aea60b4": {
      "main": [
        [
          {
            "node": "fddb6445-c98c-483d-aee5-9ed7ffcf828b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5527e9da-4415-4295-a90a-2990640d7272": {
      "main": [
        [
          {
            "node": "f4a93ee4-6220-4aa7-81f0-202ec7a896b3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "54370848-f544-4e92-a669-ed3d77832a8a": {
      "main": [
        [
          {
            "node": "56fa1304-59ff-4468-bc2e-47e62aea60b4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7f06f9bb-d850-4691-b579-136ee318bb15": {
      "main": [
        [
          {
            "node": "506e960c-b879-4517-927b-e4d7a390566b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "50849995-f5f1-419d-8a6a-506408fab2af": {
      "ai_languageModel": [
        [
          {
            "node": "5527e9da-4415-4295-a90a-2990640d7272",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "506e960c-b879-4517-927b-e4d7a390566b": {
      "main": [
        [
          {
            "node": "f4f61a04-93e5-44c0-b1bd-88462edc2d02",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8400cde3-f59b-4eec-bb07-6347fd85aef8": {
      "main": [
        [
          {
            "node": "5527e9da-4415-4295-a90a-2990640d7272",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1ba2ef19-bc82-40fe-9b9d-dd34a9bcce1c": {
      "ai_outputParser": [
        [
          {
            "node": "5527e9da-4415-4295-a90a-2990640d7272",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

고급 - 콘텐츠 제작, 멀티모달 AI

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

관련 워크플로우 추천

워크플로우 정보
난이도
고급
노드 수22
카테고리2
노드 유형9
난이도 설명

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

저자
inderjeet Bhambra

inderjeet Bhambra

@idsinghbhambra

I am on a journey to learn and spread the automations through n8n workflows.

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34