3.17.2 Release Notes#
Squirro 3.17.2 was released on October 1, 2026.
Learn more about the Squirro Release Process.
Notes for administrators
This release introduces important changes that may require adjustments to your existing setup. Learn more
Release summary
Squirro Neo tasks can follow real business calendars, such as quarterly reporting, month end, or the first business day, and each task opens on its own page with its run history.
Teams deploying Neo agents can manage several environments, such as test and production, and several accounts from one command-line setup.
Speech to Text in Squirro Chat transcribes in the interface language of each user, such as German, French, or Italian, instead of always English.
Data ingestion reports a batch it cannot write as failed, and cleans up interrupted batches automatically.
Customers using the Neo command-line tools or the task API need to update their scripts as part of the upgrade.
Improvements#
Neo Tasks#
Neo task form authoring every schedule shape, with an optional task assistant and a preview of the next three runs.
Redesigned Neo task page, showing the selected run as a conversation next to the Run History panel, and a Tasks group in the sidebar.
Neo task schedules for quarterly and other month sets, month end, weekday positions such as the second Tuesday, and several days in a month.
Biweekly, every N months or years, several times a day, and end dates available in Neo task schedules.
first_business_dayandlast_business_dayvalues forby_month_dayin Neo task schedules, counting Monday to Friday without public holidays.schedule_statuson Neo tasks, reportingpausedfor a task switched off andfinishedfor one past its end date.Neo tasks that can never run refused when saved, such as one ending in the past or scheduled for February 30.
Task requests handled without stalling the Neo conversations of other users.
Neo Interface#
Rail navigator for jumping between questions in long Neo conversations, with Alt+Arrow Up and Alt+Arrow Down shortcuts.
Streaming spinner in the Neo sidebar shown only on conversations other than the open one.
itemsquery parameter on the Neo chat page, attaching the given documents to the composer.Operating system reduced-motion setting honored across the Neo interface.
Accessible name on the administrator-managed marker in the Neo Connectors dropdown.
Neo CLI#
Named deploy targets in the Neo
genaiCLI, managed withgenai targetand holding several environments selected with--env.genai target addasking for the cluster and listing the projects you can deploy to when run without options.Logins for several accounts on one cluster in the
genaiCLI, with each environment naming the account it uses through--principal.--api-key-stdinoption ongenai loginandgenai init, reading the token from standard input.Agent skill carrying the
genaiCLI documentation, installed withgenai skill install, and bygenai initunless--no-skillis passed.genai explainavailable against a deployed project, for project administrators.Login offered by the
genaiCLI on a terminal when a cluster refuses the stored credential.Exit status
3fromgenai whoamifor a login that needs action first, with every command naming the account it uses.genai --versionoption printing the installed release.genaiCLI credentials cache written atomically and readable only by its owner.
Squirro Chat Widget#
Speech to Text language setting in the App & Nav Bar settings, overriding the interface language for a project.
Recording state on the Speech to Text microphone button, with spoken text appended to the existing input.
Items count removed from the Chat widget sidebar.
Platform#
Ingestion requests reported as failed when their batch cannot be written.
Incomplete ingestion batches left by an interrupted write removed automatically.
Obsolete
contentandwebshotservices removed, with their packages uninstalled on upgrade.new_pipeletmethod in the SquirroClient SDK, registering or updating a pipelet for the current tenant.Custom per-request data passed from Squirro Chat requests to the results transformer configured on the project.
Bug Fixes#
Neo Tasks#
Quarterly Neo task firing every month.
One unreadable task schedule failing the whole Neo task list.
genai task updateturning auto-firing back on for a paused task when its time was edited.Approval rules not removable from a Neo task, with the update reported as successful.
Misspelled or unused Neo task schedule fields accepted and ignored silently.
Neo Interface#
External-link dialog title reading “Leaving ProjectName” in every language of the Neo interface.
English-only external-link dialog on Neo search result source links and the full-page item detail.
Neo chats started by a task, or reloaded, showing the standard project setup instead of their assistant.
Follow-up turn duplicating its row in the Neo sidebar, and the streaming spinner never clearing for a conversation answered in the background.
Opening a cited document in full screen resetting it to page 1, or leaving the Neo item detail blank.
Neo CLI#
Cluster URL typed at a prompt storing a login that later
genaicommands could not find, andgenai logoutleaving the token on disk.GENAI_API_KEYwritten to disk and preferred on later runs, keeping an old key in use after rotation.Neo preference value sent as a list or an object failing the whole request.
Neo Core Library#
Neo bundles importing from
@squirro/neo-core/componentsfailing to build against the 3.17.1 package.
Squirro Interface#
Re-uploaded file discarded when editing a file data source, with the save failing silently.
Download button missing from the Item Detail view for documents whose original file is not a PDF.
Custom widget editor showing a blank screen when opened a second time.
Speech to Text transcribing in English whatever the interface language.
Overriding a single LLM setting in
genai.sqgpt.settingsat project level failing validation, or the Set Value option snapping back to Default To Server Setting.Server-level LLM settings no longer reaching a project after its Project Configuration dialog in the Chat widget was saved.
Multi-select facet values picked from the facet search box producing malformed queries, or combining different facets with OR.
Platform#
Ingestion requests intermittently failing with a 500 error while another batch finished processing.
Ingestion data file left truncated by a crash, failing every later attempt to process it.
Containerized Deployments#
Technical Preview - Chat answers and summaries appearing all at once instead of streaming in containerized deployments.
Technical Preview - Uploaded pipelets and their data files lost in containerized deployments when the
plumberservice restarted.Technical Preview - Machine learning workflows failing in containerized deployments that cannot reach Hugging Face.
Technical Preview - Thumbnail Extraction pipeline step failing in containerized deployments on non-PDF items carrying a
linkorwebshot_picture_hintfield.
Breaking Changes#
Neo Tasks#
The Neo task schedule format is replaced, and the old fields are refused.
time,recurrence,days_of_week,day_of_month, andmonth_of_yearbecometimes,freq,interval,starts_on,ends_at,by_day,by_month_day, andby_month, modeled on RFC 5545 recurrence rules. Thegenai taskflags follow:--recurrencebecomes--freq,--days-of-weekbecomes--by-daywith weekday tokens such asMOor2TU,--day-of-monthbecomes--by-month-day, and--month-of-yearbecomes--by-month. Stored schedules are converted during the upgrade, and rolling back is refused once a task uses a capability the old format cannot express. Update any client or script that creates or reads task schedules.
Neo CLI#
genai initselects a registered deploy target and no longer takes--clusteror--project, and the.genai/target.yamlfile in a checkout is no longer read. Register the destination withgenai target add NAME --cluster URL --project ID, then rungenai init --target NAME. In an existing checkout, the first command run after upgrading names the cluster and project the old file holds, and the two commands that convert them into a target.status,explain,log,reseed,login,logout,whoami, and thetaskcommands of thegenaiCLI no longer take a directory argument, as ingenai status ./ws, and passing one is a usage error. Run them from inside the directory instead.genai loginchanges in four ways.--manualis removed, so use--api-key-stdininstead, which prompts for the token without echoing it on a terminal. Without a terminal, the command exits at once instead of waiting for a browser approval, so drop any CIloginstep, since every other command authenticates fromGENAI_API_KEY, or pass--use-device-codeto run the device login without a terminal.GENAI_NO_INPUTis no longer read, and commands prompt only when standard input is a terminal. Credentials in~/.config/genai/credentials.yamluse a new format that older CLI versions cannot read, so log in again before going back to an older CLI on the same machine.
Neo Core Library#
@squirro/neo-core/chatno longer exportsITodoListBlock,ITodoItem, orisTodoListBlock, andIOutputBlockdrops theoutput_block.todo_listmember. Remove any reference to them from a custom Neo interface.
Squirro Chat Widget#
Custom Chat
SidebarComponentoverrides no longer receive theindexedItemsprop. UsesourcesInfoinstead, reading theitems_indexedvalue of each source.
KEE#
KEE sources no longer accept the legacy
dsnoption. Declare a CSV source withsource_typeandsource_file.
Installation and Upgrade#
For new installations, find step-by-step instructions on the Install and Manage Squirro with Ansible page (recommended) and Installing Squirro on Linux pages.
To upgrade an existing installation, see the Upgrading Squirro page.