What’s new
Changes to Levr, newest first. Breaking changes are marked and may need action on your side.
72 changes
October 2026
72 changes- Fix
An empty inbox no longer flickers to "Loading notifications"
When your inbox was empty, it could flash the "Loading notifications" screen several times in a row while notification changes were being saved, for example right after you archived everything or reloaded the page. The empty inbox now stays put. The loading screen only appears the first time the inbox loads.
- Improvement
Large test result reports import several times faster
Pushing a CI report with thousands of results, from
levr pushor the imports API, now takes seconds instead of the better part of a minute. The gain is largest when you push the same suite often, which is the usual shape of CI. The imported run, its results and its test history are exactly what they were before. - Fix
Workspace triggers now run on changes that arrive from Jira
Triggers and automations in your workspace now see the changes the Jira integration records, such as a linked Jira issue being created or updated. Until now those changes were synced but never checked against your triggers, so a trigger that listened for them did not fire.
- Fix
The first lesson now links each piece of work as it creates it
The Intro to Levr builds a small app and tracks the work as it goes — a plan, then a piece of work for each part of the app, each with a check that has to pass before it can close.
Until now you only got the links to that work at the very end, in the recap. So while the interesting part was happening there was nothing to click, and no way to watch it appear.
Now every piece of work is linked the moment it is created, and the lesson says up front that you are welcome to open those links and follow along in Levr while the agent keeps working. You can watch the plan appear, see each piece move to done as its check passes, and poke around the rest of the app without interrupting anything — or ignore the links entirely and just read along.
The recap at the end is unchanged: it still lists everything that happened, in order, with links.
- Breaking
Gate configuration moves between workspaces as one file
You can now export a workspace's gate configuration (its gate bindings and the gate definitions your team wrote) as one JSON file, keep it in a repository, and import it into any workspace.
- From the CLI:
levr gates bindings export > gates.json, thenlevr gates bindings import gates.json --dry-runto preview andlevr gates bindings import gates.jsonto apply. - From the Gates settings page: Export, then Import file… with Preview and Import.
- From MCP:
manage_gate_bindingswithaction: "import", anddry_run: trueto preview.
An import never overwrites a binding someone already configured: it reports it as differing and leaves it alone. It deletes a binding only when the file marks it
"delete": true, never because the file leaves it out.What changes for you: importing through
manage_gate_bindingsnow needs an Owner or Admin, and it no longer updates a gate definition or binding that is already stored. It reports each entry instead (created, already there, differs, deleted), anddry_run: truepreviews without writing. - From the CLI:
- Breaking
Quality gates that run your own tools replace the concern gate slots
The concern gate slots announced on 20 October (security, persistence, reachability and the others you had to bind to your own tool) are gone. Six quality gate types take their place, and each runs a real tool from your repository:
- Lint runs your linter, for example ESLint or
cargo clippy. - Secret Scan looks for committed credentials with a scanner such as gitleaks.
- Static Application Security Testing (SAST) runs your own security rules with semgrep or opengrep, with telemetry off.
- Infrastructure Misconfiguration checks Dockerfiles, Helm charts, Kubernetes manifests and Terraform with
trivy config. - Changed-Line Coverage measures test coverage over only the lines a change added, with
levr gates changed-coverage. Changes with fewer than 20 executable lines are not held to a percentage. - Dependency Audit fails only on vulnerable packages a change added or upgraded, with
levr gates dependency-audit.
All six start switched off in every workspace, so nothing new blocks Done until you bind a command and enable it. The help pages on verification techniques and running gates have example bindings for TypeScript and Rust repositories, and how to install each scanner.
What changes for you: a gate deployed on one of the retired slot types is removed, and the retired types (including
import_usage,dataflow_through,function_complexityandreturn_shape) can no longer be deployed. Use a quality gate type,ast_patternorsymbol_referencedinstead. - Lint runs your linter, for example ESLint or
- Improvement
Agent decisions and guidance no longer appear as issues
Agents used to record each checkpoint question, decision and piece of guidance as an issue of the Decision or Guidance type. These now live in their own records, so they no longer crowd your issue lists:
- Phase checkpoints are saved with the agent's phase session. The question and its answer stay attached to the work they belong to.
- Decisions go to the decision ledger through the
record_decisionMCP tool. Thecreate_decisiontool is retired and points callers to its replacement. - Guidance is now a rule, managed with the
get_rulesandmanage_rulestools.
Existing Decision and Guidance issues are being moved across to these records. Each moved record keeps its original identifier, so links to it still resolve.
Council answers are also now shadow-first. When the council answers a question, its answer is saved as a shadow record and the question goes to a person. The council's answer is applied on its own only when someone has switched on auto-apply for that kind of decision, and only while people have agreed with the council on its last five questions of that kind. One override puts it back to asking, including an override of an answer the council applied on its own. When you answer a question the council was held back on, your choice marks its shadow record as confirmed or overridden. The Agent Autonomy report shows how often you overrode the council for each kind of decision.
- Fix
Mark all read and Archive read are fast on large inboxes
On an inbox with hundreds of notifications, Mark all read and Archive read could take minutes, and with a thousand or more they could stop the browser tab responding. Both now update the inbox in a few seconds however many notifications they cover, and your changes reach other devices shortly after.
- Fix
Workspace invitations are less likely to land in Junk
Invitation emails now come from the person who invited you, shown as "Name via Levr", and a reply goes straight to them. We also removed the parts of our emails that spam filters, Microsoft 365 in particular, treated as suspicious, so invitations and other Levr emails are more likely to reach the inbox.
- Feature
Reminders for unaccepted invitations, and invite links for admins
When someone has not accepted a workspace invitation, Levr sends them a reminder on day 2 and day 5 of the 7-day invitation. Each time, workspace admins and owners get an inbox notice saying the invitation may be in the recipient's Junk folder, and another notice if it expires.
From those notices, or from Settings → Users, an admin can:
- Copy invite link to send the invitation themselves;
- Renew & copy link on an expired invitation, which gives it 7 more days without sending another email;
- Clear expired invitations from the pending list.
The pending list also shows how many reminders each invitation has had.
- Fix
Signing in from the Jira or GitHub link page brings you back to it
When you clicked Link to Levr in the Jira issue panel, or arrived from installing the Levr GitHub App, without being signed in to Levr, signing in took you to your workspace home instead of the link page, and the site or installation was not linked. You now return to the link page after signing in, including when you choose a workspace on the way, and can finish linking straight away.
The buttons on those pages that lead to Settings now show that they are working while Settings loads. They and the link and save buttons can no longer be clicked a second time, so a click can't link or save twice.
- Fix
Levr tells you when another tab is slow, and catches up by itself
With Levr open in more than one tab, one tab gets its data through another. When that other tab was busy in the background, a page could sit on loading placeholders, or say an issue was not found, with no explanation.
- A clear message. If your data is waiting on another Levr tab, a banner says so within a few seconds, with a Retry button.
- Catches up by itself. When the other tab answers again, anything that failed to load meanwhile loads again, without a reload.
- Never a false "not found". An issue opened from a link keeps loading while it waits, and offers Retry if it waits too long.
- Less background work. Pages read only the rows they show, and tabs no longer save the same changes several times over.
- Fix
Signing in through your company's identity provider is more reliable and stays within its workspace
- A session started through your company's identity provider now reaches only that workspace everywhere, including leaving or transferring a workspace, inviting people and connecting GitHub.
- Connecting your company's identity provider from Settings → Connected sign-in providers now lets you sign in with it again, even if you first signed in through it before joining other workspaces.
- If you created a workspace before confirming your email address, signing in through your company's identity provider now signs you in and keeps your workspace, instead of asking you to reset your password first.
- Accepting an invitation is all-or-nothing: if it fails, you are not left half-added to the workspace.
- Fix
Hook and chat API calls always act in your own workspace
The Claude Code hook and chat endpoints now always resolve the caller's workspace from their membership. A member of one workspace is served there without a
Workspace-Idheader, a member of several is asked to name one, and naming a workspace you are not in is refused. A queued response can only be marked as used, and is only streamed, within the workspace it belongs to, and the mark-as-used calls take the response's id exactly as the pending-response call returns it. - Fix
The first lesson now shows you Levr refusing to close unfinished work
The Intro to Levr puts a check on every piece of work and closes each one only once its check passes. Until now everything in it passed, so the most important thing Levr does was only ever described to you: a check would have blocked that, if one had failed.
It happens for real now. The last piece of work in the Intro is built test-first — the check is written before the code it tests, so running it genuinely fails. The agent asks to close the work anyway, and Levr refuses and says which check is failing. Then the code gets written, the check passes, and the same close is accepted.
Nothing is staged to make this happen: it is a real check failing on real code, going through exactly the same refusal you would hit on your own work. The recap at the end of the lesson shows it in order — the refusal, then the passing check that cleared it.
Also worth knowing: the Intro will not let the agent waive its way past a failing check, because being able to is not the lesson.
- Fix
Listing issues with chosen columns works for everyone in a workspace with private teams
Asking the issue list for only some columns (for example
idandtitle) used to fail with a server error for every member of a workspace that has a private team. The list now answers for everyone, returns exactly the columns asked for, keeps its page links on those columns, and still leaves out the issues of private teams the caller does not belong to. - Fix
Signing out of the web app no longer signs you out of Levr Browser
Signing out of Levr in your browser used to sign you out of the Levr Browser extension too, so your agent lost access to your browser until you signed in to the extension again. Signing out of the web app now ends only your web session, and Levr Browser stays signed in.
- Feature
See how much your agents needed a person
A new Agent Autonomy report under Team → Reports shows how often an agent run had to stop and ask someone, and how far its own decisions held up.
- Human prompts: checkpoint answers plus decisions a person made, with each deliverable's prompts counted under its plan.
- Override rate and agreement rate: how often a person changed, or kept, a decision an agent or the review council made on its own.
- False consensus: council decisions that were later overridden or let a bug through.
- Quorum and family availability, first-attempt gate pass and resume success.
- Shadow agreement by kind: how often the council would have matched a person's call, shown only once a kind has enough reviewed samples.
Every rate shows the counts behind it, and reads "no data" instead of 0% when there is nothing to measure. The numbers come from your workspace's own records, so they are the same whichever tools your agents ran in.
- Fix
Tabs load reliably when Levr is also open in a background tab
With Levr open in more than one tab, a tab you opened from a link could stay on loading placeholders while another Levr tab sat in the background. Two causes are fixed:
- Less background work. Each routine sync now sends one small update to your local database instead of about a hundred.
- No false alarms after sleep. Levr no longer mistakes a computer waking from sleep for a stuck database, so it doesn't restart the database unnecessarily.
- Feature
Agents can save console logs, network logs and recordings from your browser
An agent driving your browser through Levr Browser can now save more than screenshots and performance traces:
- Console logs, with each message's level, time and source.
- Network logs as HAR files. Passwords, tokens and other credentials are
replaced with
[REDACTED]before the file leaves your browser. - Recordings of a tab as a video, up to five minutes.
Each capture opens in its own viewer wherever it is attached, and in Personal › Browsers › Captures. Console logs can be filtered by level and searched. Network logs show every request with its headers, timings and bodies. Recordings play in place. A performance trace opens in Perfetto with one click, or can be downloaded.
- Fix
Large bulk changes now reach the server in full
A bulk action covering many hundreds of rows — Mark all read or Archive read on a busy inbox, or any other change to several hundred items at once — used to send only the first part to the server. The tab you clicked in showed everything done, but other devices, a fresh sign-in and the server itself kept the rest unchanged until something unrelated happened in that tab, such as a reload or another edit, each of which sent one more piece.
The whole change now goes out in consecutive requests on its own, with no further action needed, and each request carries more rows than before. Retry behaviour when the server is unavailable is unchanged.
- Fix
The CLI honours --workspace-id with a token in LEVR_TOKEN
levr gates run,levr push,levr import,levr attachandlevr result appendnow apply--workspace-idandLEVR_WORKSPACE_IDwhatever kind of tokenLEVR_TOKENholds. An OAuth access token is treated as a login session, so it can also list workspaces, without touching the workspace choice saved bylevr auth login. A personal access token is bound to its own workspace, and naming a different one is now refused by the server instead of being silently ignored. When an issue lookup fails, the error says which workspace was searched and why. - Fix
Every lesson Learn shows is now one you can open
Learn listed fourteen lessons and would only open one of them. The first lesson was rebuilt as a hands-on Intro to Levr, and the four tracks behind it were left pointing at the old curriculum, so Dev, Dev Lead, PM and QA appeared with progress bars and then refused to start. All fourteen open now.
The tracks have also stopped being roles. Nothing asks what your job is, and no lesson is held back on the strength of the answer — the four are subjects under Levr 101, and you can take any of them in any order, with nothing finished first. Start at QA lesson 3 if that is the thing you want to know. Levr will still suggest where to go next when you finish something; it is a suggestion, not a gate.
One thing to expect if you were here before: the "Quick Overview" that used to sit at the top of every track is retired, and the Intro that replaced it builds you a working app instead of describing one. That is a different lesson, so it starts unfinished even if you completed the old overview. Your topic progress and everything else is untouched.
- Fix
The first lesson tells you what it is doing while it does it
The Intro to Levr takes one line from you and then works for a few minutes: writing a plan, putting a check on each piece of work, building a small app, and closing each piece only once its check passes. Until now it did all of that quietly and explained itself at the end, which made the most interesting part of the lesson the part you could not see. Several minutes of nothing also looks identical to something being stuck.
It now says what is happening as each thing happens — the plan being broken into real work, the checks going on without anyone asking for them, the first test genuinely running, the first piece of work closing with nobody moving a card, and the app coming up. Short lines, in passing; you do not have to do anything with them.
One of them only appears when a check refuses to let a piece of work close. That is the thing Levr is actually for, and it now gets said out loud the moment it happens rather than being summarised afterwards.
The recap at the end of the lesson has not gone anywhere. The notes along the way are there to be glanced at while the work moves; the recap is still there for everything you would rather read once it has finished.
- Fix
The first lesson's practice plan now has a home you can find
The first Learn lesson builds a small todo app and tracks the work for you. The plan it created had no project, so the first thing you ever made in Levr was missing from every project view and hard to find again. The lesson now keeps its work in a project of its own, called Levr Practice, and reuses it every time you come back. Your own projects are left alone.
The practice app also used to be written into whatever folder you were working in — which, if that was a code repository, left an untracked folder sitting in it. It is now written alongside that repository instead, and the agent tells you the full path before it writes anything.
For anyone driving Levr through an agent: the gate tools now show the exact shape of a verification step, so building a gate no longer takes a rejected attempt to get right.
- Feature
Levr Browser is on the Chrome Web Store
You can now install Levr Browser from the Chrome Web Store. It works in Chrome, Edge and other Chromium browsers, and updates itself as new versions are released.
The Browsers page links to it: click Add to Chrome, open the Levr side panel, and sign in with your Levr account. Your browser then appears on the Browsers page, ready for your agent to use through the Levr Browser MCP server.
- Feature
Claim your company's domain, and let colleagues join and sign in with your identity provider
Admins can now claim the email domain their company uses, under Settings > Domains. Once a domain is claimed, people who sign up with an address at it can find your workspace and join it straight away, ask to join, or not be offered it, depending on the join mode you pick. Requests to join appear under Join requests for an admin to approve or deny.
To be the only workspace that decides who joins from your domain, prove that your company owns it, either by publishing a DNS TXT record or by signing in as a Microsoft Entra administrator. The owning workspace can approve other workspaces that use the domain, and ownership can be transferred, with a seven-day window for the current owner to cancel.
Signing in is easier too:
- Sign in with Microsoft works alongside Google and GitHub, for work and personal Microsoft accounts.
- A workspace that owns a domain can add its own OpenID Connect provider under Settings > Identity providers, so colleagues at that domain sign in with the company account they already use. The login page now asks for your email first and offers the right option.
- Settings > Connected sign-in providers lists every way you can sign in, including your password, and lets you connect or remove them.
- Feature
See and review what agents decided on each issue
Every issue now has a Decisions section listing what agents decided while working on it, sorted by how hard each decision is to undo. Confirm a decision or override it in one click. A plan or other parent issue also shows the decisions made on its sub-issues.
When an agent needs your approval, the request appears in the issue's Decisions section, marked as waiting for you. An urgent approval that is still waiting after 15 minutes is also sent to the issue's assignee, or to its creator when nobody is assigned, as an Inbox item.
A new Checkpoint history section shows each agent run on the issue, with the questions the agent asked and the answers it was given.
Settings → Rules lists the rules agents follow, with filters for kind, scope, agent and autonomy. A rule an agent proposes stays inactive until a person turns it on.
- Improvement
Your first task and Learn progress stay in step across tabs and offline
Closing the first task's live log, hiding the first-task offer, starting the first task over and dismissing onboarding reminders are now saved even if the connection drops, and every open tab agrees on them. A log you close stays closed after a reload. The Learn page and the first-task offer load from data already on your device, so they appear without waiting on the network. "Start over" shows that it is resetting until the reset is confirmed, and no longer clears your progress if your agent has already started a new task.
- Feature
See how an issue's gates performed when it is done
When an issue or any of its sub-issues has gates, moving it to Done now shows a gate summary: how many gates passed, which ones failed first and were fixed before Done, and which were waived or skipped. Your agent gets the same summary when it marks the issue done or reports gate results, and a Done issue's page shows it as a live card. The card leads with the outcome: green when the code earned every pass, amber when a gate was waived or changed after it failed, and red only while a required gate still stops Done. It makes visible how gates kept work from being called finished too soon.
The gate verification comment on the issue is now a single line: how many gates pass, and the names of any that do not. A re-check that changes nothing no longer adds another comment.
- Feature
Gates no longer assume a TypeScript monorepo
The gate types every workspace sees now carry nothing tied to one repository.
- Check that a symbol is wired in, in TypeScript or Rust.
levr gates refs --lang ts|rustfinds where a symbol is declared and counts the references to it from other modules, using the language server from your own checkout (tsgo, or rust-analyzer). The Symbol Referenced gate type runs it, so it now works in every workspace. - Structural rules for other languages. An AST Pattern gate can name a
language(for exampleRust), or take a default from your workspace's gate binding. - Checks you configure, or switch off. Security, persistence, reachability and other concern gates are now command slots your workspace binds to its own tool. A gate type you have not configured says how to bind it or how to disable it. A disabled gate type stops blocking Done, and nothing already deployed is deleted.
- Default gate sets for Deliverables, Features, Bugs and Stories now hold only checks that work in any repository. A member you removed from a default set is never added back.
- Check that a symbol is wired in, in TypeScript or Rust.
- Fix
Invitations sent to several workspaces now land in each of them
Inviting someone to more than one workspace at once used to put every invitation into the workspace you were working in, or fail with a duplicate error. Each invitation now lands in the workspace it was meant for, and the invitation records you as the sender in that workspace.
Switching your primary workspace is now recorded under your own account rather than as a system action.
- Improvement
An agent keeps each task's browsing in one window and closes it when done
Agents using Levr Browser now reuse one window per task and close it when the task is finished, with the new
browser_close_windowtool. An agent can only close windows it opened itself, so your own windows are never touched. - Breaking
Only permitted people can change gate commands, and GitHub Actions results are verified
Only people with permission to edit gate commands can now change them; other members see the command as read-only. Gate results reported from GitHub Actions are verified and recorded as verified CI, while other CI claims are marked unverified. Run gates with
npx @levr-one/cli@latest gates run; file checks now run inside the CLI and start no shell. - Feature
Install, disconnect and reinstall the Jira app cleanly
Installing, uninstalling and reinstalling the Levr app for Jira now works cleanly: a reinstall reconnects to the same site instead of creating a duplicate, and an uninstall pauses sync. Before you link a Jira site, the setup page names the Levr workspace it will be linked to and lets you change it. Linking now needs a Jira administrator and a Levr workspace admin.
- Improvement
levr mcp add sets up more agent tools, in the right place
levr mcp addnow lists agent tools such as Claude Code, Codex CLI, Grok Build, Antigravity and Gemini CLI first, and can set up Codex CLI and Antigravity for a single project. It respectsCLAUDE_CONFIG_DIRandCODEX_HOME, so it writes to the configuration your tools actually read. If a tool is already connected to a different workspace, it asks whether to switch it or add a second entry beside it, and it warns when a project file it writes is ignored by git and so will not be shared. - Feature
What's New page and get_whats_new tool
The docs site has a new What's New page listing every customer-visible change, newest first, with filters by type and product area. Agents can read the same list with the
get_whats_newMCP tool, which works without choosing a workspace. - Improvement
Revoking an app's access takes effect everywhere, and the consent screen names every scope
Withdrawing an app's access in one workspace now takes effect there straight away, without ending its access in your other workspaces. Signing out revokes your session tokens. The consent screen now names every permission an app asks for, and sign-in redirects are more tightly checked.
- Feature
New users start with a guided first task
New users can now start with a guided first task: describe a small task, connect your agent and run the prompt Levr gives you. A live log shows each step as your agent plans the work, runs its gates and closes the task, and ends with a recap. You can run it again at any time from Learn.
- Feature
Levr Browser: let your agent work in your own signed-in browser
Levr Browser is a browser extension that lets your AI agent work in your own Chrome, Edge or other Chromium browser, using the sites you are already signed in to. Your agent connects through the Levr Browser MCP server, and can only reach your own browser, never a teammate's. Each connected browser shows up by its real name (for example "Edge on Windows").
- Feature
Invite several people at once
The Invite User field now takes several addresses at once, separated by commas, spaces or new lines, including addresses copied from your email client. Up to 50 people can be invited at a time, and they appear under Pending straight away.
- Fix
Jira sync keeps descriptions, statuses and new issues in step
Jira sync is more reliable in both directions. Description edits made in Jira now come into Levr, and a Levr status change moves the Jira issue to a matching status without any extra setup. Issues created in Levr arrive in Jira once, with a valid issue type, and a label Jira cannot accept no longer blocks the rest of the update.
- Fix
A sub-issue with no type still blocks its parent from Done
A parent issue could be marked Done while a sub-issue with no type was still open in a Backlog state. That sub-issue now blocks the parent from Done, the same as any other open sub-issue.
- Fix
Gate verdicts name the failing command and count test failures correctly
When a gate fails, its verdict now names the command that failed instead of a generic "test runner exited" message. Gates that run a test suite read the failure count from the runner's own summary, so a log line that mentions "failed" no longer fails a passing run. A gate result reported without its raw output is recorded as an error, not a pass.
- Feature
Learn opens with a hands-on lesson: plan, gate, build
Learn now has one set of lessons for everyone, with no role to pick. Each hands-on lesson briefs you, lets you run it with your agent, then shows what happened. The first lesson walks through planning a task, adding gates and building it.
- Feature
Choose the workspace when you sign in from the CLI
levr auth login --workspace <workspace>signs you in and selects that workspace in one step, skipping the workspace picker. It works with--device-codetoo. An unknown workspace stops the login and lists the ones you can choose. - Improvement
Issue pages with many linked tests open faster
Issue pages with many linked tests open faster. The Gates and evidence panels now load only the tests linked to the issue.
- Feature
Connect agents to more than one workspace with a per-workspace MCP URL
Each workspace now has its own MCP URL, ending in
/w/<workspace key>. Add one connection per workspace to your agent, and each connection always works in the workspace its URL names, with no header to set. The MCP setup screens in the app,levr mcp add --workspaceandlist_workspacesall give you the right URL, and it also works with the Levr Browser MCP server. - Improvement
A connection with no workspace chosen offers only the workspace list
If you belong to several workspaces and connect through the plain MCP URL without choosing one, that connection now offers only
list_workspaces. It lists your workspaces and the URL for each, so you can add the one you need, and your agent no longer sees a second copy of every Levr tool. - Feature
Record the outcome of each code-review Finding, and override it when needed
A code-review Finding now has an Observations section that shows how each reviewer voted and the Finding's outcome. You can override the outcome by approving or rejecting the Finding with a note, and the Finding shows who did it and when. New help pages explain reading Findings and building your own code-review skill on Levr.
- Improvement
Initiatives are easier to reach and browse
The project sidebar has a new Initiatives row: see the initiatives a project belongs to, open one, and add or remove links. On an initiative, Projects and Sub-initiatives now have their own tabs. The Initiatives list tooltips are easier to read, and the sidebar's Rollup section is now called Progress.
- Fix
JUnit imports record errors correctly and accept large real-world reports
JUnit reports with many escaped characters were rejected on import. They now import normally. A JUnit
<error>result is now recorded as errored, and errored, timed-out and interrupted results all count as failures in test health and fail rates. - Breaking
Nine MCP tools are retired, and get_project now includes project stats
Nine MCP tools are retired:
archive_project,restore_project,get_draft,backfill_assignments,get_initiative_themes,get_release_initiative_summary,get_help,flag_help_docs_gapandget_project_stats. For now, calling one of them returns the name of the tool to use instead. Project statistics are now part ofget_project, andget_draftscan look up a draft by its entity. - Fix
More of the app is translated
More of the app now appears in Spanish, including the Jira settings card, the Jira links in the issue sidebar, the delete confirmation and the project Updates tab.
- Fix
Changes from other tabs save reliably, each to its own workspace
Changes made in another tab of the app are saved to your device reliably again, even after the app restarts its local database in the background. Each change is written only to the workspace it came from, so switching workspaces while one is on its way never puts it in the wrong workspace.
- Improvement
MCP tools tell agents when to move an issue and explain a bad filter
Gate tools now tell your agent what to do next with an issue: start it, finish verifying it, clear what blocks it, or close it. This helps agents move work through its states instead of leaving finished issues in To Do. A filter with a malformed value, such as an invalid ID or date, now returns a clear error naming the problem instead of an internal error.
- Fix
The MCP setup card shows the right status for the workspace you are in
The MCP setup card in the desktop app no longer says "Configured" when your agent is connected to a different workspace. It now says the connection is set up for another workspace and offers to switch it or add a second connection beside it.
- Fix
Due dates no longer show a day early
Due dates showed one day early on the board, in linked-issue rows and in the Needs attention widget for anyone west of UTC. They now show the correct day everywhere, and "due today" and "overdue" switch on the right day.
- Feature
Act on several Inbox rows at once, and the Inbox remembers your view
Select several Inbox rows and mark them read or unread, snooze, archive, mute or stop following them in one step. Each row has a Mark read button, and Archive read clears everything you have already read. The Inbox also remembers your tab, filter and sort order between visits, and assignment rows say who has the issue now.
- Improvement
Following is smarter: watchers hear about reassignments, and finished issues stop notifying
People following an issue now hear when its assignee changes. When an issue is done or canceled, the follows Levr added for you automatically are removed, so finished work stops notifying you; you can turn this off in notification settings. Muting something you do not follow no longer makes you follow it once you unmute it.
- Fix
Agents can mention people when they comment, and a malformed mention no longer blocks the comment
People named in the
mentionsfield of theadd_issue_commentMCP tool are now mentioned in the saved comment and notified. A malformed mention in a comment's text no longer stops the comment from being saved. - Feature
Email notifications, with a digest and simpler settings
Levr can now email you about inbox notifications you have not read, after a short delay and within your working hours. You can choose a daily or weekly digest instead, sent when your working hours start. Notification settings are simpler: one Email column, and turning email on selects every type so you can untick the ones you don't want.
- Improvement
GitHub: clearer rules for which references close an issue, and a full setup guide
When a pull request merges, an
Issue:,RefsorPart ofline now keeps an issue open, while a closing line such asFixes:closes it. A merged pull request closes a plan only once its deliverables are finished. Repositories the GitHub app can no longer access are hidden instead of stopping sync, and a new help guide covers the full GitHub setup. - Feature
The Levr TypeScript SDK is published on npm
The Levr TypeScript SDK is now published on npm as
@levr-one/sdk. It gives typed access to Levr's public API from your own scripts and tools. - Improvement
Copy URL gives a short issue link
Copy URL on an issue now copies a short link with the issue's identifier instead of a long address full of internal IDs. The link opens the issue, including its history.
- Fix
Playwright traces open from their attachment
The
npx playwright show-tracecommand copied from an automation result now opens the trace. Before, the trace viewer could not load it. - Feature
Attach local files as evidence from the CLI
The new
levr attachcommand uploads files from your computer, such as screenshots, traces and videos, to an issue, test or test result.levr result appendadds text and files to a test result, andlevr push --artifactsuploads the files your test report refers to. Files are private by default;--embedalso shows them in a new comment. - Feature
Contact us from the app menu
The profile menu has a new Contact us item, with links to join our Slack community and to email support.
- Fix
SLA Rules settings are available again
Creating an SLA rule from Settings failed with an error, so the SLA Rules page had been turned off. Rules can be created again, and the page is back in Settings.
- Fix
A team never reuses an issue number
Moving a team's newest issue to another team could free its number, so the next new issue got the same identifier. A team now never reuses an issue number, so links, branches and pull requests that name an issue always point to the same one.
- Fix
Cycles fixes: scheduling, empty states and layout
Several Cycles fixes: the schedule's timezone picker shows the saved timezone, the Details panel can be shown again after you hide it, and opening the cycle schedule from an empty state keeps you in fullscreen.
- Feature
Inbox rows say why you follow them, with Mute and Stop following on the row
An Inbox row you get because you follow something now says so, for example "following" or "following (auto)", with the full reason in a tooltip. Mute and Stop following are available on the row, and from the keyboard with M and Shift+M.