Tickets

Projects

Group related tickets into projects, track progress as a whole, and archive projects when they ship.

Projects

Projects group related tickets into a single deliverable — a database migration, a quarterly capacity plan, an architecture upgrade. Where a ticket asks "what is the next thing to do?", a project asks "what are we trying to ship?"

Projects are workspace-scoped. A ticket can belong to at most one project at a time.

Create a Project

  1. Open Projects in the sidebar
  2. Click New project
  3. Fill in the form:
    • Name — required, free-form
    • Description — optional Markdown blurb explaining scope and success criteria
    • Lead — optional member who is accountable for the project
    • Priority — optional, same levels as tickets (Low / Normal / High / Urgent; Normal is the default)
    • Icon — optional emoji or icon to visually identify the project
    • Color — visual marker shown next to ticket rows that belong to the project
    • Start / target date — optional dates that drive the progress widgets
  4. Click Create

The new project lands in the Active group in the sidebar.

Project Statuses

StatusDescription
ActiveActively being worked on. Default for new projects.
PausedWork temporarily paused — waiting for dependencies, a key hire, or external input.
CompletedAll work done. The project is finished but kept visible for reference.
ArchivedHidden from default views. Use this to clean up the sidebar without losing history.

Change a project's status from its overflow menu. Projects in Completed or Paused still appear in the sidebar under their respective groups; only Archived projects move to the Archive group.

Add Tickets to a Project

There are three ways to put a ticket into a project:

  • From the ticket detail panel — open the Project field and pick one
  • From the project detail page — click Add tickets and multi-select existing tickets, or click New ticket to create one already attached
  • At ticket creation — select the Project field in the new-ticket form

Removing a ticket is the inverse: clear the Project field on the ticket, or use the project page's overflow menu.

Project Views

Each project page has three built-in views:

ViewWhat it shows
ListFlat list of every ticket in the project, with the same columns and filters as the workspace ticket list. Good for triage and bulk editing.
BoardKanban board grouped by status. Drag a card to move it across statuses. Good for daily health checks.
TimelineTickets plotted between their start and target dates. Good for spotting at-a-glance whether the project is on track.

The header also shows aggregate progress — counts per status and a percentage based on tickets that have reached Done.

Archive a Project

When a project ships (or is cancelled), archive it to clean up the active sidebar without losing history.

  1. Open the project
  2. Click the overflow menu in the header
  3. Choose Archive project

Archived projects move to the Archive group in the sidebar. Their tickets are not deleted; archiving the project does not change the tickets' statuses. You can unarchive at any time from the same menu.

Archive is reversible. To permanently delete a project (and detach all its tickets), use the Delete action in the same overflow menu — this is irreversible.

Permissions

Project operations are controlled by RBAC permission scopes:

OperationRequired ScopeOwnership Rule
Create projectprojects:write
Edit project (name, description, priority, owner)projects:writeSelf-only: only the project owner can edit
Delete projectprojects:deleteSelf-only: only the project owner can delete

When a role's ownership rule is set to any, members with that role can edit or delete any project in the workspace. When set to self-only, they can only modify projects they own.

The project owner defaults to the creator and can be changed from the project detail page by anyone with workspace-wide projects:write access.

Command-line Reference

Attach a ticket to a project

The ticket create / ticket update --project flag takes a project UUID, not a slug. Find the UUID with mopheus project list (or use --full-id to see the complete UUID).

# Create a ticket directly attached to a project
mopheus ticket create --title "Add read replica" --project <project-uuid>

Manage projects

The project command group manages projects directly from the CLI. Status names are active, paused, completed, archived.

# List projects (filter by status, show full UUIDs)
mopheus project list
mopheus project list --status active --full-id

# Get a single project
mopheus project get <project-id>

# Create a project (--name is required)
mopheus project create --name "Q3 capacity plan" --description "Scale-out work"

# Update a project (only provided flags change)
mopheus project update <project-id> --name "New name" --color "#3b82f6"
mopheus project update <project-id> --status paused

# Set just the status (shorthand for update --status)
mopheus project status <project-id> active

# Delete a project (detaches its tickets; use --yes to skip the prompt)
mopheus project delete <project-id> --yes

Manage tickets within a project

# Add / remove a ticket from a project
mopheus project ticket add <project-id> <ticket-id>
mopheus project ticket remove <project-id> <ticket-id>