Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
268 commits
Select commit Hold shift + click to select a range
580d41d
chore(mypy): run from repro root in CI (#6995)
jmelahman Mar 2, 2026
4f3c54f
chore(playwright): hide actions toolbar buttons in screenshots (#8914)
jmelahman Mar 2, 2026
30704f4
refactor: add abstraction for cache backend (#8870)
evan-onyx Mar 2, 2026
13d60dc
test(scim): add integration tests for SCIM group CRUD (#8830)
nmgarza5 Mar 2, 2026
dfa27c0
chore(deployment): optimize layer caching (#8924)
jmelahman Mar 2, 2026
709e3f4
chore(icons): add SvgCreditCard and SvgNetworkGraph to @opal/icons (#…
raunakab Mar 2, 2026
3c1d29d
chore(opensearch): Configure index settings for multitenant cloud (#8…
acaprau Mar 2, 2026
1f5050f
refactor(admin): update admin-page `HealthCheckBanner` (#8922)
raunakab Mar 2, 2026
28332fa
fix(ui): InputComboBox search for users/groups (#8928)
justin-tahara Mar 2, 2026
30fa43b
chore(deps): bump pypdf from 6.7.3 to 6.7.4 (#8905)
dependabot[bot] Mar 2, 2026
1a65217
fix(scim): pass Okta Runscope spec test for OIN submission (#8925)
nmgarza5 Mar 2, 2026
71a1faa
fix(fe): break long words in human messages (#8929)
jmelahman Mar 2, 2026
6cfd494
chore: Bump code interpreter to 0.3.1 (#8937)
Danelegend Mar 2, 2026
4fc802e
chore(deps): bump pypdf from 6.7.4 to 6.7.5 (#8932)
dependabot[bot] Mar 2, 2026
a84f823
chore(fe): space between Manage All connectors button (#8938)
jmelahman Mar 2, 2026
700ca0e
fix: Sticky background in CSV Preview Variant (#8939)
Danelegend Mar 3, 2026
fe01477
feat: embed code interpreter images in chat (#8875)
Danelegend Mar 3, 2026
d789c74
chore(icons): add `SvgBookmark` to `@opal/icons` (#8933)
raunakab Mar 3, 2026
21ec936
chore: proxy cloud ph (#8961)
wenxi-onyx Mar 3, 2026
f380a75
fix: Non-intuitive llm auth exceptions (#8960)
Danelegend Mar 3, 2026
be8b108
chore(auth): ecs fargate deployment cleanup (#8589)
jessicasingh7 Mar 3, 2026
24ac8b3
refactor(fe): define settings layout width presets as CSS variables (…
raunakab Mar 3, 2026
fa29cc3
feat: postgres cache backend (#8879)
evan-onyx Mar 3, 2026
2c3e9ae
fix(scim): only list SCIM-managed users and link pre-existing users (…
nmgarza5 Mar 3, 2026
07915a6
fix: Update frontend route calls to use new endpoints (#8968)
Danelegend Mar 3, 2026
eda436d
fix: Block deleting default provider (#8962)
Danelegend Mar 3, 2026
6aa5682
feat: use new cache backend where appropriate (#8889)
evan-onyx Mar 3, 2026
60fe3e9
refactor(fe): migrate admin pages from AdminPageTitle to SettingsLayo…
raunakab Mar 3, 2026
1de522f
fix: sandbox rollback db on pod deletion failure (#8965)
wenxi-onyx Mar 3, 2026
5fd0fe1
fix: Tokeniser does not rely on llm (#8967)
Danelegend Mar 3, 2026
1b32a7d
fix: Default code interpreter base url (#8969)
Danelegend Mar 3, 2026
6532c94
chore: Add greptile.json configuration file (#8978)
justin-tahara Mar 3, 2026
0355311
fix(ollama): debounce API url input and properly handle model fetch r…
wenxi-onyx Mar 3, 2026
c98aa48
refactor(fe): migrate onboarding components to Content/ContentAction …
raunakab Mar 3, 2026
69c8aa0
fix(ci): Add secrets inheritance to nightly LLM provider chat workflo…
justin-tahara Mar 3, 2026
f902727
chore(devtools): `npm run test:diff` on changed files (#8991)
jmelahman Mar 3, 2026
328c305
chore: remove dead code from admin theming (#8979)
wenxi-onyx Mar 3, 2026
4fded5b
chore: remove dead code from expandable content component (#8981)
wenxi-onyx Mar 3, 2026
98e3602
fix: google connectors redirect to connector page instead of auth err…
wenxi-onyx Mar 3, 2026
3e67ea9
feat: Code Interpreter responsive in actions dropdown (#8982)
Danelegend Mar 3, 2026
2b1f1fe
chore: use abort controller to properly manage oauth requests (#8994)
wenxi-onyx Mar 3, 2026
49b509a
fix(permissions): Add file connector access control for global curato…
justin-tahara Mar 3, 2026
c63fdf1
fix(opensearch): Increase the Vespa http client timeout to 120s for t…
acaprau Mar 3, 2026
98e6346
chore: [Running GitHub actions for #8972] (#8996)
Bo-Onyx Mar 3, 2026
19c7809
feat: Add illustrations to `opal` (#8993)
raunakab Mar 4, 2026
01d3473
chore: port Greptile custom context rules to greptile.json (#9003)
nmgarza5 Mar 4, 2026
003d945
fix(a11y): prevent show password button losing focus on tab (#9000)
jmelahman Mar 4, 2026
9862fbd
chore: deploying onyx lite (#9004)
evan-onyx Mar 4, 2026
50575d0
chore(ui): Rename from LLM Models to Language Models (#9007)
justin-tahara Mar 4, 2026
0dbabfe
feat: Support intermediate code interpreter file generation (#9006)
Danelegend Mar 4, 2026
8ef504a
refactor: add OnyxErrorCode enum and migrate billing/license routers …
nmgarza5 Mar 4, 2026
7a7350f
fix: Markdown does not show all texts (#9009)
Danelegend Mar 4, 2026
d2f35e1
feat: Align action tool tips (#8997)
Danelegend Mar 4, 2026
60891b2
feat: Add IllustrationContent layout component to opal (#9011)
raunakab Mar 4, 2026
a8cdc39
refactor(fe): move onboarding to sections/, consolidate hooks, move t…
raunakab Mar 4, 2026
c627cea
feat(opal): add sidebar variant to Interactive + refactor SidebarTab …
raunakab Mar 4, 2026
96f7cbd
fix: Use `IllustrationContent` for empty search results (#9013)
raunakab Mar 4, 2026
0f74da3
fix(fe): dont align center modals on small screens (#8988)
jmelahman Mar 4, 2026
3678089
chore: remove lightweight mode (#9014)
evan-onyx Mar 4, 2026
b148065
chore(devtools): `--debug` mode for desktop (#9027)
jmelahman Mar 4, 2026
e5e2bc6
chore(fe): "Share Chat"->"Share" (#9022)
jmelahman Mar 4, 2026
649c7fe
feat(slack): convert markdown tables to Slack-friendly format (#8999)
nmgarza5 Mar 4, 2026
57d3ab3
feat: add SCIM token management page (#9001)
nmgarza5 Mar 4, 2026
5da8870
fix: stop calling unsupported endpoints no vectordb (#9012)
evan-onyx Mar 4, 2026
5322aee
chore(deps): bump hono from 4.11.7 to 4.12.5 in /backend/onyx/server/…
dependabot[bot] Mar 4, 2026
f1cf3c4
feat(table): add table primitive components and styles (#9017)
Subash-Mohan Mar 4, 2026
52db41a
chore(deps): bump nltk from 3.9.1 to 3.9.3 (#9045)
dependabot[bot] Mar 4, 2026
8193aa4
fix(ui): Persist agent sharing changes immediately for existing agent…
justin-tahara Mar 4, 2026
b272085
fix: Code Interpreter Client session clean up (#9028)
Danelegend Mar 4, 2026
b2956f7
refactor: migrate LLM & embedding management to OnyxError (#9025)
nmgarza5 Mar 4, 2026
2d996e0
chore(fe): opal button migration (#8864)
Bo-Onyx Mar 4, 2026
9253808
feat(table): add useColumnWidths, useDataTable, and useDraggableRows …
Subash-Mohan Mar 5, 2026
5176fd7
fix(llm): Final LLM Cleanup for Nightly Tests (#9055)
justin-tahara Mar 5, 2026
aca466b
fix: doc to hierarchynode connection in pruning (#9046)
evan-onyx Mar 5, 2026
47d9a9e
feat(document index): Re-enable search settings swap (#9005)
acaprau Mar 5, 2026
eb3e15c
feat(table): add ColumnVisibilityPopover, Footer, Pagination, and Sor…
Subash-Mohan Mar 5, 2026
b18baff
fix: Correct file_id for docs (#9058)
Danelegend Mar 5, 2026
c5c236d
chore(opensearch): Fix and consolidate the dev script used to start O…
acaprau Mar 5, 2026
3a7d4da
fix(ui): Improve text truncation and overflow handling in FileCard la…
justin-tahara Mar 5, 2026
2c0a4a6
refactor: consolidate AppInputBar search/chat rendering with animated…
raunakab Mar 5, 2026
e0d91b9
chore(fe): rm unreachable code (#9069)
jmelahman Mar 5, 2026
f7630f5
fix: EE route gating for upgrading CE users (#9026)
nmgarza5 Mar 5, 2026
ee18114
feat(table): add DataTable config-driven wrapper component (#9020)
Subash-Mohan Mar 5, 2026
7eabfa1
fix(fe): properly wrap copy and edit buttons on mobile (#9073)
jmelahman Mar 5, 2026
62ef6f5
chore(playwright): screenshot tests for user settings pages (#9078)
jmelahman Mar 5, 2026
8c5859b
fix(fe): disable projects modal button unless project is named (#9093)
jmelahman Mar 5, 2026
8247fdd
fix(llm): Handle Bedrock tool content in message history without tool…
justin-tahara Mar 5, 2026
8fd91b6
chore(devtools): `ods desktop` (#9100)
jmelahman Mar 5, 2026
fde0d44
chore(devtools): upgrade `ods` to go 1.26 (#9103)
jmelahman Mar 5, 2026
20a4dd3
chore(devtools): pull release branch and support PR # args (#9102)
jmelahman Mar 5, 2026
b5c8730
chore(devtools): upgrade `ods`: 0.6.2->0.6.3 (#9105)
jmelahman Mar 5, 2026
8afc283
fix(chrome-extension): open login in new tab when session expires (#9…
rohoswagger Mar 5, 2026
41713d4
chore: upgrade golangci-lint to v2.10.1 for Go 1.26 support (#9107)
rohoswagger Mar 5, 2026
9d6ce26
fix(fe): show modal body on Safari/desktop (#9035)
jmelahman Mar 5, 2026
7e3f7d0
chore(deps): bump authlib from 1.6.6 to 1.6.7 (#9049)
dependabot[bot] Mar 5, 2026
2d75b4b
chore(deps): bump dompurify from 3.3.1 to 3.3.2 in /widget (#9106)
dependabot[bot] Mar 5, 2026
b02590d
chore(deps): bump aws-actions/configure-aws-credentials from 5.1.1 to…
dependabot[bot] Mar 5, 2026
911f343
chore(deps): bump helm/kind-action from 1.13.0 to 1.14.0 (#8917)
dependabot[bot] Mar 5, 2026
f88ce32
chore(deps): bump @hono/node-server from 1.19.9 to 1.19.10 in /backen…
dependabot[bot] Mar 5, 2026
108cde4
chore(deps): bump j178/prek-action from 1.0.12 to 1.1.1 (#8477)
dependabot[bot] Mar 5, 2026
413fa85
chore(deps): bump minimatch in /backend/onyx/server/features/build/sa…
dependabot[bot] Mar 5, 2026
45d77be
chore(deps): bump ajv in /backend/onyx/server/features/build/sandbox/…
dependabot[bot] Mar 5, 2026
091f41f
chore(deps): bump google-cloud-aiplatform from 1.121.0 to 1.133.0 (#8…
dependabot[bot] Mar 5, 2026
57349bd
chore: OnyxError cleanup (#9071)
nmgarza5 Mar 5, 2026
c10ffbb
fix(safari): chat background blur ignores text (#9111)
jmelahman Mar 5, 2026
192639a
chore: bump recommended models (#9112)
wenxi-onyx Mar 5, 2026
f59aaa9
chore(playwright): tighten how elements are hidden (#9117)
jmelahman Mar 5, 2026
eced88f
chore(tests): run golang tests in CI (#9118)
jmelahman Mar 6, 2026
23b3a0a
chore(deps): bump minimatch in /examples/widget (#8886)
dependabot[bot] Mar 6, 2026
5888f9d
chore(deps): bump qs from 6.14.1 to 6.14.2 in /backend/onyx/server/fe…
dependabot[bot] Mar 6, 2026
ba2a5a6
chore: Add docx preview depend (#9059)
Danelegend Mar 6, 2026
2b82743
feat: lm studio provider (#8253)
wenxi-onyx Mar 6, 2026
189c07a
chore(devtools): AGENTS.md warns against enqueueing tasks without an …
acaprau Mar 6, 2026
ae89307
chore(documentation): Add comment in `contributing_guides/best_practi…
acaprau Mar 6, 2026
3f004cf
chore(opensearch): Debug util script (#8815)
acaprau Mar 6, 2026
dde7a18
fix(dr-opti): Fix snippet matcher for special characters (#9123)
Bo-Onyx Mar 6, 2026
d2d4b89
chore(deps): rm `google-cloud-aiplatform` (#9114)
jmelahman Mar 6, 2026
376adff
chore(dr-tune): Move postgres sanitization and use it for DR output s…
Bo-Onyx Mar 6, 2026
bda03ba
chore(deps): bump serialize-javascript and terser-webpack-plugin in /…
dependabot[bot] Mar 6, 2026
d0836e2
fix(ci): Cleaning up Release Tags (#8172)
justin-tahara Mar 6, 2026
0f6ae6f
fix: Sync does not update default model (#9129)
Danelegend Mar 6, 2026
c826d04
fix(fe): make BlinkingBar smaller (#9132)
jmelahman Mar 6, 2026
a51f0d7
feat: Onyx CLI (#8958)
rohoswagger Mar 6, 2026
893e8da
feat(table): add server-side pagination, search filtering, view mode,…
Subash-Mohan Mar 6, 2026
b45277a
fix(tools): clean up orphaned OAuthConfig and preserve settings on Op…
Subash-Mohan Mar 6, 2026
b015a37
feat: Docx preview variant (#9060)
Danelegend Mar 6, 2026
127b2dc
refactor: split `Interactive` into `Stateless`/`Stateful`, add `Selec…
raunakab Mar 6, 2026
19016dd
refactor: add `Disabled` primitive to `@opal/core` (#9136)
raunakab Mar 6, 2026
661dc83
chore(deps): bump golang.org/x/net from 0.27.0 to 0.38.0 in /cli (#9133)
dependabot[bot] Mar 6, 2026
e41bad9
chore(zizmor): fix issues (#9139)
jmelahman Mar 6, 2026
d1409cc
chore(fe): rm redundant `alignBubble` (#9072)
jmelahman Mar 6, 2026
29d8b31
chore(deps): upgrade desktop deps (#9140)
jmelahman Mar 6, 2026
a615a92
chore(deps): bump express-rate-limit from 8.2.1 to 8.3.0 in /backend/…
dependabot[bot] Mar 6, 2026
1a7ca93
chore(deps): bump @tootallnate/once and jest-environment-jsdom in /we…
dependabot[bot] Mar 6, 2026
910718d
chore(playwright): hide flaky AppInputBar/llm-popover-trigger (#9144)
jmelahman Mar 6, 2026
f4dcd13
feat(cli): add PyPI wheel packaging for onyx-cli (#8992)
rohoswagger Mar 6, 2026
e618bf8
fix(ui): LLM Model selection Cache 1/2 (#9141)
justin-tahara Mar 6, 2026
99e95f8
chore: rm dead llm provider code and bump claude recs (#9145)
wenxi-onyx Mar 6, 2026
472d178
fix(fe): add horizontal padding to chat page (#9147)
jmelahman Mar 6, 2026
c527f75
fix(ci): release workflow and ods build file improvements (#9149)
rohoswagger Mar 6, 2026
6590f1d
feat(cli): add PyPI and release workflow badges to README (#9148)
rohoswagger Mar 6, 2026
8816d52
fix: vespa filter restrictions (#9138)
evan-onyx Mar 6, 2026
bdc2bfd
fix(fe): account for wrapper padding in textarea auto-resize (#9151)
raunakab Mar 6, 2026
41fb148
docs(cli): improve onyx-cli SKILL.md and fix README default server UR…
rohoswagger Mar 6, 2026
e7cf027
chore(zizmor): fix rust-toolchain commit (#9153)
jmelahman Mar 6, 2026
6917953
chore(projects): Turn off DR in Projects (#9150)
justin-tahara Mar 6, 2026
4880261
fix(fe): fix API Key Role dropdown options (#9154)
jmelahman Mar 6, 2026
cc00869
fix(a11y): InputSelect supports keyboard navigation (#9160)
jmelahman Mar 7, 2026
c2a7109
feat: jsonriver implementation w/ delta (#9161)
Danelegend Mar 7, 2026
1611604
chore(tests): add shared enable_ee fixture and test README (#9165)
wenxi-onyx Mar 7, 2026
f1df36e
feat(cli): package as docker image (#9167)
jmelahman Mar 7, 2026
29d9ebf
feat: rotate encryption key utility (#9162)
wenxi-onyx Mar 7, 2026
9aad407
feat: Tool call arg streaming (#9095)
Danelegend Mar 7, 2026
dfa0efc
fix(user files): Add configurable user file max upload size setting 1…
justin-tahara Mar 8, 2026
d3ee5c9
fix(user files): Enforce user upload file size limit in projects/chat…
justin-tahara Mar 8, 2026
cc2e6ff
fix(user files): Add frontend precheck for oversized user uploads 3/3…
justin-tahara Mar 8, 2026
e077642
chore(llm): Adding Integration test for Model state cache 2/2 (#9142)
justin-tahara Mar 8, 2026
64ee7fc
fix(fe): fix broken slack bot admin pages (#9168)
nmgarza5 Mar 8, 2026
2899be4
fix: remove unnecessary multitenant check in migration (#9172)
wenxi-onyx Mar 8, 2026
9d7dc3d
fix: ph ssl upgrade on redirect for local development (#9175)
wenxi-onyx Mar 8, 2026
5fe7a47
chore: update decryption utility (#9176)
wenxi-onyx Mar 9, 2026
2ebccea
fix: move available context tokens to useChatController and remove ar…
wenxi-onyx Mar 9, 2026
959cf44
fix: set event hook for wrapping values into SensitiveValue (#9177)
wenxi-onyx Mar 9, 2026
6b5ab54
feat: add `LineItemButton` component (#9137)
raunakab Mar 9, 2026
4761e4b
fix: fallback doc access when drive item is externally owned (#9053)
wenxi-onyx Mar 9, 2026
e495f7a
chore(deps): bump astral-sh/setup-uv from 7.2.0 to 7.3.1 (#9200)
dependabot[bot] Mar 9, 2026
dc40e86
chore(deps): bump actions/download-artifact from 7.0.0 to 8.0.0 (#9199)
dependabot[bot] Mar 9, 2026
d4d98a6
chore(deps): bump hashicorp/setup-terraform from 3.1.2 to 4.0.0 (#9198)
dependabot[bot] Mar 9, 2026
ec978d9
fix(mcp): use CE-compatible chat endpoint for search_indexed_document…
wenxi-onyx Mar 9, 2026
63d3efd
refactor: default width from `w-auto` → `w-fit` (#9146)
raunakab Mar 9, 2026
5118193
fix(fe): move app padding inside overflow container (#9206)
jmelahman Mar 9, 2026
edbe569
fix: don't fetch mcp tools when no llms are configured (#9173)
wenxi-onyx Mar 9, 2026
27df690
fix: discord connector async resource cleanup (#9203)
wenxi-onyx Mar 9, 2026
fe593a1
fix(safari): Search results dont shrink (#9126)
jmelahman Mar 9, 2026
e74c360
feat(storybook): add Storybook infrastructure - 1/3 (#9195)
nmgarza5 Mar 9, 2026
bbd68e2
fix: impropoer kv store strings (#9213)
wenxi-onyx Mar 9, 2026
2ec7526
fix(api memory): replace glibc with jemalloc for memory allocating (#…
Bo-Onyx Mar 10, 2026
87f0849
feat(opensearch): Enable by default (#9211)
acaprau Mar 10, 2026
d2b3772
fix(fe): fix chat content padding (#9216)
jmelahman Mar 10, 2026
91e24ae
fix(code-interpreter): set default CODE_INTERPRETER_BASE_URL w/ docke…
jmelahman Mar 10, 2026
89593b3
chore(auth): backend cleanup (#8558)
jessicasingh7 Mar 10, 2026
f71fab5
fix: use `detail` instead of `message` in OnyxError response shape (#…
nmgarza5 Mar 10, 2026
28310b9
feat(storybook): add stories for all components - 2/3 (#9194)
nmgarza5 Mar 10, 2026
8d085a4
ci: add Storybook deploy workflow - 3/3 (#9205)
nmgarza5 Mar 10, 2026
fef1fd0
feat(fe): increase preview file type support & replace `TextViewModal…
jmelahman Mar 10, 2026
a887bc6
fix(fe): preview modal fade matches code bg color (#9221)
jmelahman Mar 10, 2026
cf74afc
fix: assistant file transfer (#9163)
evan-onyx Mar 10, 2026
77f58fb
feat: prune hierarchynodes (#9066)
evan-onyx Mar 10, 2026
5b5100a
fix: Prevent the removal and hiding of default model (#9131)
Danelegend Mar 10, 2026
5cdeb84
feat(custom-tools): enhance custom tool error handling and timeline U…
Subash-Mohan Mar 10, 2026
e56fa57
chore(release): run playwright on release pushes (#9233)
jmelahman Mar 10, 2026
19b33e4
chore(auth): deployment docker cleanup (#8587)
jessicasingh7 Mar 10, 2026
4dbb1fa
chore(tests): fix nightly model-server tests (#9236)
jmelahman Mar 10, 2026
1608e2f
fix(opensearch): Allow configuring the page size of chunks we get fro…
acaprau Mar 10, 2026
fbe823b
chore(opensearch): Allow configuring num hits from hybrid subquery fr…
acaprau Mar 10, 2026
9d1a357
fix(fe): make CSV inline display responsive (#9242)
jmelahman Mar 10, 2026
ec74826
fix: update jira group sync endpoint (#9241)
evan-onyx Mar 10, 2026
fd200d4
fix(storybook): case-sensitivity, icon rename, and story fixes (#9244)
nmgarza5 Mar 10, 2026
2f628e3
fix(fe): correctly parse comma literals in CSVs (#9245)
jmelahman Mar 10, 2026
dcb18c2
chore(opensearch): Followup for #9243 (#9247)
acaprau Mar 10, 2026
9e42951
fix(fe): increase responsive breakpoint for centering modals (#9250)
jmelahman Mar 10, 2026
17551a9
fix(opensearch): Update should clear projects and personas when they …
acaprau Mar 10, 2026
a92ff61
chore: add cache_okay to EncryptedJson (#9252)
wenxi-onyx Mar 10, 2026
2cc8303
chore: sharepoint dedupe (#9254)
evan-onyx Mar 10, 2026
f97466e
chore: redeclare cache_okay for EncryptedBase children (#9253)
wenxi-onyx Mar 10, 2026
66023db
feat(llm-provider): fetch litellm models (#8418)
Danelegend Mar 10, 2026
ecbb267
fix: Consolidate search state-machine (#9234)
raunakab Mar 11, 2026
533aa8e
chore(release): upgrade `release-tag` (#9257)
jmelahman Mar 11, 2026
3619637
chore(deps): bump hono from 4.12.5 to 4.12.7 in /backend/onyx/server/…
dependabot[bot] Mar 11, 2026
334b7a6
feat(opal): add `foldable` support to `OpenButton` + fix `MessageTool…
raunakab Mar 11, 2026
a032916
feat(litellm): Adding FE Provider workflow (#9264)
justin-tahara Mar 11, 2026
c5bfd5a
feat(admin): add Users page shell with stats bar and SCIM card - 1/9 …
nmgarza5 Mar 11, 2026
84c52a4
Enhance README with ONYX.AI and assistant-ui details
MrGoodKitten Mar 11, 2026
6499b21
feat(opal): add Card and EmptyMessageCard components (#9271)
raunakab Mar 11, 2026
ffe04ab
fix(tests): remove deprecated o1-preview and o1-mini model tests (#9280)
nmgarza5 Mar 11, 2026
d2d44c1
fix(indexing): Stop deep-copy during indexing (#9275)
Danelegend Mar 11, 2026
665640f
chore(opensearch): unset container ulimits in dev (#9277)
jmelahman Mar 11, 2026
787f117
chore(deps): bump pypdf from 6.7.5 to 6.8.0 (#9260)
dependabot[bot] Mar 11, 2026
8dc379c
feat(ods): use release-tag to print highest stable semver that should…
wenxi-onyx Mar 11, 2026
e213853
fix(craft): rename webapp download endpoint to avoid route conflict (…
rohoswagger Mar 11, 2026
a78607f
fix(fe): `InputComboBox` resets filter value on open (#9287)
jmelahman Mar 12, 2026
abf76cd
chore(deps): bump tornado from 6.5.2 to 6.5.5 (#9290)
dependabot[bot] Mar 12, 2026
ca39da7
feat(admin): add user timestamps and enrich FullUserSnapshot - 2/9 (#…
nmgarza5 Mar 12, 2026
781219c
chore(models): rm `claude-3-5-sonnet-v2` metadata (#9285)
jmelahman Mar 12, 2026
f01f210
fix(slackbot): resolve channel references and filter search by channe…
nmgarza5 Mar 12, 2026
df5252d
chore(devtools): `ods backend api` (#9295)
jmelahman Mar 12, 2026
e1df3f5
feat(admin): add Users table with DataTable and server-side paginatio…
nmgarza5 Mar 12, 2026
b5474dc
chore(devtools): upgrade `ods`: 0.6.3->0.7.0 (#9297)
jmelahman Mar 12, 2026
c1ce180
feat(admin): add role, group, and status filters to Users table - 4/9…
nmgarza5 Mar 12, 2026
c57ea65
fix(db): avoid SQLAlchemy sentinel mismatch in batch user insert (#9300)
nmgarza5 Mar 12, 2026
dd07b3c
fix(fe): prevent clicking `InputSelect` from selecting text (#9292)
jmelahman Mar 12, 2026
1649bed
refactor: use ods latest-stable-tag to tag images in Docker Hub (#9281)
wenxi-onyx Mar 12, 2026
809dab5
feat(admin): add row actions with confirmation modals - 5/9 (#9180)
nmgarza5 Mar 12, 2026
fabbb00
refactor: sync craft latest builds with latest stable (#9279)
wenxi-onyx Mar 12, 2026
dbcbfc1
fix(favicon): prefer relative path to favicon (#9307)
jmelahman Mar 12, 2026
78a9b38
chore: sharepoint error logs (#9309)
evan-onyx Mar 12, 2026
c5c08c5
feat(admin): add invite users modal - 6/9 (#9181)
nmgarza5 Mar 12, 2026
e264356
feat(chat): support attaching more file types to chats (#9299)
jmelahman Mar 12, 2026
24de76a
chore(auth): deployment helm cleanup (#8588)
jessicasingh7 Mar 12, 2026
11f8408
feat(admin): add inline role editing in Users table - 7/9 (#9184)
nmgarza5 Mar 12, 2026
8a6e349
chore(deps): bump orjson from 3.11.4 to 3.11.6 (#9315)
dependabot[bot] Mar 12, 2026
a4a664f
chore(fe): polish file previews more (#9259)
jmelahman Mar 12, 2026
608491a
feat(oidc): Adding PKCE for OIDC (#9128)
justin-tahara Mar 13, 2026
196b6b0
fix(cherry-pick): Improving workflows (#9316)
justin-tahara Mar 13, 2026
d17c748
chore(greptile): Improving the Custom Context (#9319)
justin-tahara Mar 13, 2026
ab9e3e5
fix(craft): stop proxied webapp asset and HMR reload leaks (#9255)
rohoswagger Mar 13, 2026
aec0c28
fix: skip classic site pages (#9318)
evan-onyx Mar 13, 2026
be61c54
feat(admin): add edit group membership modal - 8/9 (#9185)
nmgarza5 Mar 13, 2026
868c942
feat(admin): switch to new Users page and remove v2 route - 9/9 (#9223)
nmgarza5 Mar 13, 2026
4d3fc1b
Merge branch 'onyx-dot-app:main' into patch-1
MrGoodKitten Mar 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
186 changes: 186 additions & 0 deletions .cursor/skills/onyx-cli/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,186 @@
---
name: onyx-cli
description: Query the Onyx knowledge base using the onyx-cli command. Use when the user wants to search company documents, ask questions about internal knowledge, query connected data sources, or look up information stored in Onyx.
---

# Onyx CLI — Agent Tool

Onyx is an enterprise search and Gen-AI platform that connects to company documents, apps, and people. The `onyx-cli` CLI provides non-interactive commands to query the Onyx knowledge base and list available agents.

## Prerequisites

### 1. Check if installed

```bash
which onyx-cli
```

### 2. Install (if needed)

**Primary — pip:**

```bash
pip install onyx-cli
```

**From source (Go):**

```bash
cd cli && go build -o onyx-cli . && sudo mv onyx-cli /usr/local/bin/
```

### 3. Check if configured

```bash
onyx-cli validate-config
```

This checks the config file exists, API key is present, and tests the server connection via `/api/me`. Exit code 0 on success, non-zero with a descriptive error on failure.

If unconfigured, you have two options:

**Option A — Interactive setup (requires user input):**

```bash
onyx-cli configure
```

This prompts for the Onyx server URL and API key, tests the connection, and saves config.

**Option B — Environment variables (non-interactive, preferred for agents):**

```bash
export ONYX_SERVER_URL="https://your-onyx-server.com" # default: https://cloud.onyx.app
export ONYX_API_KEY="your-api-key"
```

Environment variables override the config file. If these are set, no config file is needed.

| Variable | Required | Description |
|----------|----------|-------------|
| `ONYX_SERVER_URL` | No | Onyx server base URL (default: `https://cloud.onyx.app`) |
| `ONYX_API_KEY` | Yes | API key for authentication |
| `ONYX_PERSONA_ID` | No | Default agent/persona ID |

If neither the config file nor environment variables are set, tell the user that `onyx-cli` needs to be configured and ask them to either:
- Run `onyx-cli configure` interactively, or
- Set `ONYX_SERVER_URL` and `ONYX_API_KEY` environment variables

## Commands

### Validate configuration

```bash
onyx-cli validate-config
```

Checks config file exists, API key is present, and tests the server connection. Use this before `ask` or `agents` to confirm the CLI is properly set up.

### List available agents

```bash
onyx-cli agents
```

Prints a table of agent IDs, names, and descriptions. Use `--json` for structured output:

```bash
onyx-cli agents --json
```

Use agent IDs with `ask --agent-id` to query a specific agent.

### Basic query (plain text output)

```bash
onyx-cli ask "What is our company's PTO policy?"
```

Streams the answer as plain text to stdout. Exit code 0 on success, non-zero on error.

### JSON output (structured events)

```bash
onyx-cli ask --json "What authentication methods do we support?"
```

Outputs JSON-encoded parsed stream events (one object per line). Key event objects include message deltas, stop, errors, search-start, and citation payloads.

Each line is a JSON object with this envelope:

```json
{"type": "<event_type>", "event": { ... }}
```

| Event Type | Description |
|------------|-------------|
| `message_delta` | Content token — concatenate all `content` fields for the full answer |
| `stop` | Stream complete |
| `error` | Error with `error` message field |
| `search_tool_start` | Onyx started searching documents |
| `citation_info` | Source citation — see shape below |

`citation_info` event shape:

```json
{
"type": "citation_info",
"event": {
"citation_number": 1,
"document_id": "abc123def456",
"placement": {"turn_index": 0, "tab_index": 0, "sub_turn_index": null}
}
}
```

`placement` is metadata about where in the conversation the citation appeared and can be ignored for most use cases.

### Specify an agent

```bash
onyx-cli ask --agent-id 5 "Summarize our Q4 roadmap"
```

Uses a specific Onyx agent/persona instead of the default.

### All flags

| Flag | Type | Description |
|------|------|-------------|
| `--agent-id` | int | Agent ID to use (overrides default) |
| `--json` | bool | Output raw NDJSON events instead of plain text |

## Statelessness

Each `onyx-cli ask` call creates an independent chat session. There is no built-in way to chain context across multiple `ask` invocations — every call starts fresh. If you need multi-turn conversation with memory, use the interactive TUI (`onyx-cli` or `onyx-cli chat`) instead.

## When to Use

Use `onyx-cli ask` when:

- The user asks about company-specific information (policies, docs, processes)
- You need to search internal knowledge bases or connected data sources
- The user references Onyx, asks you to "search Onyx", or wants to query their documents
- You need context from company wikis, Confluence, Google Drive, Slack, or other connected sources

Do NOT use when:

- The question is about general programming knowledge (use your own knowledge)
- The user is asking about code in the current repository (use grep/read tools)
- The user hasn't mentioned Onyx and the question doesn't require internal company data

## Examples

```bash
# Simple question
onyx-cli ask "What are the steps to deploy to production?"

# Get structured output for parsing
onyx-cli ask --json "List all active API integrations"

# Use a specialized agent
onyx-cli ask --agent-id 3 "What were the action items from last week's standup?"

# Pipe the answer into another command
onyx-cli ask "What is the database schema for users?" | head -20
```
1 change: 1 addition & 0 deletions .github/actions/build-integration-image/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ runs:
shell: bash
env:
RUNS_ON_ECR_CACHE: ${{ inputs.runs-on-ecr-cache }}
INTEGRATION_REPOSITORY: ${{ inputs.runs-on-ecr-cache }}
TAG: nightly-llm-it-${{ inputs.run-id }}
CACHE_SUFFIX: ${{ steps.format-branch.outputs.cache-suffix }}
HEAD_SHA: ${{ inputs.github-sha }}
Expand Down
Loading