Skip to main content

Workcast

A collaborative Kanban task board built into your AI workspace.

Workcast is a full task management system inside Hrida AI Studio. Create boards for any project, break work into tasks, and move them through a structured lifecycle — from open to done. Because it lives alongside your channels and chats, you can paste a task link into a discussion, have an AI help you prioritize your backlog, or claim a task directly from the sidebar.


Why Workcast?​

Work management without leaving your AI workspace​

No separate Jira tab, no context switch. Create a task, describe it in plain language, assign it, and let your team pick it up — all from the same tool where you already do your thinking.

Structured task lifecycle​

Tasks move through defined statuses on a Kanban board. Everyone sees the same board. Moves trigger real-time updates via server-sent events — drag a card and it appears in your colleague's view within seconds.

Audit trail on every task​

Every status change, assignment, delegation, and comment is recorded in the task's activity feed. You always know who changed what and when.

Role-aware access​

Only the task creator, the assigned user, or an admin can edit a task. Anyone can view; only the right people can change.


Key Features​

🗂️ Multiple boardsCreate as many boards as you need — one per project, team, or initiative
📌 Kanban columnsSix built-in status columns that map to a real delivery workflow
📋 List viewToggle between Kanban and a flat sortable table — sort by title, status, priority, or due date
⚡ Real-time updatesBoard state syncs live via SSE — no refresh needed
🎯 Priority levelsFour priority levels with color-coded badges
📅 Due datesOptional deadline per task; overdue tasks are highlighted in red with a ⚠ indicator
👤 User pickerSearch for any user by name or email when assigning or delegating — avatar + name dropdown
🙋 Claim workflowBroadcast a task to the team; anyone can claim it
🔁 DelegationReassign a task to another user directly from the detail panel with the user search picker
✏️ Inline editingEdit title, description, priority, assignee, due date, labels, and milestone without leaving the board
🏷️ LabelsTag tasks with color-coded labels (bug, feature, docs, design, research, chore, blocked)
⬡ MilestonesGroup tasks under a milestone name — filter and view progress at a glance
🔍 FiltersFilter by My tasks, priority, label, or milestone from the board header
🔀 SubtasksBreak any task into subtasks with a progress bar on the parent card
💬 CommentsThreaded comments on each task for discussion without leaving the board
📜 Activity feedFull audit log: created, status changed, assigned, delegated, commented

Task Lifecycle​

Tasks progress through six statuses. Each status maps to a column on the Kanban board.

Open → Assigned → In Progress → Review → Done
↘ Cancelled
StatusMeaning
OpenTask created, not yet assigned to anyone
AssignedClaimed by or assigned to a specific user
In ProgressActive work underway
ReviewReady for review or approval
DoneCompleted
CancelledDropped; visible on the board but excluded from active filters

Tasks assigned directly at creation time start in Assigned rather than Open. Tasks claimed via the claim action move from Open to Assigned automatically.

Move arrows appear on each card to shift left or right through the columns. The Cancelled column is a terminal state — you can move a task into Cancelled but not past it.


Priority Levels​

PriorityBadge colorUse when
LowGreyNice-to-have; no deadline pressure
MediumBlueStandard work item (default)
HighOrangeImportant; needs attention this sprint
UrgentRedBlocking or time-critical

Boards​

A board is a named workspace for a set of related tasks. Think of it as a project: one board per product, team, initiative, or sprint.

Creating a board​

  1. Go to Dashboard → Workcast in the sidebar
  2. Click + New Board in the left panel
  3. Enter a name and optional description
  4. Click Create

The board appears immediately in the list. Click it to open the Kanban view.

Switching boards​

Click any board name in the left panel. The Kanban view loads its tasks and subscribes to its SSE stream — real-time updates begin immediately.

Deleting a board​

Hover the board name and click the × icon. A confirmation prompt appears before deletion. Deleting a board removes all its tasks and activity permanently.

warning

Board deletion is permanent and cannot be undone. All tasks on the board are deleted with it.


Tasks​

Creating a task​

  1. Open a board and click + New Task in the header
  2. Fill in the task form:
