Skip to main content

Foxglove 3.5.0

🔑 Call the API with personal access tokens​

Members on Pro, Enterprise, and Academic plans can create personal access tokens to call the Foxglove API as themselves, limited to the capabilities they choose. Open Settings → Personal access tokens to create one, then send it as a bearer token. Read more about Personal access tokens.

curl https://api.foxglove.dev/v1/devices \
-H "Authorization: Bearer $FOXGLOVE_PERSONAL_ACCESS_TOKEN"

🔍 Search by pasted IDs and names, and export results​

Paste a recording, event, or device ID, or a recording name, into the Search bar, and the suggestions include a matching query, such as @event.id == evt_…, along with Search with AI to run the text as an AI search. When a structured search returns no results, Fix my query opens the agent to diagnose it. Select results in the List or Gallery view and click Export CSV to download them. Read more about Building a query and Exporting results as CSV.

📜 Browse logs without moving playback​

For recordings and files, the Log panel loads messages around the part of the log you're viewing, so topics with bursts and long gaps stay browsable. Scroll to browse the log, including past the current time, without seeking the other panels. Click Follow playback, seek, or start playback to follow the current time again. Read more about Timestamp navigation.

New & Improved
  • Dashboard: Open local file(s) and Open connection sit in the page header, and Upload local file, Compare local files, and Explore example data are in the ⋮ menu. Admins invite members from Settings → Members
  • Playback bar: the Show on timeline menu hides events on the playback timeline, or shows only the event types you pick
  • Agent sidebar: the agent creates, updates, and deletes events on a device. If you previously chose Always allow for event editing, approve Update events again
  • Agent sidebar: the agent lists events and reads event type properties and allowed values without an open visualization
  • Agent sidebar, Slack, and MCP: replies link devices, recordings, sessions, and other Foxglove objects to their pages
  • Slack: requests that don't name a Project use the oldest Project you can access instead of asking which one to use
  • Data source menu: Open in desktop app opens the current recording, session, or remote file in the desktop app at the current playback time — see Web vs. desktop
  • Data source menu: Copy link copies a working link for remote files, is disabled with an explanation for files opened from signed URLs, and is hidden for local files
  • Timeline: Coverage details has a Search in this range button that opens Search for the device and time range. On the Search page, it narrows the current search to the range selected on the results timeline
  • Recordings and Events: URLs and recording, event, and device IDs in metadata values are links, including inside longer values
  • Events: event types are marked with a solid diamond in the type's color, matching instant events on the timeline
  • State Transitions: a Label position setting shows series labels in a column to the left or right of their rows — see Label position
  • Stack panel: the mouse wheel scrolls an overflowing Stack. Click a nested panel to zoom it with the wheel, and move the pointer out of it to scroll the Stack again
  • Table panel: expanded rows and nested cells stay open after switching tabs or reloading the layout
  • Audio panel: audio keeps its original pitch at any playback speed. Turn off Preserve pitch to resample instead — see Playback speed
  • Topic Graph: nodes, topics, and services are compact labeled pills in theme colors
  • Panel settings: clicking Add in a settings group expands the group and scrolls to the new item
  • Navigation: Recordings, Sessions, Events, Devices, and Layouts show the page name as a heading at the top of the page instead of in the web app bar
  • Filters: filter controls share one filter icon, and search fields and their empty states say Search instead of Filter
  • Desktop: on Linux, the Debian package recommends video acceleration (VA-API) drivers
Performance
  • MCAP: indexed files opened locally or from a URL load and seek faster
  • Playback: resumes sooner after seeking in recordings stored in Foxglove
  • Playback: reading and seeking compressed recordings repeats less decompression work
  • Playback: removing topics keeps the buffered messages of the topics that remain
  • Web app: recordings start loading sooner, especially on slower networks
  • WebSocket and Remote Access: connections that advertise many topics sharing a schema connect faster
  • Recordings: filtering by a recent data date range is faster
  • User Scripts: switching layouts no longer recompiles unchanged scripts, and their outputs stay visible during the switch
