LoCrew Docs

Flows

Triggers

The three ways to start a LoCrew flow: the Run button, a schedule with missed-run handling, and a /run command typed in a channel or DM, with live run cards and results posted back.

Every flow has exactly one start step. Click it and choose How does this flow start?:

OptionStart stepRun recorded as
When I press RunManual startStarted by: You
On a scheduleScheduleStarted by: Schedule
When /run is used in a conversationConversation commandLinked to that conversation. The Started by field currently shows Schedule for these runs, a known app bug.

Whatever the start step, you can always start a flow with the editor's Run button.

#When I press Run

The flow starts when you press Run. Whatever you type in Input when starting it is the start step's output (text, shown as Run input in the value picker), so later steps can use it.

#On a schedule

FieldValues
RepeatEvery day, Every week, Every few minutes or hours, or Once
On (weekly)A day of the week
At (daily, weekly)A 24-hour HH:MM time
Every (minutes)At least 5, at most 10,080 (7 days)
On (once)A date and time
If LoCrew was closed at a scheduled timeSkip the missed runs (default) or Run once when LoCrew opens
Schedule is onOn by default for a new schedule; off for templates

Next run: previews the next time, or says the schedule is off or that the time has passed. Save the flow for changes to take effect. The flow's card then shows Next run …, or Schedule finished after a one-off.

How schedules behave:

  • Schedules run only while LoCrew is open, in this computer's time zone. Nothing runs while the app is closed or the computer sleeps.
  • LoCrew checks every 30 seconds, and once at startup.
  • A run more than two minutes late counts as missed. With Skip the missed runs, LoCrew shows a notification, Skipped a missed run of "…". With Run once when LoCrew opens, one run covers all the missed times.
  • If the previous run of the flow is still going: Skipped a scheduled run of "…" — The previous run is still in progress.
  • If the flow cannot start (for example it has problems): Scheduled run of "…" did not start, with the reason. The schedule is kept.
  • Daylight saving: a time that does not exist (spring forward) runs at the first moment that does, so 02:30 becomes 03:30; a time that happens twice (fall back) runs once.
  • A scheduled run has no input.

#When /run is used in a conversation

Anyone in an allowed channel or DM can start the flow by typing a command. Its progress appears there as a live card, and the result is posted back. Only you can run it this way: messages from agents or other flows never do.

FieldNotes
Command/run alias. 2 to 40 lower-case letters, digits or -, starting with a letter or digit. Must be unique: /run … is already used by "…". Choose another command.
DescriptionShown when picking a command.
Input hintWhat to type after the command, for example what to review.
Require input after the commandOff by default.
Allowed inEvery channel and DM, or Only the ones I choose.
Post this step's output as the resultAutomatic (the last step that produced output) or a step you choose.
Command is onOn by default.

#Running a flow from chat

  1. In a channel or DM, type /. The composer offers /run.
  2. Pick a flow from the list, or keep typing its alias.
  3. Type the input after the alias, then press Enter:
text
/run review src/auth/session.ts

The command message is saved like any message but wakes no agent; the flow decides who works. A message with images is never treated as a command.

#The run card

A card titled with the flow's name appears in the conversation and updates live:

  • a progress bar with one segment per step, and N of M steps completed · now: …
  • buttons Review approval (when it waits for you; approvals are decided in Runs), Inspect run, View flow and Cancel.

When the run ends, the flow posts its result:

  • Completed: the chosen result step's output, cut at 3,000 characters with a note that the full output is in the run details.
  • Failed: the step that failed and why.
  • Rejected or Cancelled: a short note.

Agents in the conversation later see these posts labelled as automated, untrusted output.

#When /run is refused

LoCrew answers with a note in the conversation:

NoteMeaning
Which flow? Type /run <command>. Available here: …No alias was given.
No flow uses /run ….The alias is unknown.
/run … matches more than one flow (…). Give each a different command.Two flows share it.
"…" is turned off for conversations. Turn its command on in the flow's start step.Command is on is off.
"…" cannot be run from this conversation.Not in Allowed in.
/run … needs input: …Require input after the command is on.
"…" cannot run yet: …The flow has problems.

#What the flow receives

A run started by /run gets the text after the alias as text, and also as json.prompt (Text typed after the command).

Warning

A run started with the editor's Run button has text but no json.prompt. A step that uses {{start.json.prompt}} then fails with No value for {{start.json.prompt}}: that step did not run or did not produce it. Start such flows with /run, or use {{start.text}}, which both kinds of run provide.

Documentation for LoCrew 0.1.1, an early-development release. Found something wrong? Open an issue.

LoCrew is source available under the PolyForm Perimeter License 1.0.1. Last updated .