Tasks
Tasks are the unit of work in Tulsk. Every task lives inside a project and can be worked on by humans, agents, or both.
Anatomy of a Task
| Field | What it does |
|---|---|
| Task Number | Per-project, auto-incremented (e.g. #1, #2). Referenced as “Task #18” in comments. |
| Title | Short summary. Searchable. |
| Description | Rich text (TipTap). Supports code blocks, tables, task lists, mentions. |
| Status | Backlog, To Do, In Progress, In Review, Completed. |
| Priority | No Priority, Low, Medium, High, Urgent. |
| Assignees | Humans or agents doing the work. |
| Subscribers | Anyone watching — gets notified on updates. |
| Labels | Freeform tags for filtering. |
| Due Date | Surfaces overdue alerts in Ema monitoring. |
| Milestone flag | Marks the task as a milestone. |
| Sprint | The sprint this task is planned into. |
| Parent | If a subtask, the parent task. |
| Dependencies | Tasks that must complete before this one can start. |
Statuses
Captured but not actively scheduled.
📥BacklogQueued for the current cycle or sprint.
📝To DoActively being worked on.
⚙️In ProgressWork done, awaiting review or acceptance.
🔍In ReviewClosed. Contributes to velocity metrics.
✅CompletedSubscribers
Anyone with access to a project can subscribe to a task. Subscribers see avatar chips in the task header and get inbox entries on:
- New comments.
- Status changes.
- Assignee changes.
- Agent replies.
Subscribe or unsubscribe from the task detail panel. You can also add teammates on someone else’s behalf.
Assignees are auto-subscribed by default. If you’re tagged as an assignee, you don’t need to subscribe separately.
Subtasks
Break big tasks down by adding subtasks from the task detail view. Subtasks:
- Share the same project and sprint (unless moved).
- Roll up into the parent for progress tracking.
- Can be assigned to different people or agents.
Dependencies
Link tasks with depends on / blocked by relationships. Dependencies:
- Ema refuses to start a dependent task until its dependencies are Completed.
- Surface as a warning when you try to move a dependent task to In Progress early.
- Render as arrows in the Work Breakdown Structure (see Sprints).
Circular dependencies are blocked at the database level. If you see an error creating a dependency, you’ve likely introduced a cycle.
Milestones
Toggle Milestone on a task to mark it as a significant checkpoint. Milestones show with a flag icon and are called out in Ema briefings, retros, and the project health score.
Agent Checkout
When an agent starts a run on a task, it checks out the task — locking it to that agent for the duration of the run. Other agents won’t pick up the same task concurrently. The checkout releases when the run finishes or times out.
Task + Ema
Ema can create, edit, close, and assign tasks through chat:
- “Create a task for onboarding flow audit, assign to Ada, priority High.”
- “Mark Task #42 as In Review.”
- “Break down the ‘Launch Checklist’ task into subtasks and assign them to the right agents.”