R&D Workforce — AI arranges the day, AI measures the day.

The real difference from Linear: humans do not plan the sprint; the AI composes each engineer's to-do list day-to-day, and the AI scores what got done.
⏱️ R&D Work Diary 📊 Daily Report 🔬 R&D Portal Replaces Linear · $0 extra seat cost
Positioning

AI arranges. AI measures. Linear's shape remains.

Linear's sprint-planning is human-authored and human-scored. R&D Workforce flips both: the AI composes each engineer's day-to-day to-do list from project context, role, and outstanding work, and the AI measures completion against evidence (commits, PRs, issue updates, time logs, doc edits). Two KPIs come out: (1) time logged meets the required time budget, and (2) progress meets the AI-designed daily list. Linear's shape is retained (teams · cycles · tasks · workflow states) because engineers like it — but the planning-and-scoring loop is AI-driven, not human-driven. If you're on Linear today, we import your workspace and you cancel Linear. Ongoing coexistence is not offered — the whole point is you stop paying for Linear and stop doing sprint grooming.

ReplacesLinear (Standard tier feature parity)
Included in Workforce$0 extra seat cost
Linear bill cancelled~$8 / engineer / month × everyone
Real differenceAI plans the daily list · AI scores completion

1 · Data model — Linear → Workforce mapping

Linear conceptWorkforce equivalentNotes / what changes
WorkspaceSubscriber workspaceOne per Workforce subscriber. Auto-provisioned at signup — no separate Linear signup.
TeamTeamKbot-Link, Meet3, Kommerce-1, AutoOMS, etc. Same identifier prefix (KL, M3, K1, AO) drives issue IDs.
CycleCycleWeekly by default; team-configurable to 1/2/3 weeks. Cycle boundaries drive the weekly diary rollups.
ProjectProjectMulti-cycle initiative. e.g. "Kbot-Link OTA C+D" or "AutoOMS RMA refactor Phase 2".
IssueTaskRenamed to match how PM tools outside engineering talk. Same primitive.
Sub-issueSubtaskNested 1 level deep (Linear supports N; we cap at 1 to keep the diary rollup honest).
Estimate (points)Required hours changedHours, not points. Three-way-signed. Points map poorly to a fair KPI; hours are what actually get measured.
— (not in Linear)Actual hours newAuto-rolled from task-timer + commit-authoring windows. Delta = actual ÷ required drives the diary score.
— (not in Linear)AI-proposed hours newAI Helper's first proposal, stored with reasoning. Kept for calibration (were we systematically low?).
— (not in Linear)Three-way signatures newai_proposed_at, engineer_signed_at, manager_approved_at. Task cannot enter "In progress" until all three land.
Workflow stateWorkflow stateSame five: Backlog / To do / In progress / In review / Done. Plus Blocked as a flag (not a state) — matches Linear behavior.
LabelLabelSame. Labels drive the AI Helper's "which folder does this touch?" inference.
PriorityPrioritySame five: No priority / Urgent / High / Medium / Low.
AssigneeAssigneeSame. Exactly one primary; Linear's multi-assignee dropped (KPI attribution needs one owner).
Views / filtersViews / filtersSame query grammar. Custom saved views per user.
RoadmapRoadmapSame. Projects on a timeline; drag to reschedule.
TriageTriageSame. Inbound bugs / feature requests land here before assignment.
GitHub integrationGitHub integrationPR-to-task linking, auto-close on merge, commit refs. Same wiring; runs on our GitHub App.

2 · Screens — what the engineer actually sees

Cycle view · this week

Same layout as Linear's cycle view. Grouped by workflow state; sortable by any column.

Kbot-Link · Cycle 38 · Sep 15 – Sep 21 8 issues · 34h estimated
KL-142OTA phased-rollout picker4h · 4hSep 14
CL
KL-143One-click rollback + confirm4h · 4hSep 15
CL
KL-144Empty-state onboarding + sample4h · 3.5hSep 16
CL
KL-145Merge, deploy, verify prod2h · 1.5hSep 17
CL
M3-88Consent silent-decline capture8h · 5hSep 18
CL
M3-89Long-call summary hallucination9h · —Sep 23
CL

