Cron & triggers
Run it weekdays at 9, on a webhook, on demand, or from another workflow. The schedule lives in the file.
Open source · Long-running · Any model
Just code. Runs as long as the work takes. Any trigger, any model, your infrastructure or ours.
The platform
Scheduling, long-running execution, secrets, observability, and governance — integrated so a workflow is just the file that does the work.
Run it weekdays at 9, on a webhook, on demand, or from another workflow. The schedule lives in the file.
Name a model per agent() call, bring your own key, or let Boardwalk route it. No API key required.
Watch every run stream live. Every phase, agent turn, and output is kept in the run record.
Secrets resolve in deterministic code and are redacted from model context, so prompt injection can't reach them.
Holds a real process through sleeps and waits — minutes or hours, locals intact. No step functions, no checkpoints, no 15-minute Lambda ceiling.
Orgs, roles, and an audit trail from day one. Share a run with a link.
How it works
No YAML, no node editor. The meta literal is the contract: schedule, secrets, budget. The rest of the file is just the script that runs.
import { phase, agent, output, secrets } from "@boardwalk-labs/workflow";
export const meta = {
slug: "morning-digest",
title: "Morning Digest",
triggers: [{ kind: "cron", expr: "0 9 * * 1-5" }],
permissions: { secrets: [{ name: "GITHUB_TOKEN" }] },
};
phase("Fetch issues");
// deterministic code holds the secret;
// the model never sees its value
const token = await secrets.get("GITHUB_TOKEN");
const res = await fetch("https://api.github.com/issues", {
headers: { Authorization: `Bearer ${token}` },
});
const issues = await res.json();
phase("Summarize");
const digest = await agent(
`Write a morning digest of these issues:
${JSON.stringify(issues)}`,
);
output(digest);Real TypeScript with your editor, your packages, your tests. agent() calls any model. Name it per call, or let Boardwalk route it. Iterate with boardwalk dev as you go.
boardwalk deploy ships the file; boardwalk run triggers one right now and streams the result back to your terminal.
Cron fires, the workflow holds its process as long as the work takes. Live tail while it runs, full history and notifications after.
Open source
The SDK, CLI, manifest spec, and single-node runtime are Apache-2.0 and MIT on GitHub. Audit everything, run it on your own hardware, leave anytime. Boardwalk has to win on convenience, never on lock-in.
Get started
Deploy and you don't even need an API key. Boardwalk routes each agent() call to a model, and a run costs a flat, predictable unit. Free to start.