Skip to content

rem-prompt ​

Send a prompt to Rem and pass its reply to the next steps.

When to use it ​

Use this node when a step needs Rem's answer: a summary, a decision written in words, or a question about your tasks and projects. The prompt goes to Rem's chat, so Rem answers with its memories and context, and the message shows there as coming from the workflow.

Example ​

rattish
Rattish: 1

Workflow:
  name: Release digest

Node notes:
  type: read-file
  path: CHANGELOG.md
  to: ask

Node ask:
  type: rem-prompt
  prompt: "Summarize these release notes in three bullets: {{notes}}"
  with:
    notes: node.notes.output.content
  needs: notes
  to: save

Node save:
  type: write-file
  path: digest.md
  with:
    stdin: node.ask.output.reply
  needs: ask

prompt is required and may use placeholders filled from with bindings. A bound prompt port replaces the authored text.

What Rem may do ​

By default Rem only answers. If its answer would start, change, cancel or delete a task, save or change a memory, or send a file, that part is dropped and the reply says so; actions_dropped is then true. Workflow prompts often carry text from files, web pages or commands, and this keeps that text from starting work.

Set allow-actions: true to let Rem act on the prompt as it would on a message you typed. Tasks it starts still go through Rem's own checks, such as the projects and folders you approved. With wait-for-tasks: true the node also waits for the work Rem started and fails if any of it doesn't succeed.

Be careful with allow-actions: true in a workflow that a webhook or file trigger starts: the webhook's body or the watched file can be written by someone else, and that text can reach the prompt. Raticode tells Rem when a webhook or file trigger started the run, and Rem then does only what the prompt plainly asks and describes, rather than acts on, any work that text inside it asks for. The backend log also records a warning for each such prompt. Keep these prompts answer-only when you can, and pass outside text through a step that checks it first.

Waiting and stopping ​

The node waits until Rem has answered. If Rem is replying to something else, the prompt waits in line like any message you send. Rem must be running: with no Raticode backend answering, the node fails with RATTISH_REM_UNAVAILABLE instead of waiting. If Rem stops for more than a minute while the node waits, the node fails the same way.

When the node times out or the workflow is stopped, a prompt Rem hasn't started on is taken back. A prompt Rem is already answering still gets its answer in Rem's chat. Work Rem started for an allow-actions prompt keeps running; it is Rem's work now, as if you had asked.

Configuration ​

Configuration fields use hyphens. These are the node-specific fields; shared execution fields apply separately.

FieldTypeRequired / defaultMeaning
promptstringRequiredThe message Rem receives.
allow-actionsbooleanfalseLet Rem start or change tasks, memories and files for this prompt.
wait-for-tasksbooleanfalseWait for any work Rem started and include its result.

Inputs and output ​

Bind this declared port through with:

PortValue type
promptstring

Successful output fields use these exact selector names:

FieldValue type
replystring, Rem's answer
detailsstring, the longer explanation Rem shows under "Details", or empty
request_idstring, the chat message the workflow sent
message_idstring, Rem's reply message
actions_droppedboolean
taskslist of {task_id, run_id, title, state, succeeded, summary, result, artifacts, thread_id} for work Rem started or continued

For example, refer to node.ask.output.reply from a downstream binding.

Errors ​

CodeMeaning
RATTISH_REM_UNAVAILABLENo Raticode backend is running Rem, or Rem stopped while the node waited.
RATTISH_REM_BUSYRem already has five messages waiting.
RATTISH_REM_PROMPT_FAILEDRem couldn't answer; the message is Rem's explanation.
RATTISH_REM_PROMPT_LOSTRem's chat history was cleared before it answered.
RATTISH_REM_TASK_*With wait-for-tasks, work Rem started failed, was stopped or ended uncertainly.

Preflight and limits ​

Rem must have been set up in this Raticode data folder. The node uses Rem's chat model, so each run costs a Rem reply. Rem's reply is at most 4,000 characters; longer material is in details.

Continue with rem-task or the Node reference.