FieldRequiredNotes
TitleYesPlain-text name; cannot be blank
DescriptionNoMulti-line details, context, acceptance criteria
PriorityYesDefaults to Medium
AssigneeNoType a name or email to search users; select from the dropdown. Leaves task in Open if omitted
Due dateNoCalendar picker; displayed on the card and in the detail panel
MilestoneNoFree-text grouping label (e.g. v1.0, Q3 Sprint); autocomplete suggests existing milestones on the board
LabelsNoPick one or more color-coded labels from the preset list
  1. Click Create Task

If an assignee is set, the task starts in Assigned. Otherwise it appears in Open for anyone to claim.

Creating a subtask​

Open a task's detail panel, scroll to the Subtasks section, and click + Add. The task form opens pre-linked to the parent. Subtasks are hidden from the main board columns — they appear only in the parent task's detail panel with a progress bar showing done/total.

Moving tasks​

Two ways to change a task's status:

  • Arrow buttons on the card — hover a card to reveal ← and → arrows. Each click shifts the task one column left or right.
  • Quick status picker in the detail panel — click any task card to open the detail panel. Under Move to, every column except the current one is shown as a button. Click any column to jump directly to it, bypassing intermediate columns. A Cancel shortcut also appears to move the task to Cancelled from any non-terminal status.

Moves are instant and broadcast to all viewers on the board via SSE.

Claiming a task​

Open tasks without an assignee show a Claim Task button in the task detail panel. Clicking it assigns the task to you and moves it to Assigned. You cannot claim a task you already own.

Editing a task​

Task creators, the assigned user, and admins see an Edit (pencil) button in the detail panel header. Clicking it switches the panel into edit mode with all fields as editable inputs. Changes are saved with a single Save click and broadcast to all connected clients via SSE.

Fields available to edit: title, description, priority, due date, assignee (searchable user picker), labels, and milestone.

Delegating a task​

In the task detail panel, users who can edit the task see a Reassign Task button. Clicking it reveals a searchable user picker — type a name or email to find a colleague, then click their entry to confirm. The task's assignee is updated immediately, their avatar appears in the meta row, and the change is logged in the activity feed.

Delegation is also available via the API: POST /api/v1/workcast/tasks/{id}/delegate with body {"user_id": "<target>"}.

Removing a task​

In the task detail panel, click Delete. A confirmation prompt appears. The task creator and admins see the Delete button; other users do not.


Labels​

Labels are color-coded tags you attach to a task to indicate its type or status.

LabelColorTypical use
bugRedA defect or regression
featureBlueNew functionality
docsYellowDocumentation update
designPurpleVisual or UX work
researchCyanInvestigation or spike
choreGreyMaintenance, refactoring
blockedOrangeWaiting on an external dependency

Any task can have multiple labels. They render as small badges on the card in both Kanban and List views, and as larger badges in the detail panel. The label filter in the header restricts visible tasks to those with the selected label.


Milestones​

A milestone is a free-text grouping name you assign to tasks — for example v1.0, Q3 Sprint, or Beta Release. Multiple tasks share the same milestone string to indicate they belong together.

  • Set a milestone when creating or editing a task
  • Existing milestone names on the board are suggested via autocomplete
  • The milestone filter in the header shows only tasks in that milestone
  • A milestone name renders as ⬡ milestone-name on each card

Views​

Workcast supports two board views, toggled with the button group in the header.

Kanban view (default)​

Columns for each status. Task cards show priority badge, title, labels, milestone, subtask progress bar, due date, and assignee.

List view​

A flat sortable table showing all tasks across all columns. Click any column header to sort; click again to reverse.

ColumnSortable
Title (with subtask count)Yes
StatusYes
PriorityYes (urgent → low)
LabelsNo
MilestoneNo
AssigneeNo
Due dateYes
CreatedYes

Click any row to open the task in the detail panel. The Claim button appears inline for unclaimed Open tasks.


Filters​

The filter bar in the board header narrows which tasks appear in the current view.

FilterOptions
My tasksToggle button — when active, shows only tasks you created or are assigned to
PriorityAll / Urgent / High / Medium / Low
LabelAll / bug / feature / docs / design / research / chore / blocked
MilestoneAll / (any milestone name present on the board)

Active filters are highlighted. Click My tasks to toggle it, or click any other filter selector to change its value. Filters apply to both Kanban and List views. The column card count updates to reflect the filtered total.

note

Subtasks are never shown in the main board columns or the list view — they appear only inside their parent task's detail panel.