Issue detail · with three-way agreement

Everything Linear has, plus the dashed panel — the Workforce-only fields.

M3-88

Meet3 · Recording consent — silent-decline capture

Team
Meet3
Project
Meet3 · Consent & compliance
Cycle
Cycle 38 (Sep 15 – Sep 21)
Assignee
Charles Liu (temp)
Priority
High
State
In progress
Labels
compliance · frontend · backend
Workforce · required hours
8h — three-way signed
AI proposed 6h · Charles countered 8h (edge-case surface) · converged R2 · Steve approved 2026-09-18 09:15 UTC
Workforce · actual hours (live)
5h so far · delta 0.63 · on plan
Workforce · linked PRs
#1912 Add consent_state enum + migration
#1913 Block record until first explicit accept

Sub-issues (4): 2.1 Reproduce · 2.2 Backend enum · 2.3 Frontend block · 2.4 Compliance review.

3 · Switching from Linear — one-shot import, then cancel

We don't run alongside Linear. The goal is that you stop paying Linear. The switch is designed to fit in a single weekend, with an optional 14-day read-only sync as a safety net during handover.

1 · Connect (Fri)Admin pastes Linear API token in Workforce settings. Full read scope; we don't need write in Linear.
2 · Import (Fri night)Full workspace: teams, cycles, projects, issues, subtasks, labels, comments, workflow history, GitHub links. Preserves Linear IDs so PR references still resolve.
3 · Cutover (Sat)Engineers log in to Workforce, verify their cycle. Linear becomes read-only for 14 days (safety net); all writes happen in Workforce.
4 · Cancel Linear (Sat + 14)Two weeks of clean use → downgrade / cancel Linear seats. Workforce is now the only scheduling tool.

The 14-day sync is one-way (Linear → Workforce read-only) and time-boxed. We do not offer permanent two-way coexistence — that would defeat the "cancel Linear" outcome and split the team's attention across two tools. Subscribers who have never used Linear skip this section entirely.

4 · Feature parity — Workforce vs Linear (Standard tier)

Capability Linear Standard Workforce built-in Advantage
Teams, cycles, projects, issues, sub-issuesYesYesParity
Workflow states, priorities, labelsYesYesParity
EstimatesYes (points)Yes (hours)Workforce — hours are what get measured
RoadmapYesYesParity
Triage inboxYesYesParity
Custom views + saved filtersYesYesParity
GitHub / GitLab integrationYesYesParity
Slack integrationYesZoom (Slack on request)Different chat surface, same idea
Keyboard-first UXYesYes (we mirror Linear's shortcuts)Parity
API + webhooksYesYesParity
AI-proposed estimatesNoYesWorkforce only
Three-way agreement on estimatesNoYesWorkforce only
Actual-hour tracking + delta scoreNoYesWorkforce only
Daily / Weekly / Monthly diary rollupNoYesWorkforce only
Fair-score KPI per engineerNoYesWorkforce only
Seat cost$8 / user / moIncluded in Workforce~$8 / engineer / mo saved

5 · What we do NOT build

6 · Only two migration paths

Path A · Coming from Linear

Import over a weekend · cancel Linear

Full workspace import (teams, cycles, projects, tasks, subtasks, labels, comments, workflow history, PR links). Cutover Saturday; 14-day one-way read-only sync as safety net; cancel Linear at day 15. Not permanent coexistence — the switch is the whole point.

Path B · Never had Linear

Native from day one

Workforce provisions the workspace, seeds a starter team + cycle, engineer signs T0 access, first task is ready in minutes. Linear never enters the flow.

R&D Workforce · AI arranges the daily to-do list, AI measures what got done. Linear's shape (teams · cycles · tasks · workflow states) is kept because engineers like it; the human sprint-grooming and performance-review loops go away. Three-way agreement on required hours (AI + engineer + manager) still exists as the handshake that starts a task. Path A (coming from Linear) or Path B (fresh) — no third option.