mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-08-28 05:27:41 +00:00
Update docs for new CLI commands, fast mode, and subagent defaults
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
5c0a491de8
commit
4d62c784ee
5 changed files with 77 additions and 5 deletions
|
|
@ -1 +1 @@
|
|||
45ff3da4e05c7c67c909d7b860c7764b34e6a342
|
||||
1afa8419b53670f95c5d6a041cfd373c4a8c9371
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ Creates a new sub-agent session and starts it working on the given task.
|
|||
| `task` | string | yes | The task description for the sub-agent |
|
||||
| `working_dir` | string | no | Working directory for the sub-agent |
|
||||
| `model` | string | no | Model to use for the sub-agent |
|
||||
| `max_turns` | integer | no | Maximum number of turns (default: 50) |
|
||||
| `max_turns` | integer | no | Maximum number of turns (default: unlimited) |
|
||||
|
||||
Returns the `agent_id` string used to reference this sub-agent in subsequent calls.
|
||||
|
||||
|
|
@ -104,7 +104,7 @@ When a sub-agent fails, the error is captured and returned to the parent via the
|
|||
|
||||
Specific failure modes:
|
||||
|
||||
- **Sub-agent hits `max_turns`** — The sub-agent stops naturally and returns its last output as a successful result. The parent sees a normal completion with the final assistant message.
|
||||
- **Sub-agent hits `max_turns`** — The sub-agent stops naturally and returns its last output as a successful result. The parent sees a normal completion with the final assistant message. By default, there is no turn limit — sub-agents run until they complete their task or hit the context window.
|
||||
- **Sub-agent panics or errors** — The error is captured and returned through `wait` as a failure result. The parent can inspect the error and decide what to do.
|
||||
- **`spawn_agent` fails** (e.g. depth limit exceeded) — The error is returned immediately as a tool result. The parent can adjust its approach without waiting.
|
||||
|
||||
|
|
@ -133,5 +133,7 @@ Sub-agents are most useful when:
|
|||
- **Context management** -- offload work to a sub-agent when the parent's context window is getting full
|
||||
|
||||
<Note>
|
||||
Sub-agents have a default turn limit of 50. For larger tasks, pass a higher `max_turns` when spawning. The parent agent is blocked during a `wait` call, so spawn sub-agents before starting the wait to maximize concurrency.
|
||||
Sub-agents run with no turn limit by default — they continue until the task is complete or the context window is exhausted. Pass `max_turns` when spawning to cap execution for predictable cost control. The parent agent is blocked during a `wait` call, so spawn sub-agents before starting the wait to maximize concurrency.
|
||||
</Note>
|
||||
|
||||
All active sub-agents are automatically cleaned up when the parent session closes — you don't need to explicitly `close_agent` on every sub-agent.
|
||||
|
|
|
|||
|
|
@ -117,6 +117,57 @@ fabro resume <RUN_ID> --detach
|
|||
| `<RUN_ID>` | Run ID or unambiguous prefix |
|
||||
| `-d, --detach` | Run in the background and print the run ID |
|
||||
|
||||
## `fabro wait`
|
||||
|
||||
Block until a workflow run reaches a terminal state and exit with a code reflecting the outcome — analogous to `docker wait`. Exits 0 on success, 1 on failure or dead.
|
||||
|
||||
```bash
|
||||
fabro wait <RUN>
|
||||
fabro wait abc123 --timeout 300
|
||||
fabro wait my-workflow --json
|
||||
```
|
||||
|
||||
| Argument / Flag | Description |
|
||||
|---|---|
|
||||
| `<RUN>` | Run ID prefix or workflow name (most recent run) |
|
||||
| `--timeout <SECONDS>` | Maximum time to wait in seconds |
|
||||
| `--interval <MS>` | Poll interval in milliseconds (default: 1000) |
|
||||
| `--json` | Output the conclusion as JSON |
|
||||
|
||||
## `fabro create`
|
||||
|
||||
Allocate a run directory and persist a run spec without starting execution. Pair with `fabro start` and `fabro attach` for composable automation.
|
||||
|
||||
```bash
|
||||
fabro create <WORKFLOW> --goal "Implement feature X"
|
||||
```
|
||||
|
||||
Accepts the same arguments and flags as [`fabro run`](#fabro-run).
|
||||
|
||||
## `fabro start`
|
||||
|
||||
Start a previously created run by spawning the detached engine process.
|
||||
|
||||
```bash
|
||||
fabro start <RUN>
|
||||
```
|
||||
|
||||
| Argument | Description |
|
||||
|---|---|
|
||||
| `<RUN>` | Run ID prefix or workflow name |
|
||||
|
||||
## `fabro attach`
|
||||
|
||||
Attach to a running or finished workflow run. Tails progress with live rendering and handles human-in-the-loop interactions (interviews, steering).
|
||||
|
||||
```bash
|
||||
fabro attach <RUN>
|
||||
```
|
||||
|
||||
| Argument | Description |
|
||||
|---|---|
|
||||
| `<RUN>` | Run ID prefix or workflow name |
|
||||
|
||||
## `fabro ps`
|
||||
|
||||
List workflow runs. By default, shows only active (running) runs — similar to `docker ps`. Use `-a` to include completed runs.
|
||||
|
|
@ -275,6 +326,7 @@ fabro model test -m claude-sonnet-4-5
|
|||
|---|---|
|
||||
| `-p, --provider <PROVIDER>` | Filter by provider |
|
||||
| `-m, --model <MODEL>` | Test a specific model |
|
||||
| `--deep` | Run a multi-turn tool-use test that validates the full agent loop (tool calls, reasoning round-trips) instead of a single-turn completion |
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -819,6 +871,22 @@ fabro secret rm ANTHROPIC_API_KEY
|
|||
|
||||
---
|
||||
|
||||
## `fabro store dump`
|
||||
|
||||
Export the contents of a run's store-backed state to a directory for debugging and inspection.
|
||||
|
||||
```bash
|
||||
fabro store dump <RUN>
|
||||
fabro store dump abc123 -o ./debug-output
|
||||
```
|
||||
|
||||
| Argument / Flag | Description |
|
||||
|---|---|
|
||||
| `<RUN>` | Run ID prefix or workflow name |
|
||||
| `-o, --output <DIR>` | Output directory (must not exist or be empty) |
|
||||
|
||||
---
|
||||
|
||||
## `fabro docs`
|
||||
|
||||
Open the Fabro documentation website in your default browser.
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ rankdir=LR
|
|||
| `goal` | String | Workflow objective — guides agent behavior and retrospectives |
|
||||
| `rankdir` | Identifier | Layout direction: `LR` (left-to-right) or `TB` (top-to-bottom) |
|
||||
| `model_stylesheet` | String | CSS-like rules for model assignment (see [Model Stylesheets](/workflows/stylesheets)) |
|
||||
| `default_max_retries` | Integer | Default retry count for all nodes (default: 3) |
|
||||
| `default_max_retries` | Integer | Default retry count for all nodes (default: 0) |
|
||||
| `retry_target` | String | Default node ID to jump to on retry |
|
||||
| `fallback_retry_target` | String | Fallback retry target if primary target fails |
|
||||
| `default_fidelity` | String | Default [fidelity level](/execution/context) for all nodes |
|
||||
|
|
@ -262,6 +262,7 @@ OrExpr ::= AndExpr ('||' AndExpr)*
|
|||
AndExpr ::= UnaryExpr ('&&' UnaryExpr)*
|
||||
UnaryExpr ::= '!' UnaryExpr | Clause
|
||||
Clause ::= Key Op Value | Key (bare key = truthy check)
|
||||
Value ::= BareWord | '"' QuotedString '"'
|
||||
Op ::= '=' | '!=' | '>' | '<' | '>=' | '<='
|
||||
| 'contains' | 'matches'
|
||||
```
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@ Stylesheets support four properties:
|
|||
| `model` | Model ID or alias | `claude-sonnet-4-5`, `opus`, `gemini-pro` |
|
||||
| `provider` | Provider name (optional — auto-inferred from the model catalog when omitted) | `anthropic`, `openai`, `gemini` |
|
||||
| `reasoning_effort` | Reasoning effort level | `low`, `medium`, `high` |
|
||||
| `speed` | Output speed mode. `fast` enables Anthropic's fast mode for up to 2.5x faster output at higher cost. | `fast` |
|
||||
| `backend` | Agent execution backend — `api` (default) runs Fabro's own tool loop, `cli` delegates to an external CLI tool. See [Backends](/core-concepts/agents#backends). | `cli`, `api` |
|
||||
|
||||
See [Models](/core-concepts/models) for the full list of model IDs and aliases.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue