Module 02 / Tasks

Work items that routethemselves.

Live Part of Atlas

Tasks are records of work in progress. They pull status from commits, docs, and meetings. They find the right owner. They report themselves. A senior engineering leader can run weekly reviews without writing a status update.

What it does

Five things, actually done.

Most task tools store text and dates. Tasks stores the live state of work. Every field updates from a real signal in your stack, not a human typing into a form.

  • 01
    Reads status from your commits

    Branch open, PR ready for review, tests passing, deploy live. State changes the moment your repo does. No standup needed.

  • 02
    Routes to the right owner

    Capacity model, skill graph, ownership history. A new task lands with a suggested owner on intake. Override anytime.

  • 03
    Pulls context from meetings and docs

    If a task was opened in a meeting, the relevant 90 seconds of transcript is attached. If a doc mentions it, the doc is linked.

  • 04
    Auto-writes the weekly review

    Friday at 4pm local time, a digest lands in the channel: shipped, blocked, slipped, with reasons drawn from the work graph.

  • 05
    Closes itself when work is done

    If the linked PR merges and the linked deploy succeeds, the task closes. If a doc says "shipped", it confirms with the author.

tasks open318
median lifespan3.4 d
self-closed last 7d71%
routing p9564 ms
blocked > 72h4
orphaned0
cross-team deps26
audit events / day4,182
How it works

Three steps, one graph.

Every task is a node in the work graph. Edges connect it to people, repos, docs, meetings, customers, and deals. State flows along those edges.

01slack: "fix billing"ENG-1284P2 · routing…usslacapskill→ Mia K.

Capture and route

A task lands from Slack, email, or a meeting. The router scores owners against capacity, skill, and history. Owner assigned on intake.

02ENG-1284github PRdocs/RFC-12meeting 11/8deploy logstatus: reviewETA: Thu 4pblockers: 0

Pull live signal

The task subscribes to its sources. PR state, doc revisions, meeting mentions, deploy events. Fields refresh on every event, not on a cron.

03Weekly review+ 14 shipped- 3 slipped~ 5 blocked > 72h→ next: SEC-318slack #weeklyFriday 4:00pmgrounded in214 events

Self-report and close

Weekly digest writes itself from real events, not a survey. Tasks close automatically when their PR merges and deploys go green.

Key features

The full surface area.

Tasks ships as part of the wrxstack platform. Same identity. Same permissions. Same audit trail. The features below are live in every workspace today.

Capacity-aware routing

Each owner has a daily focus budget. The router never overshoots without explicit override.

Five views, one source

List, kanban, timeline, calendar, and graph. Same task, same edits, no syncing.

Auto-standup

9am local time. Each owner gets their next 3 highest-leverage items. No more triage.

Per-task permissions

Inherit from project or override. Field-level masking for cross-org work.

Time zone math

Due dates respect each owner's working window. Cross-region handoffs are tagged.

Linked-everywhere search

Find any task by content from any related artifact, including a 6-week-old Slack thread.

SLA tracking

Custom clocks per priority, paused during PTO, escalated on breach to the right channel.

Bulk operations

Reroute 400 tickets in one keystroke, with reason logged to audit.

Export anywhere

CSV, JSON, SQL view, or a live read replica in your warehouse. No screen-scraping.

Connected

Wired to every surface.

Tasks is the spine of the platform. It reads from and writes to the other 11 modules through the shared work graph.

Eight modules write to the same task

A bug filed in Inbox, a roadmap entry in Projects, an action item from Meetings, a follow-up from CRM. They all land as a single normalized task with full provenance.

Projects → milestone tasksMeetings → action itemsInbox → ticketsCRM → follow-upsDocs → review tasksAssistant → draftsSearch → discoveryAnalytics → metric digests
API

One call, the whole graph.

The Tasks API returns the work item plus its full edge set. No N+1 chasing. SDKs for Python, TypeScript, Go, Ruby, Java.

tasks.ts
// Create a task, route it, and subscribe to live state.
import { Wrx } from "@wrxstack/sdk";

const wrx = new Wrx({ token: process.env.WRX_TOKEN });

const task = await wrx.tasks.create({
  title: "Add idempotency key to billing webhook",
  priority: "P2",
  source:  { type: "slack", message_ts: "1715271934.000700" },
  links:   [{ kind: "repo", ref: "wrx/billing#1284" }],
  route:   { strategy: "capacity_then_skill", sla: "P2_24h" }
});

// task.owner is filled in on intake; route_score is on the object.
console.log(task.owner.email, task.route_score); // mia@acme.com 0.94

// Stream every state change downstream of this task.
for await (const ev of wrx.tasks.stream(task.id)) {
  if (ev.kind === "status" && ev.to === "shipped") {
    await wrx.docs.write({
      doc: "weekly-eng",
      append: `Shipped: ${task.title} (deploy)`
    });
  }
}

Same surface in Python: wrx.tasks.create(...). REST and GraphQL are also live. Read the full API reference →

Comparison

Tasks vs. Linear.

Linear is a beautiful tracker. It assumes a human keeps the state honest. wrxstack Tasks runs on the assumption that humans will not.

wrxstack Tasks vs. Linear Side by side

CapabilityLinearwrxstack Tasks
Auto-routing on intakeManual triageCapacity + skill, on intake
State sourceAssignee updatesCommits, deploys, docs, meetings
Auto-close on deployManual closeCloses on green deploy
Weekly digestCron pulls "active" issuesGrounded in 7-day event log
Cross-module edgesURLs in descriptionFirst-class graph edges
Trains on your dataPolicy variesNever, per model-provider terms
Audit trail granularityEvent logField-level, exportable
FAQ

Common questions.

Six things engineering leaders ask in the first 20 minutes of a Tasks demo.

How does the router avoid loading the same engineer every time?

Capacity is a daily focus budget per owner, set in their profile. The router penalizes anyone over budget. Skill matches break ties. Ownership history is a tiebreaker, not a primary signal, so a senior engineer who happens to know the codebase will not become a single point of failure.

What if our team uses Jira or Linear today and cannot migrate yet?

Tasks runs in dual-write mode. We mirror state to and from Jira (Cloud and Server) and Linear. Run dual-write for as long as you need, then cut over when you are ready. The mirror is bidirectional, with conflict resolution rules you set up front.

Can a task be private to one team while still being part of the work graph?

Yes. Per-task permissions inherit from the project, then can be overridden field by field. A field can be masked rather than hidden, so cross-team dependencies stay visible but sensitive content stays inside the owning team.

How fast does routing actually run?

The router scores owners against capacity, skill, and history inline on task intake. A suggested owner is on the object before the create call returns, so intake never waits on a manual triage step.

What signals close a task automatically?

By default: linked PR merged, plus linked deploy green for 30 minutes, plus no rollback within 60 minutes. You can add or remove signals per project.

Does Tasks work without the rest of wrxstack?

It does. You can adopt Tasks alone and get the router, the views, the API, and the audit trail. The connected graph features (auto-close on deploy, cross-module edges, weekly digest) require at least two other modules.

Related

Pairs well with.

Tasks gets sharper when the rest of the graph is live. Three modules that compound its value.

Honest limits

Who this is not for.

Tasks routes engineering work on a shared graph. If you run a large program office that needs portfolio-level resource planning, capitalized-cost reporting, and hundreds of custom workflow states, a heavyweight tracker like Jira will fit your process better. Tasks is built for teams that want routing and auto-close, not a configuration project.

Get started

Try Tasks. Stop writing status updates.

Free to start, no credit card. All 16 modules. SSO included. Ship your first auto-closed task the same afternoon.