Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.fabro.sh/llms.txt

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

Fabro run-management tools now require an explicit per-run opt-in. Existing workflows that expected agents to create, search, inspect, or control Fabro runs must enable the tools in run configuration.To migrate:
  1. Add [run.agent] to the workflow, project, or user run settings that should expose these tools.
  2. Set fabro_tools = true.
  3. Leave the setting unset or false for runs that should not grant run-management capabilities.

Ask Fabro ships in the run sidebar

Ask Fabro is now wired into run pages end to end. The sidebar uses real run session APIs, streams assistant responses, can call scoped run tools, and starts with a welcome state that offers concrete example prompts. Each turn is oriented with a fresh run snapshot so answers start from the current run status, stage state, and recent activity. The panel is resizable, persists its session per run tab, renders tool calls in the narrow sidebar, and hides internal reasoning deltas from the conversation.

Scoped Fabro tools for workflow agents

Built-in Fabro run tools are now gated twice: first by the resolved [run.agent] fabro_tools setting, then by the worker JWT scope. The server remains authoritative for authorization, while workers only register the tool schemas when their token includes the run-tool scope.
[run.agent]
fabro_tools = true
Ask Fabro also uses an effective read-only tool policy so it only advertises tools it can actually call. Hidden or denied tools are blocked before execution, which keeps model-visible capabilities aligned with server policy.

Event-sourced agent todos

OpenAI and Anthropic agent profiles now persist todo and task changes as run events. OpenAI update_plan calls and Anthropic task tools emit todo.created, todo.updated, and todo.deleted, then replay into the run projection. This gives Fabro a durable view of agent task state instead of treating todo updates as transient model-side bookkeeping. The web app refreshes run state when todo events arrive, so projected task lists can update live.

More

  • Run projections now include event-sourced todo lists from agent task tools
  • Ask Fabro readiness and default model data are exposed on run summaries
  • Fabro workers now register run-management tools only when their worker token carries agent:run_tools
  • fabro_run_create now supports goal_file and preserves it as a file-backed run goal
  • fabro_run_create now accepts the advertised workflow-string shorthand in MCP clients
  • New fabro_run_get tool provides read-only run inspection without mutating workflow state
  • run.checkpoint.skip_git_hooks can bypass Git hooks during checkpoint commits
  • Pair user and system messages now appear in the stage Thread tab and activity timeline
  • Fixed Ask Fabro session responses not rendering in the sidebar
  • Fixed Ask Fabro markdown spacing and heading sizes in narrow panels
  • Fixed reasoning deltas leaking into Ask Fabro output
  • Fixed archived run board updates not refreshing active and archived queries consistently
  • Fixed retryable mid-stream LLM failures being treated as terminal agent errors
  • Fixed agent edit operations by reading raw sandbox file contents before applying patches
  • The run stage sidebar can now collapse to an icon rail while preserving status indicators
  • Ask Fabro example prompts now use fuller, action-oriented text
  • Agent context observability now records memory, activated skills, and MCP tools as run events
  • Anthropic agent sessions now support task lookup and task reminders
  • Run board archived columns now stay in a predictable order after archive and unarchive actions
  • OpenAI apply_patch handling is now compatible with Codex-style patch grammar