Deploy workflow bundles to Libretto Cloud, then use the failure emails and debug tools when runs break.
Before you deploy
Libretto Cloud commands and API requests usehttps://api.libretto.sh. Issue an API key, then add it to your project .env file:
Expected deploy directory
cloud deploy uploads one package directory at a time. That directory must contain:
- A
package.json - An entry file for workflow discovery
- The workflow files you want to deploy
index.ts inside the directory you pass to deploy.
Recommended layout:
workflow(...). Then index.ts should export the workflows you want Libretto Cloud to discover:
workflow("...") call inside the file, not the filename or the export alias from index.ts.
If your workflows live in a package inside a monorepo, run cloud deploy against that package directory instead of the monorepo root.
The deploy command has two separate path concepts:
- The positional argument is the package directory to bundle and upload. That directory must contain
package.json. --entry-pointis the file inside that package directory that Libretto should use for workflow discovery.
my-automationsis the package directorysrc/workflows/check-eligibility.tsis the entry file relative tomy-automations
Deploy workflows
Usecloud deploy to upload a workflow bundle to Libretto Cloud:
.to containpackage.json./index.tsto be the deploy entry pointindex.tsto export the workflows that should be deployed
deploy is the source directory to package and upload. It is not the path to a workflow file.
If you want to deploy from a different entry file, keep the source directory as the package root and use --entry-point relative to that directory:
--auto-repair when failed jobs from this deployment should route to the autofix agent instead of the readonly debug agent.
Run a deployed workflow
After the deployment finishes, call the hosted jobs endpoint with the workflow name from your code. For example, if your workflow file looks like this:workflow: "check-eligibility". The params object must match the workflow input schema:
job_id immediately. The equivalent API request is:
workflow value must match the workflow name declared in code and discovered during deploy, not the deployment id, filename, or export alias.
Schedule a deployed workflow
Usecloud schedules create for recurring runs. The cron expression is standard 5-field cron, and the timezone defaults to UTC:
--params-file instead of --params when the workflow input is too large to keep inline.
Hosting options
Libretto Cloud is the managed path. If you would rather use a different browser or infrastructure provider, use the alternative providers docs instead:This page covers the managed hosted-platform flow. The alternative provider
pages are the right reference when you want a different managed browser
provider or want to own the runtime, scheduler, and secrets infrastructure
yourself.
Overview
Start with the high-level cloud workflow.
Authentication
Create accounts, join organizations, and issue API keys.
Billing
Manage plans and open the billing portal.
Observability and Debugging
Debug workflow failures and investigate hosted workflow runs.