From 967a23cbffb00a9e12ca897aed8f4d1414cf54ab Mon Sep 17 00:00:00 2001 From: Fabro Date: Thu, 16 Apr 2026 13:14:26 -0400 Subject: [PATCH] checkpoint MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ⚒️ Generated with [Fabro](https://fabro.sh) --- checkpoint.json | 70 ++++++++++++++++++++++++++++++++++ nodes/greet/prompt.md | 4 ++ nodes/greet/provider_used.json | 5 +++ nodes/greet/response.md | 21 ++++++++++ nodes/start/status.json | 6 +++ 5 files changed, 106 insertions(+) create mode 100644 checkpoint.json create mode 100644 nodes/greet/prompt.md create mode 100644 nodes/greet/provider_used.json create mode 100644 nodes/greet/response.md create mode 100644 nodes/start/status.json diff --git a/checkpoint.json b/checkpoint.json new file mode 100644 index 000000000..6c8e0e9dc --- /dev/null +++ b/checkpoint.json @@ -0,0 +1,70 @@ +{ + "timestamp": "2026-04-16T17:14:26.515826Z", + "current_node": "greet", + "completed_nodes": [ + "start", + "greet" + ], + "node_retries": {}, + "context_values": { + "internal.node_visit_count": 1, + "graph.rankdir": "LR", + "failure_class": "", + "last_response": "Hello! 👋 I'm Claude, an AI coding assistant made by Anthropic. I'm here to help you with software engineering tasks — things like debugging, adding features, refactoring code, explaining how thin", + "current_node": "greet", + "internal.retry_count.start": 0, + "internal.fidelity": "compact", + "internal.thread_id": "start", + "last_stage": "greet", + "internal.run_id": "01KPBMJ9Z0NZ14SE6M1P8TVVRE", + "outcome": "success", + "graph.goal": "Say hello and demonstrate a basic Fabro workflow", + "failure_signature": "", + "response.greet": "Hello! 👋 I'm Claude, an AI coding assistant made by Anthropic. I'm here to help you with software engineering tasks — things like debugging, adding features, refactoring code, explaining how things work, and more.\n\nThis message is a **test of the Fabro workflow engine**! 🚀\n\nHere's what's happening under the hood:\n\n- **Fabro** is an AI-powered workflow orchestration platform\n- Workflows are defined as **Graphviz graphs**, where each node is a *stage* (agent, prompt, command, conditional, human, parallel, etc.)\n- The workflow engine parses those graphs and executes each stage in sequence (or in parallel, depending on the graph structure)\n- This \"say hello\" step is itself a stage in a workflow — a simple demonstration that the engine is running correctly\n\n### What Fabro can do:\n| Feature | Description |\n|---|---|\n| 🤖 AI Agents | Coding agents with tools: Bash, Read, Write, Edit, Glob, Grep, WebFetch |\n| 🔄 Checkpoints | Pause, checkpoint, and resume workflows at any stage |\n| 🌐 Multi-provider LLM | Anthropic, OpenAI, Gemini, and OpenAI-compatible backends |\n| 👤 Human-in-the-loop | Workflows can pause and wait for human input |\n| 🔗 Integrations | GitHub Apps, Slack, MCP (Model Context Protocol) |\n\nIf you'd like to explore the codebase, run a workflow, fix a bug, or add a feature — just ask! I'm ready to dive in. 🛠️", + "internal.retry_count.greet": 0, + "thread.start.current_node": "greet" + }, + "node_outcomes": { + "greet": { + "status": "success", + "context_updates": { + "last_stage": "greet", + "last_response": "Hello! 👋 I'm Claude, an AI coding assistant made by Anthropic. I'm here to help you with software engineering tasks — things like debugging, adding features, refactoring code, explaining how thin", + "response.greet": "Hello! 👋 I'm Claude, an AI coding assistant made by Anthropic. I'm here to help you with software engineering tasks — things like debugging, adding features, refactoring code, explaining how things work, and more.\n\nThis message is a **test of the Fabro workflow engine**! 🚀\n\nHere's what's happening under the hood:\n\n- **Fabro** is an AI-powered workflow orchestration platform\n- Workflows are defined as **Graphviz graphs**, where each node is a *stage* (agent, prompt, command, conditional, human, parallel, etc.)\n- The workflow engine parses those graphs and executes each stage in sequence (or in parallel, depending on the graph structure)\n- This \"say hello\" step is itself a stage in a workflow — a simple demonstration that the engine is running correctly\n\n### What Fabro can do:\n| Feature | Description |\n|---|---|\n| 🤖 AI Agents | Coding agents with tools: Bash, Read, Write, Edit, Glob, Grep, WebFetch |\n| 🔄 Checkpoints | Pause, checkpoint, and resume workflows at any stage |\n| 🌐 Multi-provider LLM | Anthropic, OpenAI, Gemini, and OpenAI-compatible backends |\n| 👤 Human-in-the-loop | Workflows can pause and wait for human input |\n| 🔗 Integrations | GitHub Apps, Slack, MCP (Model Context Protocol) |\n\nIf you'd like to explore the codebase, run a workflow, fix a bug, or add a feature — just ask! I'm ready to dive in. 🛠️" + }, + "notes": "Stage completed: greet", + "usage": { + "input": { + "usage": { + "model": { + "provider": "anthropic", + "model_id": "claude-sonnet-4-6" + }, + "tokens": { + "input_tokens": 356, + "output_tokens": 390, + "reasoning_tokens": 0, + "cache_read_tokens": 0, + "cache_write_tokens": 5616 + } + }, + "facts": { + "provider": "anthropic", + "cache_write_5m_tokens": 5616, + "cache_write_1h_tokens": 0 + } + }, + "total_usd_micros": 27978 + } + }, + "start": { + "status": "success", + "usage": null + } + }, + "next_node_id": "exit", + "node_visits": { + "start": 1, + "greet": 1 + } +} \ No newline at end of file diff --git a/nodes/greet/prompt.md b/nodes/greet/prompt.md new file mode 100644 index 000000000..190c70fa2 --- /dev/null +++ b/nodes/greet/prompt.md @@ -0,0 +1,4 @@ +Goal: Say hello and demonstrate a basic Fabro workflow + + +Say hello! Introduce yourself and explain that this is a test of the Fabro workflow engine. \ No newline at end of file diff --git a/nodes/greet/provider_used.json b/nodes/greet/provider_used.json new file mode 100644 index 000000000..d0418b4c6 --- /dev/null +++ b/nodes/greet/provider_used.json @@ -0,0 +1,5 @@ +{ + "mode": "agent", + "provider": "anthropic", + "model": "claude-sonnet-4-6" +} \ No newline at end of file diff --git a/nodes/greet/response.md b/nodes/greet/response.md new file mode 100644 index 000000000..917de8d83 --- /dev/null +++ b/nodes/greet/response.md @@ -0,0 +1,21 @@ +Hello! 👋 I'm Claude, an AI coding assistant made by Anthropic. I'm here to help you with software engineering tasks — things like debugging, adding features, refactoring code, explaining how things work, and more. + +This message is a **test of the Fabro workflow engine**! 🚀 + +Here's what's happening under the hood: + +- **Fabro** is an AI-powered workflow orchestration platform +- Workflows are defined as **Graphviz graphs**, where each node is a *stage* (agent, prompt, command, conditional, human, parallel, etc.) +- The workflow engine parses those graphs and executes each stage in sequence (or in parallel, depending on the graph structure) +- This "say hello" step is itself a stage in a workflow — a simple demonstration that the engine is running correctly + +### What Fabro can do: +| Feature | Description | +|---|---| +| 🤖 AI Agents | Coding agents with tools: Bash, Read, Write, Edit, Glob, Grep, WebFetch | +| 🔄 Checkpoints | Pause, checkpoint, and resume workflows at any stage | +| 🌐 Multi-provider LLM | Anthropic, OpenAI, Gemini, and OpenAI-compatible backends | +| 👤 Human-in-the-loop | Workflows can pause and wait for human input | +| 🔗 Integrations | GitHub Apps, Slack, MCP (Model Context Protocol) | + +If you'd like to explore the codebase, run a workflow, fix a bug, or add a feature — just ask! I'm ready to dive in. 🛠️ \ No newline at end of file diff --git a/nodes/start/status.json b/nodes/start/status.json new file mode 100644 index 000000000..40131b642 --- /dev/null +++ b/nodes/start/status.json @@ -0,0 +1,6 @@ +{ + "status": "success", + "notes": null, + "failure_reason": null, + "timestamp": "2026-04-16T17:14:17.695723Z" +} \ No newline at end of file