Groundfloor Docs

Deploy with agents

Agent rules for Coderunner — use gf deploy or MCP, never create an App for a workload.

Coderunner workloads (function, job, schedule, service / Deployment) are deployed with the gf CLI. Use @groundfloorcloud/mcp (docs_get id coderunner) to inspect types and packaging, then run the suggested gf command. Do not create a Groundfloor App for that.

Full decision table (workloads vs Shell apps vs standalone wrap): Deploy with agents.

Agent rules (workload)

  1. Call docs_get id coderunner (or read workspace_context.coderunner_howto) before create.
  2. App authentication is optional (end-user login). Mode none is valid for create/deploy.
  3. Prefer MCP workspace_context / suggest_cli, then gf deploy, else Control Plane REST /v1/workspaces/{id}/coderunners.
  4. A human must gf login once. MCP uses that session. Do not paste JWTs into mcp.json. Scripts may use GROUNDFLOOR_TOKEN=$(gf token).
  5. Never POST …/apps with app_kind=coderunner.
  6. Reuse an existing coderunner when the slug already exists.
  7. service is also called Deployment. The ZIP must include a root Dockerfile.
  8. Node packages need "scripts": { "start": "…" } and must listen on PORT/8080.
  9. Strip .git, node_modules, and .env* from upload ZIPs.
  10. Local live data: eval "$(gf env)" and call Control Plane vault/files/secrets with gf token, then gf deploy.
  11. After success, report coderunner_id, version_id, deployment_id, deployment_url. If deployment status=4, read Process Log (runner_id = deployment id).
gf login
gf workspaces use <workspace-uuid>
gf deploy
gf coderunner run -c <id|slug> --payload '{"hello":"agent"}'

Production Control Plane: https://platform.groundfloor.cloud.

If the project is a Shell starter-kit (groundfloor.manifest.json, npm run release), stop and follow Shell app publish — gf apps publish, not gf deploy.

On this page