Request types

Every job starts as an intake in jobs/0_new/. Its Type decides everything that follows: which layer it runs in, which prompt drives it, and which fields its JOB.md carries. This section lists the types in the same order and grouping as the intake form, and gives each one a page explaining what it is for, how its flow runs, the logic that routes it, and the fields you set.

Open the intake form

The registry at _processes/_shared/request-types.md is the single source of truth; the intake form, the orchestrator's routing, and these pages all derive from it.

Two rows fold in a sub-mode — exactly as the form does. The form shows Quick fix as one row with a Task / Collaborative toggle (Task fixes → quick_fix, action; Collaborative session → quick_fix_collab, operation op-card, direct-invoked), and Doc HTML as one row with an Upkeep / Create toggle (Upkeep → doc_upkeep, Create → doc_create). These pages mirror that: one page each, documenting both modes. They remain distinct backend types with distinct routing.

How an intake is routed

After pickup, the orchestrator reads JOB.md → Type, looks up its layer in the registry, and routes before any stage runs. The three layers are pipeline (runs the staged lifecycle), action (runs its own prompt outside the pipeline), and operation (user-invoked op-cards that record their work).

The main job lifecycle

Pipeline jobs (and the queue moves the orchestrator performs for every job) flow through the fixed Kanban queues. Action and operation jobs use the same queues but skip the stage loop; they reach 4_done/ through their action prompt or born-complete operation record, not by completing a stage checklist.

Pipeline types

Run the main staged lifecycle (clarify → brainstorm → plan → execute → test → document → review → validate) under the orchestrator. Disabled stages are skipped per the type's preset.

Action types

Run their own logic outside the stage pipeline — each is a self-contained prompt or its own mini-orchestrator. The main orchestrator hands the job off and does not enter the stage loop.

Operation types (op-cards)

User-invoked op-cards for setup and queue management. You start them by sending the prompt path directly; each records its work as an operation_record born in 4_done/.

Where did the others go? The form folds the live Collaborative quick-fix (quick_fix_collab) into the Quick fix row, and Create (doc_create) into the Doc HTML row — so they are documented on those pages. An 18th type, operation_record, is reserved and non-intake (ops agents author it automatically to record an action in 4_done/); it never appears in the form and has no page.

All rows at a glance

The same fifteen rows the intake form's type dropdown shows, in the same order.

Intake-form request types (source: _processes/_shared/request-types.md)
Row (as in the form)LayerBackend type(s) / modesPrompt path
Featurepipelinefeature_processes/02_orchestrator/orchestrator.prompt.md
Bugpipelinebug_processes/02_orchestrator/orchestrator.prompt.md
Brainstormpipelinebrainstorm_processes/02_orchestrator/orchestrator.prompt.md
Doc revalidatepipelinedoc_revalidate_processes/02_orchestrator/orchestrator.prompt.md
App planpipelineapp_plan_processes/02_orchestrator/orchestrator.prompt.md
Auditactionaudit_processes/03_action/audit/audit.prompt.md
Quick fixTask: action
Collaborative: operation
Task fixes → quick_fix · Collaborative session → quick_fix_collab (op-card, direct-invoked)…/quick_fix/quick_fix.prompt.md · …/quick_fix/collab.prompt.md
Doc HTMLactionUpkeep → doc_upkeep · Create → doc_create…/doc_upkeep/doc_upkeep.prompt.md · …/doc_create/doc_create.prompt.md
Code-review fixactioncodereview_fix_processes/03_action/codereview_fix/codereview_fix.prompt.md
App initoperationapp-init_processes/00_app/app-init.prompt.md
App updateoperationapp-update_processes/00_app/app-update.prompt.md
App installoperationapp-install_processes/00_app/app-install.prompt.md
Claude/Agents MD filesoperationclaude-agents-md-files_processes/00_app/claude-agents-md-files.prompt.md
Promoteoperationpromote_processes/_operations/promote/promote.prompt.md
Extendoperationextend_processes/_operations/extend/extend.prompt.md

Host-authored custom request types

Beyond the built-in rows above, a host application can define its own custom request types at runtime (D-74) — reusable canned flows meaningful only to that project — without committing anything to the workflow repo.

Each custom type is one JSON file in a gitignored app-request-types/ folder at the workflow root (per-host state, exactly like app.md / config.json). It maps onto a built-in pipeline base type (feature / bug / brainstorm) via a flow.kind: pipeline_recipe declaration carrying a canned mandate and/or a folder-local prompt. It surfaces in the intake form's request-type picker only in Docker/API (helper) mode — the offline static form shows the built-in types only — and the orchestrator's creation/bootstrap step re-reads the JSON as the authority, mapping the job onto its base-type pipeline and failing closed if the entry or its prompt is missing or invalid.

Full walkthrough. This page only points at the mechanism. To add one, follow the usage walkthrough in _docs/how-to-use.md → Adding your own custom request type and the authoring recipe in _docs/how-to-extend.md → Adding an app-local custom request type (host-authored); the field-by-field JSON contract is _processes/_shared/schemas/APP_REQUEST_TYPES.md.