Start a workflow from the iPhone Action button

This commit is contained in:
Ian Gulliver
2026-10-22 17:02:49 -07:00
parent f8fde62aab
commit 9df0c800dc
13 changed files with 724 additions and 370 deletions
+32 -5
View File
@@ -61,6 +61,24 @@ paths:
schema: { $ref: "#/components/schemas/User" }
"400": { $ref: "#/components/responses/Error" }
/api/me/quick-run:
put:
operationId: updateQuickRun
description: Sets the workflow, and the project it runs in, that the calling user's iPhone starts from its Action button; both empty turns it off.
requestBody:
required: true
content:
application/json:
schema: { $ref: "#/components/schemas/QuickRun" }
responses:
"200":
description: The updated user.
content:
application/json:
schema: { $ref: "#/components/schemas/User" }
"400": { $ref: "#/components/responses/Error" }
"404": { $ref: "#/components/responses/Error" }
/api/me/away:
put:
operationId: updateAway
@@ -1476,7 +1494,7 @@ components:
User:
type: object
required: [login, display_name, git_name, git_email, notification_prefs, default_model, away]
required: [login, display_name, git_name, git_email, notification_prefs, default_model, away, quick_run]
properties:
login: { type: string }
display_name: { type: string }
@@ -1485,6 +1503,15 @@ components:
notification_prefs: { $ref: "#/components/schemas/NotificationPrefs" }
default_model: { type: string, description: The model the app starts new tasks on. }
away: { type: boolean, description: "While true, byre answers the questions agents ask in this user's tasks at once." }
quick_run: { $ref: "#/components/schemas/QuickRun" }
QuickRun:
type: object
description: The workflow the iPhone's Action button starts with a typed prompt, and the project it runs in; both empty when none is set.
required: [project_id, workflow]
properties:
project_id: { type: string }
workflow: { type: string }
Away:
type: object
@@ -1658,11 +1685,11 @@ components:
title:
type: string
description: >
The task's title. Without it the task starts untitled, and its agent names it with set_titles.
Required with workflow.
The task's title. Without it the task starts untitled, and its agent names it with set_titles, or with
workflow, the run is titled with the workflow's name.
prompt:
type: string
description: Starts the task's agent with this as its first message, in the same request. Not with workflow.
description: Starts the task's agent with this as its first message, in the same request. With workflow, the run's brief in place of the title.
images:
type: array
items: { type: string }
@@ -1673,7 +1700,7 @@ components:
description: >
The name of a saved workflow to run instead of creating one task with no agent: the run gets a task of its
own, titled with the title, and each stage that starts it becomes its subtask, titled "<title>: <stage>",
with the title as the run's brief. The response is the run's task.
with the prompt, or else the title, as the run's brief. The response is the run's task.
WorkflowSummary:
type: object