{"id":9496,"date":"2026-07-03T04:01:40","date_gmt":"2026-07-03T04:01:40","guid":{"rendered":"https:\/\/www.hostinger.com\/blog\/?p=9496"},"modified":"2026-07-03T04:02:51","modified_gmt":"2026-07-03T04:02:51","slug":"testing-ai-managed-vps","status":"publish","type":"post","link":"https:\/\/www.hostinger.com\/blog\/testing-ai-managed-vps","title":{"rendered":"I tested AI-managed VPS without any Linux experience \u2013 here&#8217;s how it went"},"content":{"rendered":"<p>Hosting a website or application on a virtual private server (VPS) has long been associated with needing to &ldquo;know Linux.&rdquo; It&rsquo;s the kind of server that traditionally requires a certain level of technical knowledge, which can be intimidating for many people who want the extra power and flexibility.<\/p><p>I&rsquo;m one of those people. My Linux experience is close to zero &ndash; I&rsquo;ve never touched a command line to manage a server, and terms like &ldquo;root access&rdquo; or &ldquo;sudo&rdquo; have always felt like someone else&rsquo;s job to understand.&nbsp;<\/p><p>Our VPS team set out to challenge that idea by integrating an AI assistant into VPS management. Behind the stack is Kodee, our in-house AI assistant powering Hostinger&rsquo;s AI-managed VPS, which operates in two ways depending on the user&rsquo;s request.<\/p><p>First, it can generate what we need based on our request, whether that&rsquo;s a command, a configuration file, or an explanation. Second, it connects directly to our VPS via the Model Context Protocol (MCP), allowing it to inspect our server&rsquo;s live state, diagnose issues, and run tasks on the machine itself rather than just telling us what to do.<\/p><figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"Everything YOU Can Do with an AI-Managed VPS\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/X9hkTiPGy1M?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure><p>\n\n\n\n  <div class=\"youtube-shortcode\">\n    <div class=\"row\">\n      <div class=\"col-7 col-sm-8 d-flex align-items-center\">\n        <img decoding=\"async\" class=\"channel-logo\" src=\"https:\/\/www.hostinger.com\/blog\/wp-content\/themes\/blogthemeuplift\/public\/images\/youtube-channels\/hostinger-academy.jpg\" alt=\"youtube channel logo\">\n        <div class=\"d-flex flex-column justify-content-between\">\n          <span class=\"slogan d-none d-sm-block\">Subscribe For more educational videos!<\/span>\n          <span class=\"channel-name\">Hostinger Academy<\/span>\n                    <\/div>\n      <\/div>\n      <div class=\"col-5 col-sm-4 d-flex align-items-center justify-content-end\">\n          <a class=\"subscribe-button\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" href=\"http:\/\/www.youtube.com\/channel\/UCbNIC-svDbtUOH2qsLnPQPg?sub_confirmation=1\">\n            <img decoding=\"async\" src=\"https:\/\/www.hostinger.com\/blog\/wp-content\/themes\/blogthemeuplift\/public\/images\/icons\/youtube.svg\" alt=\"subscribe\">\n            <span>Subscribe<\/span>\n          <\/a>\n      <\/div>\n    <\/div>\n  <\/div>\n\n    \n\n\n\n<\/p><p>I realized I was the perfect target user to put this to the test. So I set out to replace the Docker-based application on my VPS test account with a Ghost blog &ndash; with Kodee doing the heavy lifting.<\/p><p>I documented my setup process with Kodee heavily involved at every step. Along the way, you&rsquo;ll see where it excelled and where I still needed to step in.<\/p><h2 class=\"wp-block-heading\" id=\"h-switching-the-application-on-my-vps\">Switching the application on my VPS<\/h2><p>The first thing I wanted to do was replace the application already running on my VPS with Ghost. I simply asked Kodee to switch my current setup to a Ghost installation.<\/p><p>Rather than leaving me to figure it out on my own, Kodee generated a clear, step-by-step guide that walked me through the process safely.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a4756c44d3e1\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a4756c44d3e1\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"707\" height=\"904\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-to-remove-os-panel.png\/public\" alt=\"Kodee chat window with an instruction to replace a VPS OS and application\" class=\"wp-image-9505\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-to-remove-os-panel.png\/w=707,fit=scale-down 707w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-to-remove-os-panel.png\/w=235,fit=scale-down 235w\" sizes=\"(max-width: 707px) 100vw, 707px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p>Kodee explained that switching to Ghost would require a full OS reinstall through hPanel &ndash; a destructive action that would wipe my existing data and snapshots.&nbsp;<\/p><p>That&rsquo;s not something Kodee performs directly, and honestly, it&rsquo;s not something you&rsquo;d want an AI agent doing on your behalf without you fully in the loop.<\/p><p>I simply followed the steps, and Ghost was installed after about 10 minutes.<\/p><h2 class=\"wp-block-heading\" id=\"h-running-a-malware-scan\">Running a malware scan<\/h2><p>As I explored the VPS dashboard, I noticed a purple prompt to install a malware scanner. I clicked <strong>Install<\/strong>, and it was set up in seconds. Once it was ready, I tried asking Kodee to scan my VPS for malware out of curiosity.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a4756c44de88\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a4756c44de88\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"710\" height=\"448\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-window-for-scanning-malware.png\/public\" alt=\"Kodee chat window with an instruction to scan malware on a VPS\" class=\"wp-image-9506\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-window-for-scanning-malware.png\/w=710,fit=scale-down 710w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-window-for-scanning-malware.png\/w=300,fit=scale-down 300w\" sizes=\"(max-width: 710px) 100vw, 710px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p>It handled the scan from start to finish without any extra input from me. The results came back clean, which wasn&rsquo;t surprising given that the site was still brand new. Even so, seeing that conclusion backed by an actual scan rather than an assumption gave me confidence.<\/p><h2 class=\"wp-block-heading\" id=\"h-securing-my-vps-with-a-firewall\">Securing my VPS with a firewall<\/h2><p>Malware protection is only one part of securing a VPS, so I wanted to see how Kodee handled another common task: setting up a firewall.<\/p><p>I opened the <strong>Firewall<\/strong> menu in my VPS dashboard and clicked the hPanel&rsquo;s <strong>Nudge<\/strong> icon (the three little stars) to explore the available actions. I selected <strong>Secure my VPS with firewall<\/strong>.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a4756c44e975\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a4756c44e975\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"2146\" height=\"770\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/secure-vps-with-firewall-nudge-on-hpanel.png\/w=1024,h=1024,fit=scale-down\" alt=\"&quot;Secure my VPS with firewall&quot; Nudge option on hPanel's VPS dashboard\" class=\"wp-image-9507\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/secure-vps-with-firewall-nudge-on-hpanel.png\/w=2146,fit=scale-down 2146w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/secure-vps-with-firewall-nudge-on-hpanel.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/secure-vps-with-firewall-nudge-on-hpanel.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/secure-vps-with-firewall-nudge-on-hpanel.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/secure-vps-with-firewall-nudge-on-hpanel.png\/w=1536,fit=scale-down 1536w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/secure-vps-with-firewall-nudge-on-hpanel.png\/w=2048,fit=scale-down 2048w\" sizes=\"(max-width: 2146px) 100vw, 2146px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p>Kodee first got back to me with a step-by-step explanation of how to configure the firewall manually. It then asked whether I wanted it to apply the configuration for me instead.<\/p><p>After I confirmed, Kodee paused once more before making any changes. It asked for my confirmation whilst explaining the action it would take on my server.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"710\" height=\"880\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-implementing-firewall.png\/public\" alt=\"Kodee chat window with an instruction to apply a firewall setup\" class=\"wp-image-9508\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-implementing-firewall.png\/w=710,fit=scale-down 710w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-implementing-firewall.png\/w=242,fit=scale-down 242w\" sizes=\"(max-width: 710px) 100vw, 710px\" \/><\/figure>\n<\/div><p>Once I confirmed that prompt, Kodee applied the firewall configuration successfully.<\/p><h2 class=\"wp-block-heading\" id=\"h-connecting-a-domain-name\">Connecting a domain name<\/h2><p>Normally, <a href=\"https:\/\/www.hostinger.com\/tutorials\/how-to-point-domain-to-vps\">connecting a domain name to a VPS<\/a> means logging in to your domain registrar, navigating to the DNS settings, updating the necessary records, and making sure everything points to your VPS correctly. I wanted to see how much of that Kodee could handle for me.&nbsp;<\/p><p>All I had to do was give Kodee my domain name and tell it where the domain was registered, since it needed both to complete the <a href=\"https:\/\/www.hostinger.com\/tutorials\/what-is-dns\">Domain Name System<\/a> (DNS) setup. I registered my domain with Hostinger, so Kodee could perform the steps directly, making the process straightforward. I assume the steps may differ slightly if yours is with another registrar.<\/p><p>Before making any changes, Kodee reviewed my existing DNS configuration and explained that it needed to remove the current records that would conflict with the new setup. It showed me exactly which records would be affected and asked for my confirmation before proceeding.<\/p><p>Once I approved that step, Kodee prepared the new DNS records needed to point my domain to the VPS. Again, it paused to explain the changes and asked for confirmation before updating anything.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a4756c44fcff\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a4756c44fcff\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"710\" height=\"992\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-pointing-dns.png\/public\" alt=\"Kodee chat window with an instruction to point a domain to a website\" class=\"wp-image-9509\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-pointing-dns.png\/w=710,fit=scale-down 710w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-pointing-dns.png\/w=215,fit=scale-down 215w\" sizes=\"(max-width: 710px) 100vw, 710px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p>After I confirmed, Kodee applied the new DNS configuration, and my domain was successfully connected to the Ghost site. It only took me two confirmation clicks.<\/p><h2 class=\"wp-block-heading\" id=\"h-installing-an-ssl-certificate\">Installing an SSL certificate<\/h2><p>With my domain connected, the next step was making sure the site could be accessed securely over HTTPS, which can be achieved by installing an <a href=\"https:\/\/www.hostinger.com\/tutorials\/what-is-ssl\">SSL<\/a> certificate.<\/p><p>Unlike managed web hosting, SSL isn&rsquo;t preconfigured on a self-managed VPS. Without it, browsers will warn visitors that the connection isn&rsquo;t secure &ndash; not exactly the first impression you want for a new website.<\/p><p>So I asked Kodee to set up SSL for my newly connected domain.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"708\" height=\"506\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-installing-ssl-certificate.png\/public\" alt=\"Kodee chat window with an instruction to install an SSL certificate\" class=\"wp-image-9510\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-installing-ssl-certificate.png\/w=708,fit=scale-down 708w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/kodee-chat-installing-ssl-certificate.png\/w=300,fit=scale-down 300w\" sizes=\"(max-width: 708px) 100vw, 708px\" \/><\/figure>\n<\/div><p>Kodee checked my Ghost configuration and identified the real issue: my installation was still pointed at the server&rsquo;s default hostname rather than my custom domain. That had to be fixed first.&nbsp;<\/p><p>It walked me through three steps I should do manually &ndash; updating Ghost to use my domain, restarting the application, and running Ghost&rsquo;s SSL setup command. Once those were done, Ghost CLI handled the certificate configuration automatically.<\/p><p>In this case, Kodee couldn&rsquo;t perform the SSL installation directly, but it diagnosed the problem correctly and got me to the right solution.<\/p><h2 class=\"wp-block-heading\" id=\"h-managing-day-to-day-server-maintenance\">Managing day-to-day server maintenance<\/h2><p>Getting Ghost up and running was only half the experience. The other half is keeping a VPS healthy day-to-day, like checking server performance and monitoring resource usage.<\/p><p>For those day-to-day tasks, I found hPanel&rsquo;s AI <strong>Nudges<\/strong> especially useful. Based on my server&rsquo;s current state, they surfaced recommendations for things like resource usage, connectivity, or outdated software.&nbsp;<\/p><p>Clicking a Nudge revealed a list of suggested questions I could send to Kodee. With a single click, the question was sent automatically, and Kodee retrieved my server&rsquo;s live metrics, explained what was happening in plain language, and guided me through the next steps.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a4756c450dba\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a4756c450dba\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"2014\" height=\"626\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/nudge-button-in-hpanel-vps-dashboard.png\/w=1024,h=1024,fit=scale-down\" alt=\"The Nudge button on a VPS dashboard on hPanel\" class=\"wp-image-9511\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/nudge-button-in-hpanel-vps-dashboard.png\/w=2014,fit=scale-down 2014w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/nudge-button-in-hpanel-vps-dashboard.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/nudge-button-in-hpanel-vps-dashboard.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/nudge-button-in-hpanel-vps-dashboard.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2026\/07\/nudge-button-in-hpanel-vps-dashboard.png\/w=1536,fit=scale-down 1536w\" sizes=\"(max-width: 2014px) 100vw, 2014px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p>That&rsquo;s another area where Kodee came in handy. Instead of digging through monitoring dashboards and trying to interpret unfamiliar metrics, I could simply ask questions to Kodee, which is already integrated into my VPS dashboard.<\/p><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/www.hostinger.com\/vps-hosting\"><img decoding=\"async\" width=\"2048\" height=\"600\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2023\/09\/VPS-hosting_in-text-banner-1.png\/public\" alt=\"\" class=\"wp-image-5493\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2023\/09\/VPS-hosting_in-text-banner-1.png\/w=2048,fit=scale-down 2048w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2023\/09\/VPS-hosting_in-text-banner-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2023\/09\/VPS-hosting_in-text-banner-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2023\/09\/VPS-hosting_in-text-banner-1.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/4\/2023\/09\/VPS-hosting_in-text-banner-1.png\/w=1536,fit=scale-down 1536w\" sizes=\"(max-width: 2048px) 100vw, 2048px\" \/><\/a><\/figure>\n<\/div><h2 class=\"wp-block-heading\" id=\"h-my-honest-take-about-the-overall-experience\">My honest take about the overall experience<\/h2><p>I started this experiment to find out whether I could confidently set up and manage a VPS by relying on Kodee throughout the entire process. A few conversations later, my Ghost blog was live.<\/p><p>Instead of jumping between documentation, tutorials, and a terminal full of commands, I could simply ask Kodee what I needed and learn what was happening as I went.<\/p><p>The learning curve hasn&rsquo;t disappeared, and that&rsquo;s not really the point. AI-managed VPS doesn&rsquo;t take control away from me. Kodee confirmed every action before making changes, and some things &ndash; like the OS reinstall &ndash; it won&rsquo;t do at all. The decisions stayed mine throughout.<\/p><p>What it does remove is much of the friction that comes with getting started &ndash; the documentation rabbit holes, the unfamiliar commands, the guesswork.<\/p><p>I described what I wanted to accomplish, Kodee helped with the technical execution, and I stayed in control of every important decision along the way.<\/p><p>If you&rsquo;ve been considering a VPS but kept putting it off because server management felt intimidating, this is exactly the kind of experience an AI-managed VPS was built for.<\/p><p>And if you&rsquo;re curious about how Kodee performs beyond my own experience, my teammate <a href=\"https:\/\/www.hostinger.com\/blog\/kodee-ai-managed-vps\">analyzed more than 914,000 customer conversations with Kodee on VPS<\/a>, exploring what it does well and where it still has room to improve.<\/p><p>For me, the biggest difference I felt from this experiment was that managing a VPS no longer felt intimidating.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hosting a website or application on a virtual private server (VPS) has long been associated with needing to &#8220;know Linux.&#8221; It&#8217;s the kind of server that traditionally requires a cer\u2026<\/p>\n","protected":false},"author":257,"featured_media":9504,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2417],"tags":[],"hashtags":[],"class_list":["post-9496","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-insights"],"hreflangs":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/posts\/9496","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/users\/257"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/comments?post=9496"}],"version-history":[{"count":1,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/posts\/9496\/revisions"}],"predecessor-version":[{"id":9513,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/posts\/9496\/revisions\/9513"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/media\/9504"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/media?parent=9496"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/categories?post=9496"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/tags?post=9496"},{"taxonomy":"hashtags","embeddable":true,"href":"https:\/\/www.hostinger.com\/blog\/wp-json\/wp\/v2\/hashtags?post=9496"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}