Graph Compose: Hosted Temporal Workflows with Visual Builder and AI

Graph Compose is a hosted platform for orchestrating API workflows on Temporal's durable execution engine. You define workflows as graphs of nodes (HTTP calls, AI agents, iterators, error boundaries) that run as Temporal workflows without managing infrastructure.
Three Ways to Build the Same Graph
Every workflow uses a consistent JSON format that can be created through:
- A React Flow visual builder
- A typed TypeScript SDK (@graph-compose/client)
- An AI assistant that turns plain English into a graph
How It Works
You submit JSON workflows via API to https://api.graphcompose.io/v1/workflows/execute and they run immediately on hosted Temporal. No deploy step, no Temporal cluster to run, no workers to deploy. The platform handles scheduling, retries, error boundaries, and state persistence.
Workflow Example
const workflow = {
"nodes": [
{
"id": "upload_image",
"type": "http",
"dependencies": [],
"http": {
"method": "PUT",
"url": "https://storage.example.com/{{ context.filename }}",
"headers": {
"Content-Type": "{{ context.contentType }}",
"Authorization": "Bearer {{ $secret('storage_token') }}"
},
"body": "{{ context.imageData }}"
},
"activityConfig": {
"retryPolicy": {
"maximumAttempts": 3,
"initialInterval": "1s",
"backoffCoefficient": 2
},
"startToCloseTimeout": "30 seconds"
}
},
{
"id": "generate_thumbnails",
"type": "http",
"dependencies": ["upload_image"],
"http": {
"method": "POST",
"url": "https://images.example.com/process",
"body": {
"source": "{{ results.upload_image.data.url }}",
"sizes": ["400x400", "200x200"]
}
}
}
],
"context": {
"filename": "profile.jpg",
"contentType": "image/jpeg"
}
}
Key Features
- Durable Execution: Workflows survive server restarts, network failures, and process crashes. Temporal replays from the last checkpoint.
- Automatic Retries: Configure retry policies per node with max attempts, backoff intervals, and non-retryable error types.
- Error Boundaries: Wrap nodes in try/catch-style error boundaries with fallback behavior.
- State Persistence: Query workflow state at any point.
- Template Expressions: Nodes reference results from upstream nodes via
{{ results.node_id.data.field }}syntax.
Licensing
Open-core model: the execution foundations and integrations service are AGPL-3.0, while the platform orchestrator, visual builder, and AI assistant are proprietary.
📖 Read the full source: HN AI Agents
👀 See Also

Tangent: Chrome Extension for Branching Claude Conversations
A free, open-source extension that lets you open side threads on Claude without losing your place.

Relay lets Claude Code sessions message each other without alt-tabbing
A plugin called Relay uses Claude Code's channels capability to let parallel sessions communicate directly, removing the need to manually copy-paste context between backend and frontend repos.

Why a Single run() Tool with Unix Commands Beats Function Calling for AI Agents
A backend lead with two years of agent-building experience argues that a single run(command="...") tool with Unix-style CLI commands outperforms traditional function calling catalogs. The approach leverages LLMs' existing familiarity with shell commands from training data.

MCP Lets Claude Analyze Google Search Console Data Automatically
A new free MCP connects Claude directly to Google Search Console, enabling natural language queries on search performance data like queries, pages, clicks, and CTR without manual CSV exports.