Changelog

What's New

New features, improvements, and fixes shipped to Tenon. Updated weekly.

Release Major release

Schedule Gets a Full Redesign — Board, Calendar, List, and Gantt on One Shared Model

Board, Calendar, List, and Gantt now share one visual and interaction model — merged Location + Assignee picking, on-card dependency stacking with a Blocking line, a real dependency editor on the Gantt, a capacity rail on Assignments, crew-hours overrides, and full parity on mobile.

What shipped

Board, Calendar, List, and Gantt now look and act like one screen, not four. All four schedule views were rebuilt on a shared chassis — same picker patterns, same card shapes, same selection model — so switching views doesn’t mean relearning the interface.

Pick a location and an assignee in one step. The old separate Location and Assignee dropdowns are merged into a single picker across List, Board, and the task side-peek.

See what’s blocking a task without leaving the card. Dependencies now stack directly on the task card and side-peek, with a dedicated “Blocking” line showing what’s holding a task up — no more digging into a separate dependencies tab.

The Gantt got a real dependency editor. Drag a relation chip between bars to set a dependency, right-click a bar for quick actions, and collapse or expand phase rollups to work at whatever zoom level you need.

A capacity rail on Assignments, so you see overload before you create it. The Assignments and Resources views now show a per-person capacity rail plus an “unassigned” row, so double-booking and orphaned tasks show up before they become a problem, not after.

Crew-hours overrides feed straight into Calendar load. Set exceptions to standard crew hours per person from Settings → Team members, and Calendar’s load calculations reflect them immediately.

Mobile catches up to desktop. Phone List and tablet Gantt now carry real bars, room chips, and relation tokens; tablet Gantt supports pinch-to-zoom; the mobile assignee sheet groups on/off-project people and adds an invite-by-email footer for anyone not yet in the system.

Release Major release

Tenon for Android — Now Available on Google Play

The native Android app is live. Same account, same data as Mac, iPhone, and the web — schedules, budgets, dailies, RFIs, and Sage, from your phone or tablet.

What shipped

Tenon is now on Google Play. The native Android app joins Mac, iPhone/iPad, and web — same account, same data, everywhere.

Field logs, timers, and RFIs from your phone. Clock in, file a daily log, snap a photo from your camera, and check open RFIs without leaving the job site.

Sage on Android. Ask Sage a budget question or dictate a daily log by voice — same assistant, same permissions as the rest of Tenon.

Sign in once. Biometric login (fingerprint/face unlock) keeps you signed in across sessions.

Offline-first. File a dailies entry with no signal — it syncs the moment you’re back online.

Get Tenon on Google Play.

Release Major release

Sage Goes Proactive — Budget, Deadline, and Approval Alerts

Sage now proactively flags at-risk budgets, upcoming deadlines, overdue tasks, stalled change orders and timesheets, unordered materials, and clients waiting on a reply — instead of waiting for you to ask.

What shipped

Sage stops waiting for you to ask. Proactive mode already existed in your Sage settings, but most of its alert categories weren’t actually sending anything. Seven of them do now. Each one checks once a day and shows up as a notification for the people who need to see it — and each has its own on/off toggle under Sage settings.

Budget alerts. When a project’s spend crosses 75% of budget, Sage flags it to admins and managers as a watch item; past 90%, the alert escalates.

Deadline reminders. Tasks due within the next 5 days get a heads-up to the assignee and to admins/managers, with urgency rising the closer the due date gets.

Overdue task alerts. Once a task is past due, Sage notifies the assignee and admins/managers — the longer it sits, and the higher its priority, the more urgent the alert.

Change order reminders. A change order stuck in pending approval gets a daily nudge to admins and managers that grows more urgent the longer it waits.

Timesheet approval reminders. Entries waiting on approval get flagged to your approvers, with urgency climbing as the payroll period-end gets closer.

Client email nudges. If the last email on a project came in from the client and nobody’s replied yet, Sage tells admins and managers — and keeps nudging harder the longer it goes unanswered.

Materials alerts. When a material misses its order deadline without being ordered, Sage flags it to admins and managers so it doesn’t quietly become a delay.

