Publish and install templates#
This page covers the workspace side of the marketplace: starting from a built-in agent, publishing an agent or a flow for the rest of your organisation, installing a template, and updating what you installed. Approving publications and the organisation-wide view are in Agent governance.
Before you begin#
- The workspace's editor or admin role to publish and install.
- For the API:
ASTRA_TOKENand the console API,$ASTRA_URL/api/v1(see REST API). The CLI has no marketplace commands.
Start from a built-in agent#
Open Anemoi → Marketplace. Under Built in, each starter shows what it does and the services it connects to. Start from it opens New agent filled in: choose the model and the credentials, adjust, and create it. The same starters are offered under Start from in New agent.
GET $WS/agent-templates lists them under starters, with their
instructions, connections, access levels and sandbox.
Publish an agent or a flow#
- On the agent's (or flow's) page press Publish.
- Title, Description, Tags, Icon (initials), Version (the current one by default) and What changed.
- Offered to: the whole organisation, or named workspaces.
- Publish. If the organisation requires approval and you are not an organisation admin, the version waits for an admin; you are told when it is approved or rejected, with the reason.
$ curl -sS -X POST "$ASTRA_URL/api/v1/orgs/acme/workspaces/research/marketplace/publish" \
-H "Authorization: Bearer $ASTRA_TOKEN" -H "Content-Type: application/json" \
-d '{"cluster": "main", "kind": "agent", "name": "researcher", "title": "Web researcher (sourced)",
"description": "Answers in five bullet points, each with its source.", "tags": ["research"],
"notes": "First version.", "visibility": "org"}'
201 with the template and the version. To publish a new version of
an existing template, add "template": "<slug>"; a new template's slug
is slug, or the name (lowercase letters, digits and -, 2 to 60).
visibility is org or workspaces (with workspaces: [slugs]).
The template keeps the version's specification with names local to your workspace, and lists what it references — credentials, deployments, agents, flows, drives — as requirements. A specification that looks like it holds a secret value is refused.
Install a template#
- In Anemoi → Marketplace, under From your organisation, search by name, Agents or Flows, or tag.
- Press Install, choose the Version and the name it takes (As), and bind each requirement to a name of your workspace (Names what, in its workspace): your GitHub credential, your deployment, your drive.
- Press Install. The agent or flow is made in your workspace, with the same checks as making it by hand.
$ curl -sS -X POST "$ASTRA_URL/api/v1/orgs/acme/workspaces/support/marketplace/web-researcher-sourced/install" \
-H "Authorization: Bearer $ASTRA_TOKEN" -H "Content-Type: application/json" \
-d '{"cluster": "main", "name": "researcher", "bindings": {"deployments": {"chat": "support-chat"}}}'
bindings maps each requirement's name in the template to a name in
your workspace, under credentials, deployments, agents, flows
and drives; every requirement must be bound. GET
$ASTRA_URL/api/v1/orgs/{org}/workspaces/{ws}/marketplace lists what
you may install.
Installing over an agent or flow that exists is refused with 409
ALREADY_EXISTS, unless you update it.
Take an update#
A template you installed shows when a newer version is published. Update installs it as a new version of your agent or flow — current unless you say otherwise; with an evaluation gate, it must pass first.
$ curl -sS "$ASTRA_URL/api/v1/orgs/acme/workspaces/support/marketplace/installs" -H "Authorization: Bearer $ASTRA_TOKEN" \
| jq '.items[] | {template, latest_version, update_available}'
$ curl -sS -X POST "$ASTRA_URL/api/v1/orgs/acme/workspaces/support/marketplace/web-researcher-sourced/install" \
-H "Authorization: Bearer $ASTRA_TOKEN" -H "Content-Type: application/json" \
-d '{"cluster": "main", "name": "researcher", "update": true, "current": false, "bindings": {"deployments": {"chat": "support-chat"}}}'