API
  • Recordings: concurrent imports that share a session key no longer fail with a false device-mismatch error
  • Recordings: index-in-place recordings stay available after their object moves to another bucket path
  • Webhooks: notifications wait until the resources they reference can be read through the API, so follow-up calls made right after a notification find them
  • Pending imports and import errors: completed and failed imports are kept for 30 days, in Import errors and in the API
  • Site bucket notifications: Pro organizations can create notification tokens for their bring-your-own-storage sites instead of getting a Forbidden error
  • Primary Sites: ap-northeast-2 is available as an AWS bring-your-own-storage region
Fixes
  • Playback: pausing a cloud recording keeps its data stream, so resuming doesn't buffer again
  • Playback: device-stream links stay at the linked time instead of jumping back to the start of the range
  • Playback: timestamps in the America/Vancouver time zone show UTC-7 after British Columbia moves to permanent UTC-7 on November 1, 2026
  • Plot: messages whose timestamp has a fractional sec or nsec value no longer blank or freeze the panel
  • Plot: empty or whitespace-only strings are treated as missing instead of 0, including in functions such as .@abs
  • Plot: live series keep their most recent points when samples arrive out of order after reaching the point limit
  • Plot: lines keep their shape when you hide or show a dynamic series
  • Plot: in comparison mode, XY series that use the panel's x-axis expression draw their data, and points no longer shift when a value can't be plotted
  • Plot: series after the seventh continue the color cycle instead of all being blue
  • Plot: CSV exports keep topics that contain a comma, quote, or newline in one column, and topics starting with =, +, @, or - no longer run as spreadsheet formulas
  • Plot: CSV export finishes in XY plots when a latest-message series has no data
  • Plot: CSV export writes negative timestamps correctly
  • Plot and State Transitions: hovering or clicking in the chart margins no longer shows a tooltip or seeks outside the visible time range
  • FoxQL: expressions that end in a function, such as .@abs, flag fields that don't exist
  • User Scripts: switching data sources or leaving the page while scripts compile no longer freezes the browser tab
  • User Scripts: scripts that import from "ros" compile when the data source has protobuf, FlatBuffers, JSON Schema, or OMG IDL topics
  • Agent sidebar: events the agent creates from message timestamps land at the right time, and the agent avoids duplicating existing events
  • Comparison mode: the events bar no longer shows a source's events from outside its recording when comparing or merging recordings of different lengths
  • Comparison mode: long recording names in the header keep their leading characters
  • 3D panel: transparent voxel cubes are drawn back to front, and clicking selects the nearer point cloud
  • 3D panel: opaque scene entity lines are hidden behind closer geometry instead of darkened by translucent objects
  • 3D panel: automatic color ranges work for point clouds whose color field contains NaN or infinite values
  • 3D and Image panels: the selected-voxel highlight lines up with the voxel grid's own timestamp, including in comparison mode
  • Raw Messages: the first Next click no longer takes several seconds
  • Raw Messages: Previous steps back from the displayed message instead of seeking back onto it
  • Topic Graph: node labels are no longer cut off on first load, and the view re-fits when the graph changes
  • Markdown panel: the data source selector appears in comparison mode
  • Navigation: sidebars keep their scroll position when you move between pages
  • Remote Access: sessions close when the device or its token is removed from an organization that no longer has remote access
  • Remote Access: Reconnect is disabled after the connected device is deleted
  • Timeline: the Foxglove CLI export command in Coverage details works with Foxglove CLI v2
  • Devices: the overflow button on the device details page matches the height of the other header buttons
  • Desktop: double-clicking a .foxe file installs the extension instead of showing an error
  • Desktop: Chromium --disable-features values passed at startup are kept
  • Desktop: on Linux, the Debian package no longer makes Foxglove the default app for unknown binary files and ZIP archives

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: x64 arm64 | Mac: Apple Silicon Intel