Skip to main content
Workflow JSON files live in .kiwi/workflows/. Pages reference them with frontmatter keys workflow and state. Base path: http://localhost:3333/api/kiwi.

List and read

Returns a single workflow definition.

Save definition

Body is the full workflow JSON. The server sets name from the URL segment and validates structure.

Delete a workflow

Removes a workflow definition. Pages referencing this workflow keep their current state but can no longer be advanced.

Assign a page to a workflow

Sets the workflow and state frontmatter fields on the page. Use this to onboard a page into a workflow for the first time.

Advance a page

  • Requires the page to have workflow and state in frontmatter.
  • Validates (state → target_state) against the workflow’s transitions.
  • Writes the page with updated state via the normal pipeline.
Returns 409 when the transition is not allowed.

Reorder items on the board

Sets the display order of pages within a workflow state column. The paths array defines the new order top-to-bottom.

Kanban board

Returns { "workflow": { ... }, "board": { "<state>": [ { "path", "title", ... } ] } } grouping markdown pages that declare the given workflow name.

MCP parity

kiwi_workflow_list, kiwi_workflow_get, kiwi_workflow_save, kiwi_workflow_advance, kiwi_workflow_board — see MCP.
Last modified on May 31, 2026