fix: enforce minimum 4GB RAM for openclaw on DigitalOcean (#2597)

openclaw-plugins OOMs on s-2vcpu-2gb (2GB) droplets during config
loading. Auto-upgrade to s-2vcpu-4gb when no custom size is set.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Ahmed Abushagur 2026-03-13 14:47:24 -07:00 committed by GitHub
parent 223922eff4
commit 0b5c702b71
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 12 additions and 1 deletions

View file

@ -1,6 +1,6 @@
{
"name": "@openrouter/spawn",
"version": "0.17.11",
"version": "0.17.12",
"type": "module",
"bin": {
"spawn": "cli.js"

View file

@ -25,6 +25,11 @@ import {
waitForSshOnly,
} from "./digitalocean";
/** Agents that need more than the default 2GB RAM (e.g. openclaw-plugins OOMs on 2GB) */
const AGENT_MIN_SIZE: Record<string, string> = {
openclaw: "s-2vcpu-4gb",
};
/** DO marketplace image slugs — hardcoded from vendor portal (approved 2026-03-13) */
const MARKETPLACE_IMAGES: Record<string, string> = {
claude: "openrouter-spawnclaude",
@ -69,6 +74,12 @@ async function main() {
},
async promptSize() {
dropletSize = await promptDropletSize();
// Enforce minimum size for agents that need more RAM (e.g. openclaw-plugins OOMs on 2GB)
const minSize = AGENT_MIN_SIZE[agentName];
if (minSize && (!dropletSize || dropletSize === "s-2vcpu-2gb")) {
dropletSize = minSize;
logInfo(`Using ${minSize} (minimum for ${agentName})`);
}
region = await promptDoRegion();
},
async createServer(name: string) {