{
  "name": "RSS \ud53c\ub4dc \uc218\uc9d1",
  "nodes": [
    {
      "parameters": {
        "resource": "block",
        "blockId": {
          "__rl": true,
          "value": "your-notion-page-id",
          "mode": "url"
        },
        "blockUi": {
          "blockValues": [
            {
              "richText": true,
              "text": {
                "text": [
                  {
                    "text": "={{$json.content.substring(0, 2000)}}",
                    "annotationUi": {}
                  }
                ]
              }
            }
          ]
        }
      },
      "type": "n8n-nodes-base.notion",
      "typeVersion": 2.2,
      "position": [
        -80,
        100
      ],
      "id": "63fc149d-e783-4cb7-b052-ac2bfe7e72f7",
      "name": "Append a block",
      "credentials": {
        "notionApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "jsCode": "const items = $input.all();\nconst chunkSize = 10; // \ube14\ub85d\ub2f9 10\uac1c\uc529\n\nconst results = [];\nfor (let i = 0; i < items.length; i += chunkSize) {\n  const chunk = items.slice(i, i + chunkSize);\n  const content = chunk.map(item => {\n    const title = item.json.title || 'No Title';\n    const url = item.json.link || '#';\n    return `\u2022 [${title}](${url})`;\n  }).join('\\n');\n  \n  const header = i === 0 ? `## \ud83d\udcda \ub9c1\ud06c \ubaa9\ub85d - ${new Date().toLocaleDateString('ko-KR')}\\n\\n` : '';\n  \n  results.push({\n    json: { content: header + content }\n  });\n}\n\nreturn results;"
      },
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        -260,
        100
      ],
      "id": "ce9eea07-2b57-4e0d-8ded-27b34059a5ff",
      "name": "Code"
    },
    {
      "parameters": {
        "resource": "databasePage",
        "databaseId": {
          "__rl": true,
          "value": "your-notion-page-id",
          "mode": "url"
        },
        "title": "\ub274\uc2a4 \ucde8\ud569",
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "Title|title",
              "title": "={{ $json.title }}"
            },
            {
              "key": "Summary|rich_text",
              "textContent": "={{ $json.summary }}"
            },
            {
              "key": "Date|date",
              "date": "={{ $json.processedAt }}"
            },
            {
              "key": "Link|rich_text",
              "textContent": "={{ $json.link }}"
            },
            {
              "key": "Source|rich_text",
              "textContent": "={{ $json.source }}"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.notion",
      "typeVersion": 2.2,
      "position": [
        160,
        -120
      ],
      "id": "3f61773a-b668-42e4-b3f2-5ee28e69ccac",
      "name": "Create a database page",
      "credentials": {
        "notionApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "original-data",
              "name": "title",
              "value": "={{ $('\ud544\ub4dc \uc815\ub9ac \ubc0f \ucd94\ucd9c').item.json.title }}",
              "type": "string"
            },
            {
              "id": "link-data",
              "name": "link",
              "value": "={{ $('\ud544\ub4dc \uc815\ub9ac \ubc0f \ucd94\ucd9c').item.json.link }}",
              "type": "string"
            },
            {
              "id": "source-data",
              "name": "source",
              "value": "={{ $('\ud544\ub4dc \uc815\ub9ac \ubc0f \ucd94\ucd9c').item.json.source }}",
              "type": "string"
            },
            {
              "id": "summary-data",
              "name": "summary",
              "value": "={{ $json.choices && $json.choices[0] && $json.choices[0].message ? $json.choices[0].message.content : '\uc694\uc57d \uc2e4\ud328' }}",
              "type": "string"
            },
            {
              "id": "processed-time",
              "name": "processedAt",
              "value": "={{ $('\ud544\ub4dc \uc815\ub9ac \ubc0f \ucd94\ucd9c').item.json.processedAt }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "id": "0d8aca7d-c294-44c6-a459-c6698a937ad4",
      "name": "\ucd5c\uc885 \uacb0\uacfc \uc815\ub9ac",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        -80,
        -120
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "your-llm-api-endpoint",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={{ JSON.stringify({\n  model: \"exaone-3.5-2.4b-instruct\",\n  messages: [\n    {\n      role: \"user\",\n      content: \"\ub2e4\uc74c\uc744 \ud55c\uad6d\uc5b4\ub85c \uac04\uacb0\ud558\uac8c \uc694\uc57d\ud574\uc918:\\n\\n\" + \n        ($json.description && $json.description !== 'Comments'\n          ? $json.description.replace(/<[^>]*>?/gm, '')\n          : ($json.title + '\\n' + $json.link))\n    }\n  ],\n  max_tokens: 60,\n  stream: false\n}) }}",
        "options": {
          "timeout": 180000
        }
      },
      "id": "90f59fdb-7ce9-4752-84fc-95bb3c003913",
      "name": "LLM \uc694\uc57d",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4,
      "position": [
        -260,
        -120
      ]
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "title-assignment",
              "name": "title",
              "value": "={{ $json.title || 'No Title' }}",
              "type": "string"
            },
            {
              "id": "link-assignment",
              "name": "link",
              "value": "={{ $json.link || 'No Link' }}",
              "type": "string"
            },
            {
              "id": "description-assignment",
              "name": "description",
              "value": "={{ $json.description || $json.summary || '' }}",
              "type": "string"
            },
            {
              "id": "pubdate-assignment",
              "name": "pubDate",
              "value": "={{ $json.pubDate || new Date().toISOString() }}",
              "type": "string"
            },
            {
              "id": "source-assignment",
              "name": "source",
              "value": "={{ $json.source || 'No Source' }}",
              "type": "string"
            },
            {
              "id": "category-assignment",
              "name": "category",
              "value": "={{ $json.categories ? $json.categories.join(', ') : 'tech' }}",
              "type": "string"
            },
            {
              "id": "processed-time-assignment",
              "name": "processedAt",
              "value": "={{ new Date().toISOString() }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "id": "0498070b-382f-4a25-8fcf-3111ffa8a103",
      "name": "\ud544\ub4dc \uc815\ub9ac \ubc0f \ucd94\ucd9c",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        -80,
        -360
      ]
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict",
            "version": 1
          },
          "conditions": [
            {
              "id": "filter-today",
              "leftValue": "={{ $json.pubDate ? new Date($json.pubDate) : new Date() }}\n",
              "rightValue": "={{ new Date(Date.now() - 1 * 24 * 60 * 60 * 1000) }}\n",
              "operator": {
                "type": "dateTime",
                "operation": "afterOrEquals"
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "id": "cc69096c-9d35-4f18-88d7-f06e73b7923c",
      "name": "\uc624\ub298 \ub0a0\uc9dc \ud544\ud130\ub9c1",
      "type": "n8n-nodes-base.if",
      "typeVersion": 2,
      "position": [
        -360,
        -340
      ]
    },
    {
      "parameters": {},
      "id": "b843f690-c843-4f1e-9276-8ebddaad42f9",
      "name": "\ub9e4\uc2dc\uac04 \uc2e4\ud589",
      "type": "n8n-nodes-base.cron",
      "typeVersion": 1,
      "position": [
        -800,
        -340
      ]
    },
    {
      "parameters": {
        "url": "https://www.itworld.co.kr/news/feed/",
        "options": {}
      },
      "id": "a39f3805-5508-4bad-b2e9-0330e191c567",
      "name": "itworld RSS1",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1,
      "position": [
        -580,
        -220
      ]
    },
    {
      "parameters": {
        "url": "https://github.blog/changelog/label/copilot/feed/",
        "options": {}
      },
      "id": "47d1f22e-7fc6-4d46-aa00-4d8b3ffc85db",
      "name": "github copilot RSS1",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1,
      "position": [
        -580,
        -380
      ]
    },
    {
      "parameters": {
        "url": "https://www.cio.com/kr/feed/",
        "options": {
          "ignoreSSL": false
        }
      },
      "id": "316cab87-3d14-46e3-8cf3-3194676dbe33",
      "name": "cio RSS1",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1,
      "position": [
        -580,
        -60
      ]
    },
    {
      "parameters": {
        "url": "https://yozm.wishket.com/magazine/feed/",
        "options": {
          "ignoreSSL": false
        }
      },
      "id": "62f90d7b-91a2-4698-b0d0-8273144fa7a0",
      "name": "\uc694\uc998 RSS",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1,
      "position": [
        -580,
        80
      ]
    },
    {
      "parameters": {
        "url": " http://news.hada.io/rss/news",
        "options": {
          "ignoreSSL": false
        }
      },
      "id": "34ccc650-7fa7-462c-bb6f-02a00770d487",
      "name": "geek news RSS",
      "type": "n8n-nodes-base.rssFeedRead",
      "typeVersion": 1,
      "position": [
        -580,
        240
      ]
    }
  ],
  "connections": {
    "Code": {
      "main": [
        [
          {
            "node": "Append a block",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\ucd5c\uc885 \uacb0\uacfc \uc815\ub9ac": {
      "main": [
        [
          {
            "node": "Code",
            "type": "main",
            "index": 0
          },
          {
            "node": "Create a database page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "LLM \uc694\uc57d": {
      "main": [
        [
          {
            "node": "\ucd5c\uc885 \uacb0\uacfc \uc815\ub9ac",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\ud544\ub4dc \uc815\ub9ac \ubc0f \ucd94\ucd9c": {
      "main": [
        [
          {
            "node": "LLM \uc694\uc57d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\uc624\ub298 \ub0a0\uc9dc \ud544\ud130\ub9c1": {
      "main": [
        [
          {
            "node": "\ud544\ub4dc \uc815\ub9ac \ubc0f \ucd94\ucd9c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\ub9e4\uc2dc\uac04 \uc2e4\ud589": {
      "main": [
        [
          {
            "node": "geek news RSS",
            "type": "main",
            "index": 0
          },
          {
            "node": "\uc694\uc998 RSS",
            "type": "main",
            "index": 0
          },
          {
            "node": "cio RSS1",
            "type": "main",
            "index": 0
          },
          {
            "node": "itworld RSS1",
            "type": "main",
            "index": 0
          },
          {
            "node": "github copilot RSS1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "github copilot RSS1": {
      "main": [
        [
          {
            "node": "\uc624\ub298 \ub0a0\uc9dc \ud544\ud130\ub9c1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cio RSS1": {
      "main": [
        [
          {
            "node": "\uc624\ub298 \ub0a0\uc9dc \ud544\ud130\ub9c1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "itworld RSS1": {
      "main": [
        [
          {
            "node": "\uc624\ub298 \ub0a0\uc9dc \ud544\ud130\ub9c1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "\uc694\uc998 RSS": {
      "main": [
        [
          {
            "node": "\uc624\ub298 \ub0a0\uc9dc \ud544\ud130\ub9c1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "geek news RSS": {
      "main": [
        [
          {
            "node": "\uc624\ub298 \ub0a0\uc9dc \ud544\ud130\ub9c1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1",
    "callerPolicy": "workflowsFromSameOwner"
  },
  "versionId": "441ac872-aa8c-49fd-80a1-f62b7dafdbde",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "id": "kWKEEJSXtuKUwqhk",
  "tags": []
}