npx skills add ...
npx skills add nodeops-app/skills --skill createos-deploy
Deploy code to CreateOS through the NodeOps MPP Gateway. Use when a user wants to ship an application, inspect a CreateOS payment quote, pay with USDC through native MPP or x402, or check a deployment created by the gateway.
npx skills add nodeops-app/skills --skill createos-deploy
Use the gateway's wallet-authenticated HTTP flow. No browser session or OAuth is required.
Default gateway: https://mpp-createos.nodeops.network
Prefer the bundled script because it preserves the exact deployment body across the payment retry, filters secrets from uploads, uses fresh auth nonces, and verifies the final endpoint.
Provide PRIVATE_KEY in the process environment or in a .env beside this skill. Never place it in the project being uploaded. Set CREATEOS_GATEWAY to test another gateway.
GET /agent/projects only lists your own projects, so it cannot detect a name another account holds.5xx on POST /agent/deploy is usually that collision rather than a gateway outage. Treat it as a name conflict first and retry with a fresh suffix; the gateway does not return 409 for names held by other accounts.POST /agent/deploy may immediately deploy when the wallet has enough unused credits. Quote-only mode prevents a new payment, but it cannot prevent this credit-funded behavior because the API has no separate quote endpoint.--yes, stop after presenting the selected protocol, network, recipient, and USDC amount.402 headers as authoritative. Do not hard-code a default payment chain from discovery metadata.Authorization: Payment ... and PAYMENT-SIGNATURE.Native MPP is the default protocol:
x402 is optional:
PAYMENT-REQUIRED.accepts.amount values are atomic token units. The wire schema does not carry decimals; use trusted local asset metadata.The gateway currently models USDC on all supported chains. Always accept only a known chain ID and exact known token contract.
port, and validate the project name before any deploy request. Append a random suffix to the unique name; keep the clean name as the display name.GET /agent/projects to detect an existing name and show active projects whose runtime could be affected by shared credits. This check covers your wallet only, so the suffix stays mandatory.POST /agent/deploy with fresh wallet-auth headers and no payment credential.200, deployment has already started using credits.402, inspect WWW-Authenticate for native MPP and PAYMENT-REQUIRED for x402. Select only the user-approved protocol and an advertised chain with sufficient USDC.Authorization or PAYMENT-SIGNATURE.Payment-Receipt and PAYMENT-RESPONSE values in error reporting.ready or failed, with a fresh auth nonce each time.ready is the platform's status, not the container's: the app still has to boot and bind the port, so the first probes routinely return 404 or refuse the connection. Probe every ten seconds for up to two minutes and only judge the port after that. A 404 that survives the whole window can be the app's real answer at /; no answer at all points at the wrong --port.Read references/api.md when implementing the flow without the bundled script or diagnosing a gateway response.