Prompt, converter & output
Most graphs start with text, reshape it, and land it somewhere. These three nodes cover that spine.
✎ Prompt
Section titled “✎ Prompt”A pure source: free text out, no input handle.
Type in the node body. At run time threadle substitutes {{param:name}} from the workflow’s ≔ params, then validates the result against the node’s declared value type.
The header dropdown picks that type — a ComfyUI-style primitive:
| Type | Accepts |
|---|---|
| text | anything (default) |
| int | ^[+-]?\d+$ |
| float | any finite number |
| bool | true / false / 1 / 0 |
| json | must JSON.parse |
A mismatch fails the node: prompt is typed int but not an int: "…".
Types also gate wiring. A source may feed a target when the types match, when the target is text, or when int widens to float. Anything else is refused at connect time.
{{param:…}} placeholders that name no declared param are left visible rather than blanked.
⇄ Text → Prompt
Section titled “⇄ Text → Prompt”The converter wraps inbound text in a template. It requires an input — an unwired converter is a loose end.
Multiple inbound wires are joined with a blank line before templating. {{param:…}} is substituted in the template too.
| Template | Result |
|---|---|
contains {{input}} | every {{input}} replaced with the joined text |
non-empty, no {{input}} | template + blank line + input (append) |
| empty | input passes through unchanged |
New converters are dropped with {{input}} already in the box.
Review this diff and list only blocking problems:
{{input}}⇤ Output
Section titled “⇤ Output”A sink for results. It stores the text on the node (content), so a finished graph still shows its answers after a reload.
- Render mode —
auto·text·markdown·html·svg.autosniffs the content: a leading<svg, a leading<!doctype html>/<html>, the first fenced block that looks like SVG or HTML, markdown syntax, else plain text. The detected mode shows as a badge next to the title. - HTML renders inside a
sandbox=""iframe; SVG renders inline. - Resizable — drag the corners when selected; the size persists on the node.
- ↻ pulls the last assistant message from a session node wired into it, without running the graph.
- Output re-emits its text, so you can chain one onward. Captured text is capped at 200,000 chars.
Output refuses a few inbound types on purpose — prompt, skill, rules and context cannot wire straight into it. Output is for results; convert first, or route through an agent.
Wiring example
Section titled “Wiring example”✎ Prompt ──▶ ⇄ Text → Prompt ──▶ ⟨/⟩ Agent ──▶ ⇤ Output "auth.ts" "Review this…" claude markdownThe prompt supplies the raw subject, the converter turns it into an instruction, the agent runs it through a provider CLI, and the output captures the reply.
Drop a Knot in front of the output to merge several branches, or an Iterator in front of the agent to run it once per line.
Related
Section titled “Related”- Nodes overview — the full palette
- Iterator — fan one text into many runs
- Agents & sessions — what consumes these prompts
- Knot — merging inbound text wires
- Graph & wires — lanes, params, run order