Skip to main content

Product updates — September 7–13, 2026

What changed in Thunk from September 7 through September 13, 2026.

This week you can edit a list's values straight from the table, watch what each workflow costs and how long it takes in two new Monitor tabs, route a step to whoever a column names, and call a thunk's conversational interface as an MCP server.

New

  • Edit values directly in the table. The controls beneath the table view now include an inline-edit toggle, which reads Inline edit disabled until you turn it on. With it on, you can change a work item's values in the cells themselves instead of opening the item to edit it. Because a cell click then means edit, cells no longer double as a link to the full view — a Navigate column appears at the left of the table, and its control opens the work item's detail page. Turn the toggle off and the table returns to read-only cells you can click anywhere to open. The status control behaves the same either way: changing a status works exactly as it did before.

  • Assign a step by the value in a column. A workflow step can now be assigned from the work item itself: name a column, and each work item goes to the person that column names — the human agent whose name or email address matches its value. Set it on the step under Human-In-The-Loop SettingsStep AssignmentBy column value. Every step assigned this way records a note on the step saying who it went to and which column decided it, so the routing is visible in the step's AI pane. If a work item's value is blank, or matches nobody on the thunk, that step goes to the thunk owner and the note says why. While a column is set, the step's AI assignment instructions are not used.

  • Two new Monitor tabs: Token Costs and Time Analysis. Monitor → Token Costs shows what one work item costs to put through your workflow, and Monitor → Time Analysis shows how long it takes — each with the median and the average side by side, the 90th and 99th percentiles, and the most expensive or slowest item, over a day-by-day chart. Beneath each, a list names the specific work items behind the tail, marks the ones past the 99th percentile, and links each one to the item, or to that step on that item when you have picked a single step. Both scope to your workflow's steps; setup work — planning it, building a tool, help chat — is grouped under Setup & automation and reported separately, left out of the whole-workflow figures so those tell you what running your workflow actually costs and takes. Time Analysis also splits each item's time into running versus waiting, and offers Why so long? to break a step down. Switch the window between the last 7, 30 and 90 days. See Understanding LLM costs and latency.

  • The conversational API is now also an MCP server. Each workflow thunk that already exposes the conversational REST API also serves those same operations as MCP tools. Copy MCP Server URL from Run → Inbound Requests → Chat UI, and authenticate with the same thunk API key you use for REST. After sending a message, poll conversation state until the assistant is idle, then list messages — the REST event stream stays HTTP-only. See Conversational interface via a REST API.

  • Test work items now stay in the work items list. Work items that carry test assertions — or any work item, while Treat all rows as test rows is on — used to be hidden from the work items list and shown only under Tests. They now stay in the list with everyone else, marked by a Test badge beside the name, so a thunk's test cases are visible alongside its real work instead of being filed away. The Tests area still collects them with their assertions and results. See Evals and automated tests.

Improvements

  • See where a run's cost went, call by call. Expanding an AI agent's work shows what that run cost. The icon beside that figure now opens a breakdown of it: one line for every call the agent made to the LLM — with the model that answered and its tokens split into input, cached input and output — and one line for every AI tool it called, carrying the tokens, cost and models of that tool's own run. Every line names the model behind it, so a tool that runs on a different model from the step that called it is obvious. The header above it is simpler too: the LLM and tool timings that used to sit beside the total have moved into Why so long?, which explains the same time with the context to act on it. Runs that finished before this change show only their total. See Understanding LLM costs and latency.

  • Share a link to a table with just the columns you want. The columns you pick under Manage columns now travel in the page's web address, so you can send someone a link that opens the table showing exactly those columns. Your own choice is still remembered on this browser, as before.

  • Restart a step without moving on. When you restart a workflow step, the confirmation now includes Do not continue. The agent still does the step's work, then waits there so you can inspect and try again. Finish continues to the next step. See Manual testing.

  • A custom AI tool can work with conversations. Give a custom AI tool a Conversation input — or a Reference that points at a Conversation column — and the AI that implements it can read that conversation and send messages on it, using the same conversation tools a workflow step has. And if it sends a message and waits for a reply, the calling workflow waits too, then continues when that nested work finishes. See Custom Tools.

  • The conversational REST API can send-and-wait, and its stop events name the user turn. POST /{convoId}/sendMessageAndWait (and the matching MCP tool send_message_and_wait) posts a user turn and waits until the assistant has replied, or until the timeout you pass (at most five minutes); a timeout does not end the conversation — the message is stored and you can still poll for a later reply. And when the assistant stops working, the agentStatus event (agentWorking false) now includes respondingToMessageId, the id of the most recent user message in that conversation. See Conversational interface via a REST API.

Fixes

  • What a run cost now includes the AI tools it called. A custom AI tool does its work in a separate AI run of its own, and what that run spent was left out of the calling step's cost — so a step whose work happens mostly inside AI tools looked close to free. The cost shown for a run, and a work item's AI cost, now cover what its custom AI tools spent, including tools called from custom code, and including a tool run that ends in an error. Monitor → Token Costs now files that spend under the step that called the tool, and includes it in what one work item costs — the same total money as before, attributed to the work that caused it.

  • Waiting on me shows your work items again after a page refresh. Run → Waiting on me could come up empty: opening it from the left navigation quietly widened the list to everything assigned to you, and refreshing the page showed no work items at all — after which another view opened from the left navigation could be blank too, until you reloaded. Both conditions the view stands for — waiting on a person, and assigned to you — now apply every time, whether you open it, refresh it, or return to a bookmark, and leaving it no longer carries its filter into the next view. The AI Task column is also filterable from the table's filter panel, so you can build the same view by hand.

  • Both ways into a work item are always one click away. A work item has two views: the panel beside the table, and its own full page. The Inline drilldown setting decides which one a click on a work item opens, and the table now always carries a control for the other — so whichever you choose, the other view is still one click away. This works while inline editing too: cells are editors then, but a click on a work item's name still opens it. Previously the panel could not be reached at all while inline editing, and the full page could be reached only from inside the panel. Clicking a name now also opens the view on the first click rather than the second.

  • A thunk's production phase and agent options no longer reset to platform defaults. A settings-format migration control could rewrite live settings (production phase, timezone, parallel work, draft status) back to platform defaults on a thunk that was already migrated. That rewrite is skipped now.

  • Work item filters and the End User column now match what you see. Picking a date on Created On used to compare an exact timestamp and return nothing; it now finds every work item created that day. Filtering by End User used to look only at a stored label (often an id, not the name in the table); it now matches the name and email you see in the cell. And the End User column could shrink to a single letter beside the avatar (for example T. instead of Tony) — names now have room to read in full.

Did this answer your question?