Skip to main content

Documentation Index

Fetch the complete documentation index at: https://hastekit.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

Workflows are deterministic, versioned DAGs you build on a visual canvas. Drop in a trigger, chain connector actions, branch on conditions, run code, and (if you want) call an AI Agent as a node. Save it and the workflow can be invoked by another agent as a tool — composable automation without leaving the platform.

Anatomy

A workflow has four tabs at the top: General, Canvas, Versions, and Alias — mirroring the surfaces you already know from agents.

General

FieldDescription
Workflow NameRequired. Used as the tool name when the workflow is invoked from an agent.
DescriptionSurfaced as the tool description; also shown in lists.
RuntimeLocal runs the workflow in-process (fast, non-durable). Temporal runs each node as a durable activity — replay-safe, retries on failure, recovers after restarts. Pick Local for development, Temporal for production.

Canvas

The visual DAG editor. The right rail holds the node palette, grouped into three sections:
Agent traces

Triggers

Define how the workflow is started.
TriggerFires when
CronA configured cron schedule elapses.
Invoked by AgentAn AI Agent calls this workflow as a tool. The agent’s arguments are the workflow inputs.
GitHubA GitHub webhook event arrives (e.g. PR opened, issue commented). Multiple GitHub event types are supported.
Each workflow has exactly one trigger.

Nodes

The building blocks of the DAG.
NodePurpose
HTTP RequestMake an HTTP request — free-form or driven by a JSON schema.
CodeRun a snippet of JavaScript. Reads upstream outputs via {{node_id.field}}.
AI AgentRun an existing agent from your Agent Builder as a node. Inputs become the agent’s user message; outputs include the final response.
GmailSend, reply, list, draft messages.
JiraJQL search, create issue, comment, transition, assign.
Google CalendarList events, create events, send invites.
GitHubList PRs, review, merge, comment.
SlackPost messages, react, DM.
TelegramSend messages to a Telegram chat.
The connector nodes (Gmail / Jira / Calendar / GitHub / Slack / Telegram) come from connectors — each connector action surfaces as a typed node with typed inputs and outputs.

Control

Flow-control primitives.
NodeBehaviour
IfConditional branching. Routes to one of two downstream paths based on a boolean expression.
SwitchMulti-way branching. Routes to one of N paths based on the value of an expression.
DelayWait for a specified duration before continuing. Durable on the Temporal runtime — the workflow sleeps without holding compute.
EndTerminate the workflow and return its output.

Building the graph

  • Add a node: drag from the palette onto the canvas, or click. Connect the source node’s output handle to the next node’s input handle.
  • Configure a node: double-click it. The right panel opens with the node’s editable fields:
    • ID — used in references (e.g. {{node_4.field}}).
    • Label — display name on the canvas.
    • Connection — for connector nodes, which OAuth connection to act through.
    • Inputs — action-specific parameters. String fields support templating with {{node_id.field}} references to upstream outputs.
    • Outputs — the typed return shape, with copy-to-clipboard buttons for each field reference (e.g. {{node_4.next_page_token}}).
  • Delete a node: select it and press Delete, or use Delete Node at the bottom of the config panel.
  • Save the canvas to persist your changes. Export JSON dumps the workflow definition.
Outputs from any node are referenced downstream as {{node_id.field}}. The ID is editable, so you can rename node_4 to list_messages for readability.

Versions

Workflows are versioned with the same model as agents:
  • $LATEST is version 0 — the mutable working copy. Every save on the Canvas tab updates \$LATEST.
  • Create New Version freezes the current \$LATEST into a numbered immutable snapshot (1, 2, 3, …). Future canvas edits go to \$LATEST again; numbered versions never change.
  • The Versions tab lists every snapshot with its creation/update timestamp. Click View to open a version read-only in the Canvas tab.

Alias

Aliases pin a named label (e.g. production, canary) to one or two versions:
  • $LATEST is a built-in alias that always points at version 0.
  • Custom aliases can point at a single version, or split traffic across two versions with a weight (for canary or A/B rollouts).
  • Agents that invoke this workflow can reference it by alias (e.g. pr_triage@production) instead of a numeric version, so you can roll forward without touching the agent.

Invoking a workflow from an agent

When the Invoked by Agent trigger is used, the workflow registers itself as a tool with the same name as the workflow. To make the agent able to call it:
  1. Open the agent in Agent Builder.
  2. Go to the Tools tab.
  3. Enable Workflows and select this workflow (and the version or alias you want to pin).
  4. Save.
The agent now sees the workflow as a tool. It calls the tool with arguments matching the trigger’s input schema; the workflow runs to completion (durably on Temporal, in-process on Local) and the agent receives the output back as the tool result. This is the workflow-as-tool composition pattern: build complex multi-step automation deterministically as a DAG, then let an agent orchestrate it like any other tool.

Local vs Temporal runtime — when to use which

AspectLocalTemporal
Where it runsIn-process with the request handlerTemporal worker(s); each node is an activity
DurabilityNon-durable; a crash loses the runDurable; survives crashes, restarts, transient failures
RetriesNone automaticPer-activity retry policy
Replay safetyN/ADeterministic replay from history
LatencyLowest (no broker hop)Slightly higher (broker hop per activity)
Best forDevelopment, fast paths, short workflowsLong-running, multi-step, production workflows
You can change the runtime at any time from the General tab; existing version definitions stay the same.

Observability

Every workflow run produces an OpenTelemetry trace covering:
  • The trigger event.
  • Each node executed, with inputs, outputs, status, and duration.
  • Tool calls made by any AI Agent nodes inside the workflow.
  • Re-tries and replays (Temporal).
See Tracing for how to filter and inspect runs.

Relation to other features

  • Connectors — provide the typed connector nodes (Gmail, Slack, Jira, …) on the workflow palette.
  • Agent Tool — agents call workflows just like any other tool, with arguments derived from the trigger’s schema.
  • Agent Runtime — workflows mirror the runtime choice agents have: in-process for speed, Temporal for durability.