Overdue tasks​

A task is overdue when its due date has passed and its status is not Done or Cancelled. Overdue tasks are highlighted with a ⚠ prefix and red due date text in both Kanban cards and the List view. The indicator appears automatically — no action is required.


Task Detail Panel​

Click any task card to open its detail panel on the right side of the board.

The panel shows:

  • Title, description, priority, labels, milestone, status, due date, created date
  • Created by — avatar and display name of the user who created the task
  • Assigned user — avatar and display name; resolved from the server on first view, cached for subsequent opens
  • Move to — quick status picker: jump directly to any column with a single click
  • Subtasks — progress bar showing done/total; click any subtask to open its own detail; + Add creates a new subtask linked to this task
  • Activity feed — chronological audit log of every action on this task, with actor name and timestamp. Comments appear inline with system events
  • Comment box — type a comment and press Enter or Send; appears immediately in the feed
  • Edit button (pencil icon) — shown to task creator, assignee, and admins; switches to inline edit mode
  • Claim Task — shown when the task is Open and unassigned
  • Reassign Task — shown to task creator, assignee, and admins; opens a searchable user picker to delegate
  • Delete — shown to the task creator and admins; triggers a confirmation prompt

Real-time Updates​

Workcast uses Server-Sent Events (SSE) to push board changes to every connected client. When any user creates, updates, deletes, claims, or delegates a task, or adds a comment — all other users viewing the same board receive the update and the task list refreshes automatically. No polling, no manual refresh needed.

SSE subscriptions are scoped to the active board. Switching boards closes the previous subscription and opens a new one.

SSE event types​

Connect to GET /api/v1/workcast/boards/{id}/stream. Each event is a JSON object on the data: line.

EventPayload fieldsFired when
connectedboard_idConnection established
task_createdtask_id, board_idNew task created on this board
task_updatedtask_id, changes (list of updated fields)Task fields changed
task_deletedtask_idTask removed
task_claimedtask_id, by (user_id)Task claimed by a user
task_delegatedtask_id, to (user_id)Task reassigned
ping—Keepalive heartbeat

The frontend re-fetches the full task list on any non-ping, non-connected event, so all clients stay in sync regardless of the change type.


Access Control​

Each board has a visibility setting that controls who can see and contribute to it.

Board visibility​

VisibilityWho can see the boardWho can create tasks
Public (default)All authenticated usersAll authenticated users
RestrictedBoard creator · System admins · Explicit membersMembers with Editor or Admin role

Switch a board's visibility in the Share panel (board admins only). Changing a public board to restricted does not remove any tasks — it simply hides the board from users who are not members.

Member roles​

When a board is restricted, each member has one of three roles:

RoleView board & tasksCreate tasksEdit/delete own tasksEdit any taskBoard settings & members
Viewer✅❌❌❌❌
Editor✅✅✅❌❌
Admin✅✅✅✅✅

Board creators and system admins always have implicit Admin access regardless of whether they appear in the member list.

Adding members​

Members can be individuals (users) or whole teams (groups). Groups in Hrida AI Studio are channels with type = group. Adding a group grants every current member of that group the assigned role automatically — no per-user grants needed.

To add a member:

  1. Open the board and click Share in the header (visible to board admins only)
  2. Choose User or Group from the type selector
  3. Search for the user by name or email (or paste a Group channel ID)
  4. Choose a role: Viewer, Editor, or Admin
  5. Click Add member

To change a role or remove a member: Open the Share panel → find the member row → change the role selector or click the × icon.

Organizational patterns​

Team board: Create one board per team, add the team's group channel as Editor. Every team member can contribute; add individuals as Admin if they need settings access.

Project with multiple boards: Create separate boards for backend, frontend, and QA. Share the same team group across all three. Each board has its own task columns and its own SSE stream.

Cross-team board: Add multiple groups with different roles — e.g., one team as Editor and another team as Viewer.

Stakeholder view: Add external stakeholders as Viewers so they can follow progress without creating or editing tasks.


Permissions​

