{
  "name": "Claude runner example",
  "nodes": [
    {
      "parameters": {},
      "id": "11111111-1111-1111-1111-111111111111",
      "name": "When clicking Test",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        240,
        300
      ]
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "a1",
              "name": "prompt",
              "type": "string",
              "value": "In one sentence, explain why running n8n's LLM node uses API billing but calling the claude CLI uses subscription billing."
            }
          ]
        },
        "options": {}
      },
      "id": "22222222-2222-2222-2222-222222222222",
      "name": "Set prompt",
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        460,
        300
      ]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "http://claude-runner:8080/run",
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "x-runner-token",
              "value": "change-me-to-a-long-random-secret"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={{ { \"prompt\": $json.prompt } }}",
        "options": {}
      },
      "id": "33333333-3333-3333-3333-333333333333",
      "name": "Call Claude runner",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        680,
        300
      ]
    }
  ],
  "connections": {
    "When clicking Test": {
      "main": [
        [
          {
            "node": "Set prompt",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set prompt": {
      "main": [
        [
          {
            "node": "Call Claude runner",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {},
  "active": false
}