ek9_query_workflow
Returns one named multi-tool workflow's ordered steps (tool + one-line reason each), or with no name every workflow with workflowNames first.
When to use it
'What are the steps of the release workflow' is one call with name:'release' - the ordered tool sequence with a reason per step. Omit name for every workflow (workflowNames first).
When not to use it
- The tool inventory rather than the named sequences - use
ek9_query_tool_catalogue. - ONE tool's parameters - use
ek9_query_tool_detail.
Details
Reads the in-process static workflow registry - no coupling to workspace compile state, works from any phase. Exact name match only (the names are in workflowNames). A workflow is a recipe, not an executable: walk sequence[] in order, calling each step's tool and handling its failure before the next; every step names a registered tool.
Arguments
| Argument | Type | Required | What it is |
|---|---|---|---|
name | string | Workflow name (e.g. 'release'); omit for every workflow |
Recorded calls
Real calls, recorded against small projects and checked on every build - a changed answer fails it.
Release workflow shape
Request
{
"name" : "release"
}
Response
{
"match" : "exact",
"meta" : {
"serverMs" : "<timing>"
},
"name" : "release",
"sequence" : [ {
"reason" : "Bump the appropriate version part (typically patch after a fix).",
"tool" : "ek9_increment_version"
}, {
"reason" : "Verify nothing regressed; produces the coverage report as a side effect.",
"tool" : "ek9_run_tests"
}, {
"reason" : "Run full quality checks — coverage, complexity, readability, DI — to confirm nothing has degraded since the last release.",
"tool" : "ek9_run_quality_checks"
}, {
"reason" : "Build the deployable artefact at the new version.",
"tool" : "ek9_package"
}, {
"reason" : "Install into ~/.ek9/lib so sibling workspaces can pick it up.",
"tool" : "ek9_install_package"
}, {
"reason" : "Verify the installed version matches what was bumped.",
"tool" : "ek9_query_package_version"
...
Cut short here: 4 more lines. The whole recorded call.
All workflows shape
Request
{ }
Response
{
"meta" : {
"serverMs" : "<timing>"
},
"status" : "ok",
"workflowCount" : 4,
"workflowNames" : [ "release", "feature_branch_start", "investigate_build_failure", "investigate_runtime_defect" ],
"workflows" : [ {
"name" : "release",
"sequence" : [ {
"reason" : "Bump the appropriate version part (typically patch after a fix).",
"tool" : "ek9_increment_version"
}, {
"reason" : "Verify nothing regressed; produces the coverage report as a side effect.",
"tool" : "ek9_run_tests"
}, {
"reason" : "Run full quality checks — coverage, complexity, readability, DI — to confirm nothing has degraded since the last release.",
"tool" : "ek9_run_quality_checks"
}, {
"reason" : "Build the deployable artefact at the new version.",
"tool" : "ek9_package"
}, {
"reason" : "Install into ~/.ek9/lib so sibling workspaces can pick it up.",
"tool" : "ek9_install_package"
...
Cut short here: 70 more lines. The whole recorded call.