ferro-text
Conversational-text renderer for Ferro service projections.
ferro-text provides TextRenderer, a [Renderer] implementation that projects a
[ServiceDef] to deterministic plain text. It is the text-channel output crate in the
same renderer-per-output-crate pattern as ferro-json-ui (JsonUiRenderer) and
ferro-mcp-server (McpRenderer).
Supported intents
| Intent | Output shape |
|---|---|
| Browse | Entity name + domain field labels |
| Collect | "Fields to provide" with required markers |
| Process | Current state + guard-passing actions |
| Summarize | Entity + key metric/status fields |
| Track | Current state + terminal status |
| Focus | Field rendering with render_hint applied (degraded fallback) |
| Analyze | Entity + field set (degraded fallback, no fabricated statistics) |
Output is guard-filtered via BaseContext::evaluated_guards and verbosity-aware
(Verbosity::Full / Verbosity::Brief).
Usage
use ;
use TextRenderer;
use Renderer;
let service = new
.display_name
.field
.field;
let intents = derive_intents;
let ctx = default;
let text = TextRenderer.render.unwrap;