DocsIssuesCreate Issues
Back
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="..."