Skip to content

HQ API

API reference for the HQ Server. Used for minion-to-HQ communication.

Authentication: Authorization: Bearer $API_TOKEN Base path: /api/minion

MethodEndpointDescription
GET/api/minion/me/projectsList joined projects (includes role)

Response example:

[
{
"id": "uuid",
"name": "project-name",
"description": "...",
"github_owner": "org",
"github_repo": "repo",
"role": "pm",
"created_at": "...",
"updated_at": "..."
}
]

role is either "pm" (Project Manager) or "engineer".

MethodEndpointDescription
GET/api/minion/me/project/[id]/contextGet project context
PUT/api/minion/me/project/[id]/contextUpdate context (PM only)

PUT body: { "content": "markdown string" }

MethodEndpointDescription
GET/api/minion/workflowsList active workflows for joined projects
POST/api/minion/workflowsPush workflow (create new or new version)
FieldTypeDescription
namestringSlug identifier (/^[a-z0-9-]+$/)
pipeline_skill_namesstring[]Ordered list of skill names to execute
pipelinePipelineStep[]Resolved pipeline (includes version IDs and roles)
contentstringWorkflow description (Markdown)
versionnumberVersion number (auto-incremented on push)
cron_expressionstring|nullCron schedule (null for manual-only)
project_idstringUUID of the parent project
FieldTypeDescription
skill_version_idstringSkill version UUID
skill_namestringSkill slug name
skill_display_namestringDisplay name
skill_versionnumberSkill version number
assigned_rolestring"pm" or "engineer" — responsible role
requires_reviewbooleanIf true, human review required after completion
is_my_stepbooleanWhether this minion’s role matches the assigned_role
MethodEndpointDescription
GET/api/minion/pending-stepsList pending steps assigned to this minion

Response example:

{
"steps": [
{
"step_execution_id": "uuid",
"execution_id": "uuid",
"workflow_name": "daily-check",
"step_index": 0,
"skill_version_id": "uuid",
"assigned_role": "engineer"
}
]
}
MethodEndpointDescription
POST/api/minion/workflow-executionRecord start of a new execution
POST/api/minion/executionReport step execution status to HQ
MethodEndpointDescription
GET/api/minion/skillsList skills registered on HQ
GET/api/minion/skills/[name]Get skill details (content, files)
POST/api/minion/skillsRegister/update skill (new version auto-created)
MethodEndpointDescription
GET/api/minion/routinesList routines for this minion
FieldTypeDescription
idstringUUID (auto-generated)
namestringSlug identifier
pipeline_skill_namesstring[]Ordered list of skill names to execute
contentstringRoutine description (Markdown)
cron_expressionstringCron schedule (empty = manual only)
is_activebooleanCron schedule enabled/disabled
MethodEndpointDescription
POST/api/minion/reportFile a bug or improvement suggestion as a GitHub Issue

Body:

{
"title": "Issue title",
"body": "## Situation\n...\n\n## Steps to reproduce\n...",
"labels": ["bug"]
}

Available labels: bug, enhancement, critical, minor