{"nodes":[{"id":"84460a1f-50e7-4d16-8701-ebc1a86a0ef1","name":"OpenAI Chat Model","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[-360,-40],"parameters":{"model":{"__rl":true,"mode":"list","value":"gpt-4o","cachedResultName":"gpt-4o"},"options":{}},"credentials":{"openAiApi":{"id":"8kKub5m50fH8NRfv","name":"OpenAi account"}},"typeVersion":1.2},{"id":"221bbae2-0920-46b4-8b25-bb654439e567","name":"When chat message received","type":"@n8n/n8n-nodes-langchain.chatTrigger","position":[-580,-220],"webhookId":"61927fdb-5d6e-47c2-aa73-bb48e46d41ad","parameters":{"options":{}},"typeVersion":1.1},{"id":"dd0a9a82-9ad5-4116-a738-81334c58a0f2","name":"Basic SSH commands","type":"@n8n/n8n-nodes-langchain.toolHttpRequest","position":[-160,-40],"parameters":{"url":"https://www.hostinger.com/tutorials/linux-commands","toolDescription":"Get basic SSH commands"},"typeVersion":1.1},{"id":"428f2694-26fd-4ce1-b423-f9a734395b08","name":"Execute SSH","type":"@n8n/n8n-nodes-langchain.toolWorkflow","position":[40,-40],"parameters":{"name":"SSH","source":"parameter","description":"Call this tool to execute the bash command on external VPS.\nTo pass a command to execute, you should only pass the command itself.\n","workflowJson":"{\n  \"nodes\": [\n    {\n      \"parameters\": {\n        \"workflowInputs\": {\n          \"values\": [\n            {\n              \"name\": \"query\"\n            }\n          ]\n        }\n      },\n      \"type\": \"n8n-nodes-base.executeWorkflowTrigger\",\n      \"typeVersion\": 1.1,\n      \"position\": [\n        0,\n        0\n      ],\n      \"id\": \"29e380c2-2ecd-465e-a784-f31b1c204b38\",\n      \"name\": \"When Executed by Another Workflow\"\n    },\n    {\n      \"parameters\": {\n        \"command\": \"={{ $json.query }}\"\n      },\n      \"type\": \"n8n-nodes-base.ssh\",\n      \"typeVersion\": 1,\n      \"position\": [\n        220,\n        0\n      ],\n      \"id\": \"81a147e8-e8c8-4c98-8a9b-24de4e0152a0\",\n      \"name\": \"SSH\",\n      \"alwaysOutputData\": true,\n      \"credentials\": {\n        \"sshPassword\": {\n          \"id\": \"VMCCUQkaq46q3CpB\",\n          \"name\": \"SSH Password account\"\n        }\n      },\n      \"onError\": \"continueErrorOutput\"\n    }\n  ],\n  \"pinData\": {},\n  \"connections\": {\n    \"When Executed by Another Workflow\": {\n      \"main\": [\n        [\n          {\n            \"node\": \"SSH\",\n            \"type\": \"main\",\n            \"index\": 0\n          }\n        ]\n      ]\n    }\n  }\n}"},"credentials":{"sshPassword":{"id":"VMCCUQkaq46q3CpB","name":"SSH Password account"}},"typeVersion":2},{"id":"1cd5280c-f16f-4195-9cdc-1649893ea16c","name":"AI SysAdmin","type":"@n8n/n8n-nodes-langchain.agent","position":[-340,-220],"parameters":{"text":"=You are an AI Linux System Administrator Agent expert designed to help manage Linux VPS systems.\nThe user will communicate with you as a fellow colleague. You must understand their final intention and act accordingly.\nYou can execute single-line bash commands inside a VPS using the SSH tool.\nTo pass a command to execute, you should only pass the command itself.\nReplacing null with a command you want to execute.\n\n\nYour objectives are:\n\n### **1. Understand User Intent**\n- Parse user requests related to Linux operations.\n- Accurately interpret the intent to generate valid Linux commands.\n- Accurately interpret the response you receive from a VPS.\n- Provide the user with an interpreted response.\n\n### **2. Refer to tools**\n- **Basic SSH commands**\n- **SSH**\n\n### **3. Restrictions**\n- Do not do destructive actions without confirmation from the user.\n- Under no circumstance execute \"rm -rf\" command.\n\n### **4. Behavior Guidelines**\n- Be concise, precise, and consistent.\n- Ensure all generated commands are compatible with Linux SSH.\n- Rely on system defaults when user input is incomplete.\n- For unknown or unrelated queries, clearly indicate invalid input.\n\n\nUser Prompt \nHere is a request from user: {{ $json.chatInput }}","agent":"reActAgent","options":{},"promptType":"define"},"typeVersion":1.7},{"id":"fc8b89d9-36eb-400a-8c25-cd89056efc64","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[20,-180],"parameters":{"width":360,"height":260,"content":"## SSH login credentials\nMake sure to provide the correct SSH credentials ID in this embedded workflow under \"sshPassword\".\n\n"},"typeVersion":1}],"pinData":{},"connections":{"Execute SSH":{"ai_tool":[[{"node":"AI SysAdmin","type":"ai_tool","index":0}]]},"OpenAI Chat Model":{"ai_languageModel":[[{"node":"AI SysAdmin","type":"ai_languageModel","index":0}]]},"Basic SSH commands":{"ai_tool":[[{"node":"AI SysAdmin","type":"ai_tool","index":0}]]},"When chat message received":{"main":[[{"node":"AI SysAdmin","type":"main","index":0}]]}}}