Canvas

The Canvas is where you draw what your organization runs and apply it as instances: an agent in the middle, connected to the context it reads and the services it uses. It shows the same drawing on a board and in a list, saves as you go and has undo.

Nodes

  • Agent: an instance of one of the agents (Deploy from git), with the shape and description of New instance.
  • App: a web app with a port, a worker with none, or a container of one of your own images, started by a command.
  • Postgres and Redis: a database and a cache, each an instance of its own, with a password made for your organization. They are marked Beta.
  • Model, Repository, Skills, MCP server, Tools and Host: what an agent reads and reaches, set as on New instance, on Skills and on Network. A Host node limits a host by method and path, and an MCP server node its tools, as call rules do.
  • Public URL: for an app that speaks http. It is dark, below.

An agent connects to a model, a repository, skills, MCP servers, tools, hosts, databases and apps; an app to a repository, hosts, databases and other apps; a Public URL to an app. Drag from one node to another, or pick the target in the node's panel. A connection that is not one says why. A canvas holds 40 nodes and 80 connections and belongs to the organization, not to a project; the instances it makes are not in a project.

An agent or app reaches a database or another app at an address on its own machine, in a variable: DATABASE_URL, REDIS_URL or NAME_URL. The password is in the instance's environment, which your API keys can read, so it separates the services of one organization from another and is not a secret from you. A database that has just started, or that a connection woke, can refuse its first connection for a moment: connect again.

Review and Apply

Nothing is written until you apply. Review turns the drawing into a list of steps, each named: an instance to create, to change, to recreate or to delete, with its Workspace and Gateway cv-NAME. Every object is checked before the first one is written, your quota is checked with it, and a drawing over it is refused with the numbers (the palette greys a node that would not fit). If a step fails, what the apply created is deleted again. One apply runs at a time, and only an owner or admin saves or applies. The canvas writes only what it made, marked poema-cloud/canvas, which poema get tasks shows, and never your keys, secrets, model keys or other Gateways. It does not adopt instances you made elsewhere.

What a recreate loses

The canvas cannot change a started instance in place. A change to one of its command, image, environment, repository, skills, servers or links recreates it: the instance is deleted and made again, and its files and running processes are lost; a database loses its data. Removing a node deletes its instance the same way. Every such step says "Deletes its files" or "Deletes its data" and waits for its box to be ticked; a step left unticked stays as it is.

Limits

  • Databases and apps count against the 3 instances you may run at once, your CPU and memory, and the 12 objects you may keep (Concepts): an agent with Postgres and Redis is three instances. Sessions end after 60 minutes, which suspends them; Start all resumes them.
  • An instance suspended for 14 days is deleted, and a database with it and its data. Databases are not backed up during the beta.

What is dark

  • Public URLs. No plan has them yet: a Public URL node is refused as not on your plan, and no instance is reachable from the internet.
  • Links between instances. Connecting to a database or an app needs service links on the platform's side, which the page checks. Until they are there, the palette and a connection say so, and none is written.

The other nodes work without either.