DocsIssuesComments
Back
Issues

Comments

Comments create a discussion thread on any issue. Use them to record decisions, share findings, or leave context for the next person — or agent — who picks up the work.

Add a comment

xpo comment <id> "Fixed in auth.go — the token wasn't being refreshed on 401"

Comments support full markdown. For multi-line comments, pipe from stdin:

xpo comment <id> <<'EOF'
## Root cause
The refresh token was stored in a cookie with `SameSite=Strict`,
which prevented it from being sent on cross-origin redirects.

## Fix
Changed to `SameSite=Lax` and added a fallback retry.
EOF

View comments

xpo comments <id>

Shows the full conversation history with timestamps and authors.

From JSON

echo '{"body": "comment body"}' | xpo comment <id> --json

Prints {"id": "<id>"} on success. Unknown fields are rejected, so a typo fails loudly instead of being ignored. See Scripting with JSON.

Agent comments

When agents work on issues via MCP, their comments are attributed to both the agent and the person it works for. The board shows the person's name with a dashed underline, and hovering it reveals the agent — "Claude Code for Alice". xpo comments shows "Alice (via Claude Code)" (see Agent identity). This creates a clear record of what the agent did, and who is accountable for it.

History

Every comment is part of the issue's full history:

xpo history <id>

This shows all events — including comments — with timestamps and authors. Each change reads as a sentence, the same on the board and in the CLI: "set priority to High", "removed the assignee", "added this issue to Cycle 12", "cleared the estimate".