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