Creating Tasks from Projects, Tickets & Messages
The strongest pattern in ClientCove is that work doesn't get lost β anything you discuss with a client, anything assigned on a board, anything emailed in, can become a task in your personal My Tasks queue with one click (or no clicks at all).
Five Origins, One Inbox
Every task records its origin in the task_created_from field:
| Origin | Created by | Trigger |
|---|---|---|
manual | The user typing in My Tasks | Inline Add Task or Quick Add modal |
project_card | The system | A user is assigned to a project card AND sync is enabled |
ticket | The user clicking a button | "Add as Task" on a ticket toolbar |
message | The user clicking a button | Task icon on a chat message bubble |
email | The system | Inbound email matches a configured task route |
You can filter the My Tasks list by origin using the Type filter (Project / Ticket / Manual).
From a Project Card
When project-task sync is enabled (see next section), tasks are created automatically as you work on a project board:
Trigger
A user is assigned to a project card (Board or List view) β the system creates a personal task for that user with:
- Title copied from the card title
- Notes copied from the card description
- Due date copied from the card's end date (if set)
- Priority copied from the card's priority label (if set)
- Sync with Project Card flag = true (changes to the card propagate to the task)
- Related Project field set
- Related Card ID set
task_created_from=project_card
Card task badge
Tasks created from project cards display a kanban-icon badge under the title:
π² #1042 - Website Redesign
Clicking the badge opens the project workspace and jumps to that card.
Two-way updates
When sync is on:
- Card title / description / due date / priority changes β task updates
- Marking the task complete β checks the "Is Complete" box on the card
- Removing the user from the card β archives the task (does not delete history)
Project-Task Sync Settings
Sync is decided in this order (highest priority wins):
- Card-level setting β
add_to_task_boardtoggle on the individual card - Project-level setting β
auto_create_tasks_from_cardson the project - Global setting β
tasks_from_projects_enabledoption (default: ON)
To turn sync off for one card while keeping it on for the project, toggle the card-level option to OFF in the card detail modal.
To turn it off project-wide, set the project-level option in the project's settings.
To turn it off across the whole portal, switch the global option in Settings β Core Features β Project & Task Settings.
From a Ticket
Convert any open ticket into a task with the Add as Task button.
Where the button lives
In the single-ticket toolbar, between the status and the priority controls. It only shows for tickets that are not closed.
The Create Task modal
Click Add as Task and a modal opens, pre-filled with:
- Title β copied from the ticket's
postname - Notes β copied from the ticket description
- Client β read-only badge showing the ticket's client
- Reference β small badge "from Ticket #123" with a link back
You then choose:
Assignment
- For Myself β assigns the task to the logged-in user (default)
- Assign to Another User β reveals a dropdown grouped by:
- Administrators
- Editors
- Representatives
- Users from the related client
Due Date
Three quick options:
- Today
- Tomorrow
- Custom date picker
Priority
Low / Medium / High
Additional notes
Free-form text appended to the auto-copied notes.
Result
Click Create Task. ClientCove:
- Creates the task via the REST API (
/wp-json/clientcove/v1/tasks) - Sets
task_relatedto the ticket post object - Sets
task_created_from=ticket - Returns to the ticket with a success toast that includes a link to the new task
The task displays a ticket badge under the title:
π« Need help with billing dashboard
Clicking the badge opens the original ticket.
From a Message
Inside any conversation, you can extract one or more tasks from a chat message.
Trigger
- Hover any message bubble in a conversation thread
- Click the task icon that appears in the bubble's toolbar
- The Create Task from Message modal opens
Bulk task extraction
If the message contains a bulleted or numbered list, each line becomes its own task:
- Update the homepage hero
- Push the staging deploy
- Email the QA team
β¦creates three tasks. Leading bullet markers (-, *, β’, 1., 2.) are stripped automatically.
If the message has no list markup, the whole message becomes a single task.
Modal fields
- Tasks β preview of the lines that will become tasks (editable)
- Due Date β optional
- Priority β Low / Medium / High (default Medium)
- Recurrence β None / Daily / Weekly / Bi-weekly / Monthly (default None)
- Client β auto-populated from the message thread's client
- Tags β multi-select
Click Create Tasks. Each line creates one task linked back to the source message via post meta _source_message_id.
From an Inbound Email
For email-driven workflows, ClientCove can create tasks from emails sent to a configured address.
Setup
In Settings β Inbound Email, define a route:
- Inbound address β the email destination (e.g.
tasks@yourdomain.com) - Action β set to Create Task
- Optionally restrict by sender domain or whitelist senders
What happens on receipt
When an email arrives at the configured address:
- ClientCove parses the message via the SendGrid Inbound Parse webhook
- Identifies the sender β if a client user is matched, the task is assigned to that client
- Calls
cove_create_task_from_email()to create the task - Title = email subject
- Notes = email body (text part, with HTML stripped)
task_created_from=email- Author = the matched user (or a configured fallback)
The task lands in the recipient's My Tasks queue, exactly like a manually created task β but with the email origin tracked.
Attachments
Attachments on the inbound email are saved to the WordPress media library and linked to the task as references.
How Source Links Display
Tasks created from non-manual sources show a colored badge under the task title:
| Origin | Badge | Color | Click action |
|---|---|---|---|
| Project card | Kanban icon + project number + card title | Blue | Opens project, jumps to card |
| Ticket | Ticket icon + ticket title | Cyan | Opens the ticket |
| Message | (no badge by default; trace via _source_message_id meta) | β | β |
| (no badge by default; trace via author / created date) | β | β |
The badge is independent of whether sync is active β it always points back to the origin.
Tip: When you complete a task created from a project card with sync enabled, the original card auto-checks its "Is Complete" box. This is the cleanest way to keep a personal task list and a team kanban board in lockstep without duplicate data entry.