ActionWho can do it
View a public board and its tasksAll authenticated users
View a restricted board and its tasksCreator · system admin · explicit members
Create a boardAll authenticated users
Update board settings (name, description, visibility)Board creator · system admin · board admin members
Delete a boardBoard creator · system admin · board admin members
Manage board membersBoard creator · system admin · board admin members
Create a taskEditor + members (all users on public boards)
Create a subtaskEditor + members (all users on public boards)
Edit a taskTask creator · assigned user · board admin · system admin
Delete a taskTask creator · board admin · system admin
Move a task statusAny user with at least Viewer access
Claim a taskAny user with at least Editor access (if task is unassigned)
Delegate a taskTask creator · assigned user · board admin · system admin
Add a commentAny user with at least Viewer access

Managing Tasks from Chat​

With native function calling enabled, models can work with Workcast directly from a chat. Ask things like "File a high-priority task on the Platform board to rotate the API keys" or "What's overdue on the Support board?" and the model calls the built-in tools:

ToolWhat it does
create_workcast_taskCreate a task on a board
list_workcast_tasksList tasks, filtered by status, assignee, or priority
update_workcast_taskChange status, priority, assignee, title, description, or due date
report_workcast_tasksSummarize a board: counts by status and priority, overdue and unassigned tasks

The tools respect the same board access rules as the UI and API. Turn them off for a model by disabling the Workcast category under Workspace > Models > Edit > Builtin Tools. See the tool reference for parameters.


Getting Started​

  1. Go to Dashboard → Workcast in the sidebar
  2. Click + New Board and name your first board
  3. Click + New Task to create your first task
  4. Set a priority, write a description, and optionally assign it to someone
  5. Move tasks across columns as work progresses

Use Cases​

Sprint planning​

Create a board for each sprint. Add all planned tasks in Open. Assign them during planning. Engineers claim tasks as they start work, moving them through In Progress → Review → Done.

Bug triage​

One board for incoming bugs. Triage adds priority badges and assigns owners. The Cancelled column holds bugs that won't be fixed in this cycle without losing the record.

Content pipeline​

A board for every content type. Writers move pieces from Open (idea) → In Progress (draft) → Review (edit) → Done (published). Comments in the task replace back-and-forth email.

On-call handoff​

Create tasks for every open incident or follow-up item. Claim the ones you're handling. Delegate or leave unclaimed for the next person on rotation. The activity feed shows exactly who touched what and when.


API​

Boards

MethodPathDescription
GET/api/v1/workcast/boardsList boards visible to the caller
POST/api/v1/workcast/boardsCreate a board (name, optional description, optional visibility)
GET/api/v1/workcast/boards/{id}Get a single board (403 if restricted and no access)
PATCH/api/v1/workcast/boards/{id}Update name, description, or visibility (board admin only)
DELETE/api/v1/workcast/boards/{id}Delete a board and all its tasks (board admin only)

Board members

MethodPathDescription
GET/api/v1/workcast/boards/{id}/membersList all explicit members of a board
POST/api/v1/workcast/boards/{id}/membersAdd a member — body: { subject_type, subject_id, role }
PATCH/api/v1/workcast/boards/{id}/members/{mid}Change a member's role — body: { subject_type, subject_id, role }
DELETE/api/v1/workcast/boards/{id}/members/{mid}Remove a member from the board

subject_type is "user" or "group". role is "viewer", "editor", or "admin".

Tasks

MethodPathDescription
GET/api/v1/workcast/boards/{id}/tasksList tasks — query params: status_filter, priority, assigned_user_id, page
POST/api/v1/workcast/boards/{id}/tasksCreate a task (Editor+ access required on restricted boards)
GET/api/v1/workcast/boards/{id}/streamSSE stream for real-time board updates
GET/api/v1/workcast/tasks/{id}Get a single task
PATCH/api/v1/workcast/tasks/{id}Update task fields — partial update
DELETE/api/v1/workcast/tasks/{id}Delete a task
POST/api/v1/workcast/tasks/{id}/claimClaim an unassigned task
POST/api/v1/workcast/tasks/{id}/delegateReassign to another user ({"user_id": "..."})
GET/api/v1/workcast/tasks/{id}/activityFull chronological activity log
POST/api/v1/workcast/tasks/{id}/commentAdd a comment ({"comment": "..."})
GET/api/v1/workcast/meActive tasks assigned to or created by the calling user (cross-board)
Hrida.ai is proprietary software of Zlabs Innovation. See the license for terms. © 2026 Zlabs Innovation.