Your call how loud Sage is. Reactive/proactive mode, the intensity slider, and each category toggle above still control the whole rail — turn any of them down or off from Sage settings on your profile.

Release

Permits Automation + Editable Blackouts

Permit stage transitions and inspection results now flow through Sage's automation surface, blockers and conditions carry AI-sourced context you can see and confirm, and approved schedule blackouts are editable instead of delete-and-recreate.

What shipped

Permits, wired for automation. Stage transitions and inspection results can now be set through Tenon’s AI surface, not just the UI — set_permit_state, record_inspection_result, and add_inspection_flag are live. Stage changes, new blockers, condition closures, inspection results, and revocations now notify the right people automatically.

Sage shows its work on permits. When Sage surfaces code-context on a blocker or condition, it’s attributed inline — the same badge you already see on the procurement tracker — instead of sitting as plain text you couldn’t trace back to anything.

Edit an approved blackout, don’t delete and recreate it. Changing a crew member’s approved vacation or unavailability window now takes one edit — dates, type, reason, hours — instead of deleting the blackout and starting over.

Faster path from a purchase order to the shopping run. PO procurement widgets on the dashboard now click straight through to the shopping run that’s covering them.

Release Major release

Auto-Drafted Change Orders, Procurement Sage Actions, and Project Pinning

Finish Schedule auto-drafts change orders on over-allowance selections, Sage attribution lands on the procurement tracker, permits get expandable inspection detail and blocker resolution, materials pipeline and desktop checkout tie into shopping runs, projects can be pinned in the sidebar and mobile switcher, and estimate line items get flat-dollar markup.

What shipped

When a selection blows the allowance, the change order drafts itself. Approve a pick that comes in over budget and Finish Schedule opens a draft change order automatically — no more chasing someone to write it up by hand. The attention card takes you straight to “Review draft CO.”

Procurement tracker shows Sage’s work, not just the result. When Sage auto-advances an item off a supplier email, a badge now shows up right on the tracker row — hover it for the confidence score and source email, click to undo if it called it wrong.

Sage drafts the bill from the vendor’s email. When a supplier invoice lands in your inbox, Sage reads it, pulls the vendor, date, total, and line items, and drafts the bill — split automatically across projects if one invoice covers more than one job. Set Sage to file it outright or hold it for your review.

Failed inspections, no more digging for why. Expand a failed or partial inspection on desktop and see the flags that failed it — photo, description, corrective task, open or corrected — without leaving the permit.

Close a permit blocker the same time you log the entry. The permit composer now lets you pick an open blocker to resolve when you log an update, instead of logging the entry and then hunting the blocker down separately.

Send a material straight to a shopping run. Any item on the Project Materials Pipeline that isn’t delivered yet gets an “Add to run” button — starts or adds to a shopping run without leaving the page.

Finish a shopping run, walk away with the bill. Desktop checkout now drafts a bill from what you picked, takes the receipt photo, and splits it across projects if the run touched more than one — the same flow mobile’s had, now on desktop too.

Pin the projects you live in every day. The sidebar (desktop) and project switcher (mobile) now let you pin — pinned projects float to their own section at the top and stay visible even with completed or cancelled projects hidden.

Markup line items in dollars, not just percent. Estimate line items get a %/$ toggle — set a flat-dollar markup that holds steady even if quantity or unit cost change later.

Release Major release

Budget Columns, Bill Splitting, and Team Chat Parity

Per-component budget tracking, multi-project bill splitting from desktop or mobile, task comments with @mentions, and mobile team chat parity for reactions, edit, delete, and pins.

What shipped

Budget, broken down by component. The Budget page now runs on the same table engine as the rest of Tenon, with actual costs derived straight from your bills and POs — builder-side and client-side, per component, and you choose which columns show.

Split one bill across every project it touched. Scan a bill or log a new expense from your phone, or split it on desktop — the amounts divide across the projects that shared the cost, no manual math.

Comments that carry the whole conversation. Task comments now take attachments and @mention autocomplete, so the context stays on the task instead of scattered across texts and email.

