Skip to main content
A skill package is a waterr-skill.json manifest. Installing it creates everything the agent needs — a meeting skill, its tools, its screen renderers and a webhook endpoint for the events it cares about — as ordinary rows your workspace already knows how to run. Attach the install to a scenario and the agent has the skill on its next call.

The manifest

Every limit is the one the hand-editing API enforces: trigger ≤ 500 chars, instructions ≤ 8,000, ≤ 20 tools, ≤ 10 renderers, https URLs only, 64 KB total. Validation errors come back as a list in errors.

What an install creates

Webhook-mode tools get a signing secret each, returned once as tool_signing_secrets. Rows created by an install carry managed_by_install_id and the normal edit/delete endpoints answer 409 managed_resource for them — change them by upgrading the package.

Install response

Lifecycle

Acting as the install

POST /v1/skill-installs/{id}/keys mints a wsk_live_… key, shown once. It is accepted by the Meeting Actions API as a bearer and acts as the install:
  • only on meetings whose scenario has the install attached (404 otherwise);
  • only the action types the manifest’s scopes grant (actions:context, actions:message, actions:say, actions:stage) — 403 scope_denied otherwise;
  • stage.* only on the install’s own renderers.
Actions it pushes are recorded with actor: "skill:<package_id>". Revoke a key with DELETE /v1/skill-installs/{id}/keys/{key_id}.

Not yet

  • A catalog: packages are registered per workspace; sharing one between workspaces means registering it in each.
  • Delivering config and secrets to your tool-call webhooks automatically — read them back from GET /v1/skill-installs/{id} for now (secrets are never returned; secret_names tells you which are set).
  • Sharing config and secrets with your own tool webhooks — for now your backend reads config from the install and holds its own secrets.
In Studio, installs live under Developer → Skills → Installed packages: install from a URL or pasted manifest, flip which scenarios it runs on, mint keys, upgrade, pause and uninstall.