# Remora > Workflows by agents, for agents. A JSON-based workflow language where AI agents define, compile, and execute reliable and consistent workflows. ## Table of Contents ### Guide - [What is RemoraFlow?](/guide/what-is-remora.md) - [Getting Started](/guide/getting-started.md) - [Workflow Definitions](/guide/workflow-definitions.md) - [Compilation](/guide/compilation.md) - [Execution](/guide/execution.md) - [Policies & Approvals](/guide/policies.md) - [Execution State](/guide/execution-state.md) - [Streaming & Channels](/guide/streaming.md) - [Component Registry](/guide/component-registry.md) ### API Reference - [lib](/api/lib.md) ### Functions - [Function: compileWorkflow()](/api/lib/functions/compileWorkflow.md) - [Function: executeWorkflow()](/api/lib/functions/executeWorkflow.md) - [Function: generateWorkflow()](/api/lib/functions/generateWorkflow.md) - [Function: createWorkflowGeneratorTool()](/api/lib/functions/createWorkflowGeneratorTool.md) ### Interfaces - [Interface: CompilerResult](/api/lib/interfaces/CompilerResult.md) - [Interface: ExecutionResult](/api/lib/interfaces/ExecutionResult.md) - [Interface: ExecuteWorkflowOptions\](/api/lib/interfaces/ExecuteWorkflowOptions.md) - [Interface: ExecutionGraph](/api/lib/interfaces/ExecutionGraph.md) - [Interface: Diagnostic](/api/lib/interfaces/Diagnostic.md) - [Interface: ConstrainedToolSchema](/api/lib/interfaces/ConstrainedToolSchema.md) - [Interface: GenerateWorkflowOptions](/api/lib/interfaces/GenerateWorkflowOptions.md) ### Error Classes - [Class: StepExecutionError](/api/lib/classes/StepExecutionError.md) - [Class: ConfigurationError](/api/lib/classes/ConfigurationError.md) - [Class: ValidationError](/api/lib/classes/ValidationError.md) - [Class: ExternalServiceError](/api/lib/classes/ExternalServiceError.md) - [Class: ExpressionError](/api/lib/classes/ExpressionError.md) - [Class: OutputQualityError](/api/lib/classes/OutputQualityError.md) ### Type Aliases - [Type Alias: WorkflowDefinition](/api/lib/type-aliases/WorkflowDefinition.md) - [Type Alias: WorkflowStep](/api/lib/type-aliases/WorkflowStep.md) - [Type Alias: DiagnosticCode](/api/lib/type-aliases/DiagnosticCode.md) - [Type Alias: ErrorCode](/api/lib/type-aliases/ErrorCode.md) - [Type Alias: ErrorCategory](/api/lib/type-aliases/ErrorCategory.md) ### Viewer - [viewer](/api/viewer.md) - [Function: WorkflowViewer()](/api/viewer/functions/WorkflowViewer.md) - [Interface: WorkflowViewerProps](/api/viewer/interfaces/WorkflowViewerProps.md) ### Other - [Abstract Class: BaseExecutionStateChannel](/api/lib/classes/BaseExecutionStateChannel.md) - [Class: AuthorizationError](/api/lib/classes/AuthorizationError.md) - [Class: MemoryExecutionStateChannel](/api/lib/classes/MemoryExecutionStateChannel.md) - [Function: applyDelta()](/api/lib/functions/applyDelta.md) - [Function: buildEditableLayout()](/api/viewer/functions/buildEditableLayout.md) - [Function: buildLayout()](/api/viewer/functions/buildLayout.md) - [Function: buildWorkflowGenerationPrompt()](/api/lib/functions/buildWorkflowGenerationPrompt.md) - [Function: Button()](/api/viewer/functions/Button.md) - [Function: Collapsible()](/api/viewer/functions/Collapsible.md) - [Function: CollapsibleContent()](/api/viewer/functions/CollapsibleContent.md) - [Function: CollapsibleTrigger()](/api/viewer/functions/CollapsibleTrigger.md) - [Function: Combobox()](/api/viewer/functions/Combobox.md) - [Function: ComboboxContent()](/api/viewer/functions/ComboboxContent.md) - [Function: ComboboxEmpty()](/api/viewer/functions/ComboboxEmpty.md) - [Function: ComboboxGroup()](/api/viewer/functions/ComboboxGroup.md) - [Function: ComboboxInput()](/api/viewer/functions/ComboboxInput.md) - [Function: ComboboxItem()](/api/viewer/functions/ComboboxItem.md) - [Function: ComboboxItemDescription()](/api/viewer/functions/ComboboxItemDescription.md) - [Function: ComboboxItemTitle()](/api/viewer/functions/ComboboxItemTitle.md) - [Function: ComboboxList()](/api/viewer/functions/ComboboxList.md) - [Function: ComboboxTrigger()](/api/viewer/functions/ComboboxTrigger.md) - [Function: Command()](/api/viewer/functions/Command.md) - [Function: CommandDialog()](/api/viewer/functions/CommandDialog.md) - [Function: CommandEmpty()](/api/viewer/functions/CommandEmpty.md) - [Function: CommandGroup()](/api/viewer/functions/CommandGroup.md) - [Function: CommandInput()](/api/viewer/functions/CommandInput.md) - [Function: CommandItem()](/api/viewer/functions/CommandItem.md) - [Function: CommandList()](/api/viewer/functions/CommandList.md) - [Function: CommandSeparator()](/api/viewer/functions/CommandSeparator.md) - [Function: CommandShortcut()](/api/viewer/functions/CommandShortcut.md) - [Function: createDefaultDurableContext()](/api/lib/functions/createDefaultDurableContext.md) - [Function: createDefaultStep()](/api/viewer/functions/createDefaultStep.md) - [Function: deriveStepSummaries()](/api/viewer/functions/deriveStepSummaries.md) - [Function: Dialog()](/api/viewer/functions/Dialog.md) - [Function: DialogClose()](/api/viewer/functions/DialogClose.md) - [Function: DialogContent()](/api/viewer/functions/DialogContent.md) - [Function: DialogDescription()](/api/viewer/functions/DialogDescription.md) - [Function: DialogFooter()](/api/viewer/functions/DialogFooter.md) - [Function: DialogHeader()](/api/viewer/functions/DialogHeader.md) - [Function: DialogOverlay()](/api/viewer/functions/DialogOverlay.md) - [Function: DialogPortal()](/api/viewer/functions/DialogPortal.md) - [Function: DialogTitle()](/api/viewer/functions/DialogTitle.md) - [Function: DialogTrigger()](/api/viewer/functions/DialogTrigger.md) - [Function: DropdownMenu()](/api/viewer/functions/DropdownMenu.md) - [Function: DropdownMenuContent()](/api/viewer/functions/DropdownMenuContent.md) - [Function: DropdownMenuItem()](/api/viewer/functions/DropdownMenuItem.md) - [Function: DropdownMenuLabel()](/api/viewer/functions/DropdownMenuLabel.md) - [Function: DropdownMenuSeparator()](/api/viewer/functions/DropdownMenuSeparator.md) - [Function: DropdownMenuTrigger()](/api/viewer/functions/DropdownMenuTrigger.md) - [Function: enumerateSuggestions()](/api/lib/functions/enumerateSuggestions.md) - [Function: executeWorkflowStream()](/api/lib/functions/executeWorkflowStream.md) - [Function: ExpressionEditor()](/api/viewer/functions/ExpressionEditor.md) - [Function: extractToolSchemas()](/api/lib/functions/extractToolSchemas.md) - [Function: getExpressionScope()](/api/lib/functions/getExpressionScope.md) - [Function: hashWorkflow()](/api/lib/functions/hashWorkflow.md) - [Function: Input()](/api/viewer/functions/Input.md) - [Function: JsonCodeEditor()](/api/viewer/functions/JsonCodeEditor.md) - [Function: JsonViewer()](/api/viewer/functions/JsonViewer.md) - [Function: Label()](/api/viewer/functions/Label.md) - [Function: Popover()](/api/viewer/functions/Popover.md) - [Function: PopoverAnchor()](/api/viewer/functions/PopoverAnchor.md) - [Function: PopoverContent()](/api/viewer/functions/PopoverContent.md) - [Function: PopoverTrigger()](/api/viewer/functions/PopoverTrigger.md) - [Function: ReplaySlider()](/api/viewer/functions/ReplaySlider.md) - [Function: resetStepCounter()](/api/viewer/functions/resetStepCounter.md) - [Function: Select()](/api/viewer/functions/Select.md) - [Function: SelectContent()](/api/viewer/functions/SelectContent.md) - [Function: SelectItem()](/api/viewer/functions/SelectItem.md) - [Function: SelectTrigger()](/api/viewer/functions/SelectTrigger.md) - [Function: SelectValue()](/api/viewer/functions/SelectValue.md) - [Function: serializeToolsForPrompt()](/api/lib/functions/serializeToolsForPrompt.md) - [Function: snapshotError()](/api/lib/functions/snapshotError.md) - [Function: StepDetailPanel()](/api/viewer/functions/StepDetailPanel.md) - [Function: StepEditorPanel()](/api/viewer/functions/StepEditorPanel.md) - [Function: StepPalette()](/api/viewer/functions/StepPalette.md) - [Function: Switch()](/api/viewer/functions/Switch.md) - [Function: Textarea()](/api/viewer/functions/Textarea.md) - [Function: useDarkMode()](/api/viewer/functions/useDarkMode.md) - [Function: useToolDisplayName()](/api/viewer/functions/useToolDisplayName.md) - [Function: useToolSchemas()](/api/viewer/functions/useToolSchemas.md) - [Function: useWorkflowExecution()](/api/viewer/functions/useWorkflowExecution.md) - [Interface: CompilerLimits](/api/lib/interfaces/CompilerLimits.md) - [Interface: DiagnosticLocation](/api/lib/interfaces/DiagnosticLocation.md) - [Interface: DurableContext](/api/lib/interfaces/DurableContext.md) - [Interface: EnumerateSuggestionsOptions](/api/lib/interfaces/EnumerateSuggestionsOptions.md) - [Interface: ExecutorLimits](/api/lib/interfaces/ExecutorLimits.md) - [Interface: ExpressionEditorProps](/api/viewer/interfaces/ExpressionEditorProps.md) - [Interface: ExpressionSuggestion](/api/lib/interfaces/ExpressionSuggestion.md) - [Interface: GenerateWorkflowFailure](/api/lib/interfaces/GenerateWorkflowFailure.md) - [Interface: GenerateWorkflowSuccess](/api/lib/interfaces/GenerateWorkflowSuccess.md) - [Interface: JsonCodeEditorProps](/api/viewer/interfaces/JsonCodeEditorProps.md) - [Interface: JsonViewerProps](/api/viewer/interfaces/JsonViewerProps.md) - [Interface: ReplaySliderProps](/api/viewer/interfaces/ReplaySliderProps.md) - [Interface: ScopeEntry](/api/lib/interfaces/ScopeEntry.md) - [Interface: StepDetailPanelProps](/api/viewer/interfaces/StepDetailPanelProps.md) - [Interface: StepEditorPanelProps](/api/viewer/interfaces/StepEditorPanelProps.md) - [Interface: StepExecutionSummary](/api/viewer/interfaces/StepExecutionSummary.md) - [Interface: StepNodeData](/api/viewer/interfaces/StepNodeData.md) - [Interface: StepPaletteProps](/api/viewer/interfaces/StepPaletteProps.md) - [Interface: ToolSchemaDefinition](/api/lib/interfaces/ToolSchemaDefinition.md) - [Interface: UseWorkflowExecutionOptions](/api/viewer/interfaces/UseWorkflowExecutionOptions.md) - [Interface: WaitForConditionOptions](/api/lib/interfaces/WaitForConditionOptions.md) - [Interface: WorkflowExecutionControls](/api/viewer/interfaces/WorkflowExecutionControls.md) - [Interface: WorkflowExecutionStateChannel](/api/lib/interfaces/WorkflowExecutionStateChannel.md) - [Interface: WorkflowExecutionStateChannelOptions](/api/lib/interfaces/WorkflowExecutionStateChannelOptions.md) - [Interface: WorkflowGeneratorToolOptions](/api/lib/interfaces/WorkflowGeneratorToolOptions.md) - [remora-monorepo](/api.md) - [Type Alias: ApprovableAction](/api/lib/type-aliases/ApprovableAction.md) - [Type Alias: ApprovalRequestDecision\](/api/lib/type-aliases/ApprovalRequestDecision.md) - [Type Alias: ConstrainedToolSchemaMap](/api/lib/type-aliases/ConstrainedToolSchemaMap.md) - [Type Alias: DiagnosticSeverity](/api/lib/type-aliases/DiagnosticSeverity.md) - [Type Alias: ErrorSnapshot](/api/lib/type-aliases/ErrorSnapshot.md) - [Type Alias: ExecutionDelta](/api/lib/type-aliases/ExecutionDelta.md) - [Type Alias: ExecutionPathSegment](/api/lib/type-aliases/ExecutionPathSegment.md) - [Type Alias: ExecutionState](/api/lib/type-aliases/ExecutionState.md) - [Type Alias: GenerateWorkflowResult](/api/lib/type-aliases/GenerateWorkflowResult.md) - [Type Alias: LayoutDirection](/api/viewer/type-aliases/LayoutDirection.md) - [Type Alias: Policy\](/api/lib/type-aliases/Policy.md) - [Type Alias: PolicyDecision\](/api/lib/type-aliases/PolicyDecision.md) - [Type Alias: RecoveryStrategy](/api/lib/type-aliases/RecoveryStrategy.md) - [Type Alias: RetryRecord](/api/lib/type-aliases/RetryRecord.md) - [Type Alias: RunStatus](/api/lib/type-aliases/RunStatus.md) - [Type Alias: StaleCheckResult](/api/lib/type-aliases/StaleCheckResult.md) - [Type Alias: StepExecutionRecord](/api/lib/type-aliases/StepExecutionRecord.md) - [Type Alias: StepStatus](/api/lib/type-aliases/StepStatus.md) - [Type Alias: ToolDefinitionMap](/api/lib/type-aliases/ToolDefinitionMap.md) - [Type Alias: TraceEntry](/api/lib/type-aliases/TraceEntry.md) - [Type Alias: WorkflowFailureCode](/api/lib/type-aliases/WorkflowFailureCode.md) - [Type Alias: WorkflowGiveUpCode](/api/lib/type-aliases/WorkflowGiveUpCode.md) - [Variable: DEFAULT\_APPROVAL\_BACKOFF\_MULTIPLIER](/api/lib/variables/DEFAULT_APPROVAL_BACKOFF_MULTIPLIER.md) - [Variable: DEFAULT\_APPROVAL\_INTERVAL\_MS](/api/lib/variables/DEFAULT_APPROVAL_INTERVAL_MS.md) - [Variable: DEFAULT\_APPROVAL\_MAX\_INTERVAL\_MS](/api/lib/variables/DEFAULT_APPROVAL_MAX_INTERVAL_MS.md) - [Variable: DEFAULT\_APPROVAL\_TIMEOUT\_MS](/api/lib/variables/DEFAULT_APPROVAL_TIMEOUT_MS.md) - [Variable: MAXIMUM\_PROMPT\_LENGTH](/api/lib/variables/MAXIMUM_PROMPT_LENGTH.md) - [Variable: MAXIMUM\_PROMPT\_VARIABLE\_LENGTH](/api/lib/variables/MAXIMUM_PROMPT_VARIABLE_LENGTH.md) - [Variable: ToolSchemasContext](/api/viewer/variables/ToolSchemasContext.md) - [Variable: WORKFLOW\_GIVE\_UP\_CODES](/api/lib/variables/WORKFLOW_GIVE_UP_CODES.md) - [Variable: workflowDefinitionSchema](/api/lib/variables/workflowDefinitionSchema.md)