Team Chat, more at home on mobile. Reactions, edit, delete, and channel pins now work the same on your phone as they do at a desk.

Assign faster. The Assign & schedule dialog now searches and multi-selects tasks and people in one pass, instead of one at a time.

Release Major release

Timesheets — Overtime Engine, Approvals, Splits, and Payroll Sync

Automatic overtime classification, an approval-to-payroll pipeline, split entries, banked hours, GPS clock-in, and QuickBooks Payroll export.

What shipped

Overtime, calculated automatically. Regular, overtime, and double-time hours are split out by daily and weekly thresholds per province — no more manual OT math.

Approve, then pay. Marking hours paid or generating an invoice from them is now gated behind approval, with approved, paid, and invoiced tracked independently.

Split one entry across jobs. Divide a single time entry into multiple pieces across projects or cost codes, with a live balance check as you split.

Locked pay periods. Weekly, biweekly, and semi-monthly periods lock once approved; any edit after that creates a tracked adjustment instead of silently changing history.

Banked hours. Time-in-lieu now has its own ledger and mobile card, plus a request flow to cash out banked hours or vacation instead of taking the time off.

GPS clock-in. Arriving at a project geofence prompts a clock-in; location is recorded, but a missing signal never blocks a punch.

Clock someone else in. Foremen and PMs with the new permission can clock in a crew member directly, one entry per person.

Payroll, your way. Push approved hours straight into QuickBooks Payroll, or export a payroll CSV by pay bucket if you’re not on QBO Payroll — either way, only approved hours go out, and banked hours never do.

Sage watches your payroll. Sage flags missing timesheets, overtime rollups, and forgot-to-clock-out shifts before they become a payroll problem.

Release Major release

Daily Logs — Templates, Client Sharing, and a Full Activity Trail

Custom templates, edit history, client-shareable magic links, bulk PDF/CSV export, and a dedicated schedule lens for daily logs.

What shipped

Richer log content. Weather, tasks-worked, timesheets, and Sage’s daily summary now auto-populate straight into the log — one form captures the whole day.

Mobile-first capture. File a log from the field with autosave and offline drafts that sync once you’re back in range; required fields are validated before submit.

Edit history you can trust. Publishing a correction creates a new version with a full activity trail and threaded comments — nothing gets silently overwritten.

Templates, your way. Build multiple active templates, set a project-level default that overrides the company default, and version template changes over time.

Find and export in bulk. Filter and multi-select from the project logs list, then export a branded PDF or CSV — internal notes are automatically excluded from anything a client sees.

Share with clients. Turn on client sharing and Tenon sends a signed, expiring, view-only link — no login required, and internal-only content is stripped before it goes out.

On the schedule. Daily logs now show up as a recurring item on the Gantt/Resources view, with an accountability grid that tracks completion and escalates overdue logs automatically.

Release Major release

MCP Tools & Desktop App

176 AI tools now available via the Tenon MCP connector, plus native macOS desktop app v1.0.2.

What shipped this week

Tenon MCP — 176 AI tools. Connect Claude, Cursor, or any MCP-compatible AI to your Tenon workspace. Query projects, timesheets, proposals, compliance, and more — directly from your AI assistant. Setup at usetenon.com/mcp.

Desktop app v1.0.2. Native macOS app with menu bar integration, full dark/light mode support, and offline-capable local storage. Download from usetenon.com/desktop.

Help center. 11 articles covering install, getting started, and core workflows — live at usetenon.com/help.

Dashboard improvements. Multi-tab dashboards, drag-to-resize widgets, and a reset-to-defaults button for quick layout recovery.

Release

Client Portal & Sage AI Expansion

Client portal preview, expanded Sage AI tools for procurement and shop drawings, and multi-session agentic coding.

What shipped this week

Sage AI — Shop order writes. Sage can now create and update shop orders, approve timesheets, and manage procurement directly. 10 new write tools bring the total to 166 MCP-accessible actions.

Client portal branding. Customize portal colors, logo, and contact info from Settings → Branding. Clients see your brand, not Tenon’s.

RBAC improvements. Granular role-based access control across schedule, change orders, and financials. Phase B coverage ships to all workspaces.