Skip to main content
Every value flowing between nodes has a type. Runchat colour-codes parameters and edges by type so you can see at a glance what kind of data is moving. When you connect parameters of different types, Runchat automatically casts the value, and you’ll see a gradient edge to indicate the cast.

Files and URLs

Images, videos, audio, 3D meshes, PDFs and other binary files are always uploaded to Runchat’s storage and represented as URL strings. This keeps workflow file sizes small and latency low. When you wire a file output into another node, what flows is the URL, not the file content.

Objects

JSON objects are key-value structures used to represent properties of things. Many third-party APIs (language models, YouTube, Maps, etc.) return data as objects, so Runchat works with them natively.
{
  "key": "value",
  "nested": {
    "another": "object"
  }
}
The Object input lets you build keys and values directly, including nested objects.

Lists and arrays

All parameter data is stored internally as an array. When a parameter holds more than one item, the node shows pagination controls so you can step through inputs and outputs. List behaviour (each, all, flatten) is controlled by depth, not by a separate “list” type. See Data Structure for how depth works.

Casting between types

You can connect any two parameters. Runchat casts the value automatically using these rules:
  • To text: numbers and booleans stringify; messages and contexts extract their text content; images use their flattened URL.
  • To number: text parses to a number (0 if not parseable); booleans become 1 or 0.
  • To boolean: text “true” (case-insensitive) becomes true, anything else false.
  • To object: messages and contexts extract as JSON; images become { imageUrl, layers }; text is parsed as JSON.
  • To message or context: URL strings become image messages; PDFs become file data.
  • To URL: extracts the URL from messages or images; text passes through.
  • To code, markdown or HTML: extracts code blocks or text from messages.
Cast edges render as a gradient between the source and target type colours.

Type reference

The full list of types Runchat understands. Connect any two and casting is automatic.

Text

ColourTypeNotes
stringPlain text
markdownMarkdown-formatted text

Numbers and logic

ColourTypeNotes
numberNumeric value, integer or decimal
booleanTrue or false

Code and markup

ColourTypeNotes
codeSource code, any language
htmlHTML markup
formatJSON schema or other formatting instructions

Media

ColourTypeNotes
imageURL string, optionally with layers
videoURL string
audioURL string
mesh3D model URL (.glb, .ply, etc.)

Files and identifiers

ColourTypeNotes
fileGeneric file URL
pdfPDF document URL
modelGenerative model identifier

Chat

ColourTypeNotes
messageA single chat message with role and content
contextA collection of messages

Collections

ColourTypeNotes
objectJSON object
arrayList of items

UI and control

ColourTypeNotes
instructionInstructional text passed to an agent
selectA list of choices and the current selection
triggerSignal to fire a downstream action
nullAbsence of a value

Next steps