Orchestrate. Approve.
Audit Everything.
Flow lets AI agents execute multi-step workflows with human approval gates and conditional branching. Inspect gives you complete visibility into every execution โ who approved what, when, and why.
7 tools total
flow.into ยท flow.route ยท flow.request-approval ยท flow.request-feedback ยท inspect.*
Human-in-the-loop
Approval gates before sensitive operations
Full audit trail
Every execution logged with CTC receipts
Free to start ยท No credit card required
Seven Tools. Full Workflow Lifecycle.
Flow defines and executes structured plans with human oversight. Inspect audits every execution โ together they cover the complete lifecycle from orchestration to accountability.
Multi-Step Workflow Execution
Define and execute structured multi-step workflows from a plan array. Flow handles dependency resolution between steps, type bridging via Prism, and CTC validation. Completed workflows can be saved as reusable skills and scheduled for future execution.
Key capabilities
- Steps reference prior outputs with $step_id.result syntax
- validate_only: true produces a CTC without executing โ pre-flight check
- save_as_skill: true persists the workflow for reuse or scheduling
- Logic constraints are automatically checked before matching steps execute
- schedule param defers execution to a future time via Scheduler
- Supports inline conditional steps with type: 'conditional' + branches
What Agents Can Do With a Safety Net
Flow lets agents take consequential actions confidently. Inspect ensures every action is traceable, auditable, and debuggable after the fact.
Bulk Invoice Creation with Approval
Pull qualified leads from Salesforce, type-bridge them to billing customers via Prism, then pause for human approval before creating invoices in QuickBooks. No accidental bulk charges โ every batch is human-confirmed.
Related Solutions
Human-in-the-Loop Onboarding
Route new signups by tier using flow.route, then request missing profile fields with flow.request-feedback before provisioning accounts. Enterprise accounts get an approval gate; standard accounts flow through automatically.
Related Solutions
Scheduled Data Sync Pipelines
Define a multi-step ETL workflow with flow.into, save it as a skill, and schedule it on a recurring cadence. Inspect gives you a per-run audit trail โ catch a failed sync immediately and inspect the exact step that broke.
Related Solutions
Compliance-Sensitive Record Mutations
Wrap any destructive operation โ record deletion, status changes, permission grants โ in a flow.request-approval gate. Inspect.ctc-executions provides a cryptographically signed audit trail of every approved action for compliance reporting.
Related Solutions
Workflow Debugging & Root Cause Analysis
When a multi-step workflow fails in production, use inspect.execution-history to find the failed run, then inspect.execution-details to see exactly what args were passed and what error was returned โ without guessing.
Related Solutions
Skill Performance Monitoring
Save high-value workflows as reusable skills and track their execution history via inspect.ctc-executions. Monitor success rates, latency trends, and credit consumption across all runs of the same workflow definition.
Related Solutions
Flow & Inspect Are Better Together
Pair orchestration and auditing with Logic constraints, Warden security, Prism type-bridging, and Scheduler โ without writing any glue code.
Constraint-Enforced Workflow Execution
Constraints stored in Logic are automatically checked by flow.into before executing matching steps. Define a business rule once โ 'enterprise customers must have a billing contact before invoicing' โ and it applies across every workflow without modifying each plan.
โฆ Business rules written once, enforced everywhere
Security-Gated Workflow Execution
Run Warden's intent analysis before sensitive flow.into steps to verify the workflow hasn't been tampered with or manipulated by prompt injection. Use flow.request-approval as a manual backstop when Warden flags anomalous intent.
โฆ Workflows that can't be hijacked by adversarial inputs
The Execution + Audit Loop
Flow executes and generates a CTC on completion. Inspect reads those CTCs to answer questions like 'did this workflow run today?', 'who approved step 3?', and 'which execution failed last Tuesday?' โ full accountability without extra instrumentation.
โฆ Zero-effort audit trails โ built into every workflow run
Transformed Data Across Steps
Use prism.refract or prism.focus as steps inside flow.into plans to bridge data types between integrations. Salesforce lead shapes become QuickBooks customer shapes automatically โ no glue code, no manual field mapping.
โฆ Integrations that compose without manual field mapping
Recurring Automated Pipelines
Pass a schedule argument directly to flow.into or use scheduler.create with a plan array to run any workflow on a cron-like schedule. Inspect.execution-history gives you a per-run log โ catch a missed or failed scheduled run immediately.
โฆ Reliable scheduled pipelines with built-in observability
Execution Analytics & Reporting
Export execution history from Inspect and pipe it through prism.analyze or prism.chart to surface patterns โ which workflows fail most often, which steps are slowest, or how credit consumption trends over time.
โฆ Agent observability without building a separate analytics stack
From Plan to Audit in Minutes
Define a workflow, add approval gates, route by condition, and inspect every execution โ all with the Conduit SDK.
from datagrout.conduit import Client
async with Client(
"https://gateway.datagrout.ai/servers/{uuid}/mcp",
auth={"bearer": "your-access-token"}
) as client:
result = await client.perform("data-grout@1/flow.into@1", {
"name": "Lead to Invoice",
"description": "Qualify Salesforce leads and create QuickBooks invoices",
"plan": [
{
"id": "get_leads",
"tool": "salesforce@1/get_leads@1",
"args": {"status": "Qualified"}
},
{
"id": "convert",
"tool": "data-grout@1/prism.focus@1",
"args": {
"data": "$get_leads.result",
"source_type": "crm.lead@1",
"target_type": "billing.customer@1"
}
},
{
"id": "create_invoices",
"tool": "quickbooks@1/create_invoice@1",
"args": {"customer": "$convert.result", "amount": 1000}
}
],
"save_as_skill": True
})
print(result["status"]) # "completed"
print(result["ctc_id"]) # "ctc_def456" โ signed audit receipt
print(result["skill_id"]) # "skill_lead_to_invoice" โ reusableAlso available in TypeScript, Rust, Elixir, and Ruby. View Conduit SDK โ
Frequently Asked Questions
Everything developers ask before wiring up Flow and Inspect.
More questions? Read the full Flow & Inspect documentation.
Your agents deserve a safety net.
Flow gives agents the ability to execute complex, multi-step operations with human oversight. Inspect ensures every action is auditable, debuggable, and provable โ without writing any extra infrastructure.
Free to start ยท No credit card required
