Issues
Create Issues
From the CLI
xpo add "Wire up login form"
Add metadata inline:
xpo add "Wire up login form" --label feature --desc "Use OAuth2 PKCE flow"
xpo add "Fix token refresh" --label bug --assignee "Alice <[email protected]>"
xpo add "Auth overhaul" --label epic
Issues start in BACKLOG by default. Set a different initial status:
xpo add "Urgent fix" --label bug --status PLANNED
From JSON
For complex payloads, pipe JSON to stdin:
echo '{"title": "My issue", "labels": ["feature"], "description": "..."}' | xpo add --json
Duplicate detection
By default, xpo warns if a similar issue already exists. Skip the check with --force:
xpo add "Login form" --force
Sub-issues
Create a sub-issue by setting a parent with -p:
xpo add "Subtask" -p <parent-id>
See Parent & Sub-Issues for epics, progress rollup, and status cascading.
From the web board
Open the board with xpo board and click the + button or use the command palette (Cmd/Ctrl + K). Set the title, labels, parent, and assignee from the dialog.
From the MCP server
AI agents create issues through the add tool, which accepts all the same fields:
mcp__xpo__add title="Wire up login form" labels=["feature"] description="..."