Skip to content

rem-task ​

Run one of Rem's existing tasks and wait for its result.

When to use it ​

Use this node to chain Rem tasks: each task runs after the previous one finishes, and can be given the previous task's result. The run is the same as pressing Run on the task in Rem, with Rem's worker, independent review, project access checks and task thread.

Example ​

rattish
Rattish: 1

Workflow:
  name: Draft then publish

Node draft:
  type: rem-task
  task-id: "1c308150-37b0-4402-8613-fe427332f64e"
  to: publish

Node publish:
  type: rem-task
  task-id: "c6419914-1515-4326-a670-f110a59dcb71"
  instructions: "Use what the draft step produced: {{draft}}"
  with:
    draft: node.draft.output.result
  needs: draft

In the workflow editor, choose the task by title from the Rem task list; you don't need to copy its ID. Quote IDs written by hand.

instructions are added to the task's goal for this run only, as a follow-up would be. The task itself isn't changed, so its next scheduled run uses its own goal.

Waiting, failures and stopping ​

With wait: true (the default) the node waits until Rem finishes the run:

  • A run that succeeds passes its result to the next steps.
  • A run that fails, couldn't finish, was stopped in Rem or ended with an unknown result fails the node with the run's state and summary. Use allow-fail and a when failed route to continue anyway.
  • A task that needs your answer fails the node with needs_user: true in the error details. Answer it in Rem, then run the workflow again.

When the node times out or the workflow is stopped, Rem stops the run the node started.

With wait: false the node succeeds as soon as the run is queued and passes on state: queued. Stopping the workflow afterwards doesn't stop that run.

A task that is already running for something else isn't taken over: the node fails with RATTISH_REM_BUSY. A resumed workflow whose node had started a run that is still going waits for that run instead of starting a second one; its output then has attached: true.

Rem must be running. With no Raticode backend running Rem, the node fails with RATTISH_REM_UNAVAILABLE before queueing anything. If Rem stops for more than a minute while the node waits, the node fails and stops the run it started.

Configuration ​

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

FieldTypeRequired / defaultMeaning
task-idstringRequiredThe Rem task to run.
instructionsstring""Extra instructions for this run only.
waitbooleantrueWait for the run to finish and fail the node if it doesn't succeed.

Inputs and output ​

Bind this declared port through with:

PortValue type
instructionsstring

Successful output fields use these exact selector names:

FieldValue type
task_id, run_id, thread_idstring
titlestring
statestring: succeeded, or queued when not waiting
succeededboolean
summarystring, Rem's short summary of the run
resultstring, the worker's final answer (first 20,000 characters)
artifactslist of report and file paths the run saved
attachedboolean

A failed node keeps the same fields in its error output, and its error details hold task_id, run_id, state, thread_id and needs_user.

Errors ​

CodeMeaning
RATTISH_PREFLIGHT_REM_TASK_UNAVAILABLEThe task doesn't exist or was deleted; checked before the workflow starts.
RATTISH_REM_TASK_UNAVAILABLEThe task was deleted after the workflow started.
RATTISH_REM_UNAVAILABLERem isn't running, or stopped while the node waited.
RATTISH_REM_BUSYThe task is already running for something else.
RATTISH_REM_TASK_FAILED, RATTISH_REM_TASK_BLOCKED, RATTISH_REM_TASK_OUTCOME_UNKNOWNThe run didn't succeed.
RATTISH_REM_TASK_CANCELLEDThe run was stopped in Rem (error kind cancelled).

Preflight and limits ​

The task must exist in this Raticode data folder's Rem. Rem checks the task's project and folder access when the run starts, so a task whose project you removed from Rem ends as couldn't finish, as it would from Rem. Runs use Rem's worker and reviewer models and count toward your provider usage.

Continue with rem-prompt or the Node reference.