|
| 1 | +--- |
| 2 | +prev: |
| 3 | + text: Tools |
| 4 | + link: /user-guide/tools |
| 5 | +next: |
| 6 | + text: Migrating from other platforms |
| 7 | + link: /user-guide/migrating-from-other-platforms |
| 8 | +description: Deploy and manage Deploio apps using plain English in Claude Code. No CLI commands to memorise. |
| 9 | +--- |
| 10 | + |
| 11 | +# Claude Code Plugin |
| 12 | + |
| 13 | +The **deploio-claude-plugin** lets you deploy and manage your apps on Deploio through plain-language prompts in [Claude Code](https://claude.ai/code). No need to memorise `nctl` commands. Just describe what you want and Claude handles the rest. |
| 14 | + |
| 15 | +``` |
| 16 | +Deploy my Rails app to Deploio |
| 17 | +``` |
| 18 | + |
| 19 | +``` |
| 20 | +My app is throwing 503s, what's wrong? |
| 21 | +``` |
| 22 | + |
| 23 | +``` |
| 24 | +Add a PostgreSQL database and wire it up |
| 25 | +``` |
| 26 | + |
| 27 | +Claude Code picks the right skill automatically, confirms its plan with you, and runs `nctl` on your behalf. Destructive operations always require explicit confirmation. |
| 28 | + |
| 29 | +::: info Community tool |
| 30 | +This plugin is created and maintained by [Renuo](https://renuo.ch). Source code is available on [GitHub](https://github.com/renuo/deploio-claude-plugin). |
| 31 | +::: |
| 32 | + |
| 33 | +## Prerequisites |
| 34 | + |
| 35 | +1. **Claude Code** installed ([get it here](https://claude.ai/code)) |
| 36 | +2. **nctl v1.16.0+** installed and authenticated: |
| 37 | + |
| 38 | +```bash |
| 39 | +# macOS |
| 40 | +brew install ninech/tap/nctl |
| 41 | + |
| 42 | +# Linux: download from https://github.com/ninech/nctl/releases/latest |
| 43 | +``` |
| 44 | + |
| 45 | +```bash |
| 46 | +nctl auth login # opens browser OAuth |
| 47 | +nctl auth whoami # verify access |
| 48 | +``` |
| 49 | + |
| 50 | +## Installation |
| 51 | + |
| 52 | +Run this from your project directory (or anywhere for a global install): |
| 53 | + |
| 54 | +```bash |
| 55 | +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/renuo/deploio-claude-plugin/main/install.sh)" |
| 56 | +``` |
| 57 | + |
| 58 | +The installer asks whether to install **globally** (`~/.claude/`) or **per-project** (`./.claude/`). For non-interactive use: |
| 59 | + |
| 60 | +```bash |
| 61 | +DEPLOIO_INSTALL_SCOPE=global /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/renuo/deploio-claude-plugin/main/install.sh)" |
| 62 | +# or |
| 63 | +DEPLOIO_INSTALL_SCOPE=project /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/renuo/deploio-claude-plugin/main/install.sh)" |
| 64 | +``` |
| 65 | + |
| 66 | +**To update:** re-run the same install command. It overwrites with the latest version. |
| 67 | + |
| 68 | +**To uninstall:** |
| 69 | + |
| 70 | +```bash |
| 71 | +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/renuo/deploio-claude-plugin/main/uninstall.sh)" |
| 72 | +``` |
| 73 | + |
| 74 | +## Skills |
| 75 | + |
| 76 | +The plugin installs five skills that Claude selects automatically from your prompt. You never need to invoke them by name. |
| 77 | + |
| 78 | +| Skill | What it does | Example triggers | |
| 79 | +|---|---|---| |
| 80 | +| **deploio-deploy** | First-time deployment from a git repo to a live HTTPS URL | "Deploy my app", "Host on Deploio", "Create a Deploio app" | |
| 81 | +| **deploio-manage** | Day-to-day operations on running apps | "Scale to 3 replicas", "Add env var", "Tail the logs", "Roll back" | |
| 82 | +| **deploio-debug** | Autonomous diagnosis: pulls logs, inspects releases, proposes a fix | "App is throwing 503s", "Deploy failing", "Why is my app crashing?" | |
| 83 | +| **deploio-provision** | Provision backing services (databases, Redis, object storage) and wire them to your app | "Add Postgres", "I need Redis", "Set up S3 storage" | |
| 84 | +| **deploio-ci-cd** | Generate CI/CD pipeline config and a Deploio service account | "Set up GitHub Actions", "Auto-deploy on push", "Add a staging environment" | |
| 85 | + |
| 86 | +### First deploy: `deploio-deploy` |
| 87 | + |
| 88 | +Detects your framework automatically and configures sensible defaults. Presents a plan card before touching anything. |
| 89 | + |
| 90 | +Supported frameworks: **Rails, Node.js, Django, Flask/FastAPI, PHP/Laravel, Go, Docker** |
| 91 | + |
| 92 | +Example prompts: |
| 93 | +``` |
| 94 | +Deploy my Rails app to Deploio |
| 95 | +Host my Next.js app on Deploio |
| 96 | +``` |
| 97 | + |
| 98 | +### Day-to-day management: `deploio-manage` |
| 99 | + |
| 100 | +Covers everything once your app is running. Infers your app name and project from the git remote before asking. |
| 101 | + |
| 102 | +``` |
| 103 | +Scale my app to 3 replicas |
| 104 | +Add DATABASE_URL env var |
| 105 | +Tail the logs |
| 106 | +Open a Rails console |
| 107 | +Roll back to the last working version |
| 108 | +Add a Sidekiq worker |
| 109 | +Set up a custom domain |
| 110 | +Restart the app |
| 111 | +``` |
| 112 | + |
| 113 | +### Debugging: `deploio-debug` |
| 114 | + |
| 115 | +Runs a parallel investigation across build logs, release history, and runtime stats without waiting for you to describe symptoms in detail. Reports a plain-language diagnosis and offers to apply the fix directly. |
| 116 | + |
| 117 | +``` |
| 118 | +My app keeps crashing after the latest deploy |
| 119 | +Getting 503 bad gateway errors |
| 120 | +Build is failing, what's wrong? |
| 121 | +App is using too much memory |
| 122 | +``` |
| 123 | + |
| 124 | +### Backing services: `deploio-provision` |
| 125 | + |
| 126 | +Creates the service, extracts credentials, and injects the correct environment variables into your app. Verifies connectivity after wiring. |
| 127 | + |
| 128 | +| Service | Injected env var(s) | |
| 129 | +|---|---| |
| 130 | +| PostgreSQL (Economy / Business) | `DATABASE_URL` | |
| 131 | +| MySQL (Economy / Business) | `DATABASE_URL` | |
| 132 | +| Redis-compatible KVS | `REDIS_URL` | |
| 133 | +| OpenSearch | `OPENSEARCH_URL` | |
| 134 | +| S3-compatible Object Storage | `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION`, `S3_BUCKET`, `S3_ENDPOINT` | |
| 135 | + |
| 136 | +``` |
| 137 | +Add a PostgreSQL database and wire it up |
| 138 | +I need Redis for Sidekiq |
| 139 | +Set up S3-compatible object storage |
| 140 | +Add a Sidekiq worker |
| 141 | +``` |
| 142 | + |
| 143 | +### CI/CD pipeline: `deploio-ci-cd` |
| 144 | + |
| 145 | +Creates a Deploio service account and writes the workflow file for your CI platform, then guides you through adding the three required secrets. |
| 146 | + |
| 147 | +Supported platforms: **GitHub Actions, GitLab CI, CircleCI, Bitbucket Pipelines**, and any Debian/Ubuntu-based CI system. |
| 148 | + |
| 149 | +Patterns available: |
| 150 | +- **Single environment:** push to `main` to deploy |
| 151 | +- **Multi-environment:** `develop` to staging, `main` to production |
| 152 | +- **Per-PR preview environments:** app created on PR open, deleted on PR close |
| 153 | + |
| 154 | +``` |
| 155 | +Set up GitHub Actions to auto-deploy on push to main |
| 156 | +Add a staging environment |
| 157 | +Create per-PR preview apps on Deploio |
| 158 | +``` |
| 159 | + |
| 160 | +## Slash commands |
| 161 | + |
| 162 | +Two shortcut commands are available after installation: |
| 163 | + |
| 164 | +| Command | Effect | |
| 165 | +|---|---| |
| 166 | +| `/deploy` | Triggers the deploy skill directly | |
| 167 | +| `/debug` | Triggers the debug skill directly | |
| 168 | + |
| 169 | +## Safety |
| 170 | + |
| 171 | +- **Confirmation before destructive actions:** deleting apps, databases, or storage; pausing an app; running destructive database tasks (`db:drop`, `db:reset`) all require explicit user confirmation. |
| 172 | +- **Plan before action:** every skill describes what it will do before running any `nctl` command. |
| 173 | +- **Least privilege:** the CI/CD service account is project-scoped with minimal permissions. |
0 commit comments