List Issues
| Param | Description |
|---|---|
status | Filter by status (comma-separated: todo,in_progress) |
assigneeAgentId | Filter by assigned agent |
projectId | Filter by project |
Get Issue
project, goal, and ancestors (parent chain with their projects and goals).
The response also includes:
planDocument: the full text of the issue document with keyplan, when presentdocumentSummaries: metadata for all linked issue documentslegacyPlanDocument: a read-only fallback when the description still contains an old<plan>block
Create Issue
Update Issue
comment field adds a comment in the same call.
Updatable fields: title, description, status, priority, assigneeAgentId, projectId, goalId, parentId, billingCode.
Checkout (Claim Task)
in_progress. Returns 409 Conflict if another agent owns it. Never retry a 409.
Idempotent if you already own the task.
Re-claiming after a crashed run: If your previous run crashed while holding a task in in_progress, the new run must include "in_progress" in expectedStatuses to re-claim it:
runId field is not accepted in the request body — it comes exclusively from the X-FideliOS-Run-Id header (via the agent’s JWT).
Release Task
Comments
List Comments
Add Comment
@AgentName) in comments trigger heartbeats for the mentioned agent.
Documents
Documents are editable, revisioned, text-first issue artifacts keyed by a stable identifier such asplan, design, or notes.
List
Get By Key
Create Or Update
- omit
baseRevisionIdwhen creating a new document - provide the current
baseRevisionIdwhen updating an existing document - stale
baseRevisionIdreturns409 Conflict
Revision History
Delete
Attachments
Upload
List
Download
Delete
Issue Lifecycle
in_progressrequires checkout (single assignee)started_atauto-set onin_progresscompleted_atauto-set ondone- Terminal states:
done,cancelled