Slips & printing

Slip blocks reference

Every block and helper node you can use on the slip canvas.

A slip is built by wiring blocks together on a canvas. This page lists them all. New to slips? Start with Slips and Building a slip.

Output blocks#

These appear on the printed slip, top to bottom, in the order you place them in the output.

BlockWhat it showsKey options
TextText, including {{variables}} from other nodesAlign, size (small/medium/large), bold, underline, invert
ImageAn imageSource: AI-generated, a URL, or a file
QR CodeA QR codeFrom text or a variable
HTMLRendered HTML, captured to an image
WebsiteA screenshot of a web pageURL
SeparatorA horizontal lineSingle or double
SpacerVertical spaceHeight
CutCuts the paper into separate receipts

Helper nodes#

These provide data and logic to the output blocks. They don't print themselves — their outputs become {{variables}} you can use downstream.

NodeWhat it does
TaskExposes the current task's fields as variables (one per canvas)
AI PromptGenerates text with named output variables, using your AI model
ConstantA fixed value
RandomA random number in a range, or a pick from a list
ConditionalOutputs one of two values based on a test (equals, contains, greater/less than, regex…)
JSON ParserExtracts values from JSON at property paths
JavaScriptRuns JavaScript and outputs the result
ShellRuns a shell command and outputs the result

Code blocks run on your Mac

The JavaScript and Shell nodes execute real code on your computer when a slip runs. Only run slips you built or trust.

Task node variables#

The Task node exposes these variables:

VariableValue
name, content, contentPlainTitle and notes (rich and plain)
projectName, projectPathThe task's project
heading, headingDayIts heading and day heading
startDate, deadlineIts dates
isCompleted, completedAt, createdAtStatus and timestamps
tagsIts tags
subtasks, subtaskProgress, subtasksJsonChecklist, progress (e.g. 2/4), and raw data
focusTimeTime tracked (e.g. 1h 30m)
recurrenceIts repeat rule

Drop any variable into a Text block with double braces — for example {{name}} for the task's title, or {{subtasks}} for a printed checklist.