Pei Futong
39a952ecce
fix(cli-apps): decode subprocess output as UTF-8
2026-07-19 16:05:26 +08:00
chengyongru
37165b0db0
feat(webui): highlight slash commands and app mentions ( #4933 )
2026-07-15 00:34:22 +08:00
chengyongru
f75d3519db
feat(agent): add persistent runtime context providers
2026-07-12 00:35:17 +08:00
chengyongru
5283ceae85
Add optional Nanobot plugin controls ( #4396 )
...
* feat: add optional nanobot features
* test: update azure install hint expectation
* fix: validate optional feature extras
maintainer edit: verify requested dependency extras before treating optional features as installed, propagate restart state from feature enablement, and align docs with the new plugins enable command.
* fix: bound optional feature installs
maintainer edit: make optional feature installs time out as a normal install failure instead of leaving the WebUI or CLI action waiting indefinitely.
* feat: slim optional channel dependencies
* fix: log optional install commands
* fix(webui): gate remote feature installs
* docs: clarify webhook plugin example
* fix(webui): harden optional feature installs
* fix: install optional deps without package fallback
* fix(cli): refine plugin feature controls
* fix(webui): count enabled nanobot features
* fix(webui): allow slow feature install routes
* fix(webui): allow disabling websocket channel
* fix(plugins): simplify optional feature controls
* fix(webui): polish apps catalog states
* fix(webui): confirm nanobot support installs
* fix(webui): polish nanobot install dialog
* fix(webui): suppress empty websocket handshakes
* fix(webui): clarify apps plugin summary
* fix(webui): localize workspace access copy
* fix(plugins): polish optional feature controls (#4691 )
---------
Co-authored-by: Xubin Ren <52506698+Re-bin@users.noreply.github.com>
2026-07-03 18:17:52 +08:00
chengyongru
a67285e6a2
fix: use async CLI Apps catalog refresh
...
Replace the manual thread-based catalog refresh with an asyncio task and async HTTP catalog fetches so the Settings route stays within the async WebUI model.
2026-06-22 17:14:13 +08:00
chengyongru
dd2cb4ca91
fix: refresh optional CLI Apps catalogs
...
maintainer edit: CLI Apps settings now treats optional catalog caches as refresh candidates without blocking the initial payload, and pending polling stops when refresh is throttled instead of running indefinitely.
2026-06-22 17:14:13 +08:00
chengyongru
b8abe5542c
Avoid blocking settings on CLI Apps catalog refresh
2026-06-22 17:14:13 +08:00
chengyongru
04ed7554c0
Simplify WebUI startup loading fix
2026-06-13 21:59:36 +08:00
chengyongru
af0e3441d7
Fix WebUI startup blocking on slow gateway routes
2026-06-13 21:59:36 +08:00
Xubin Ren
ab9f49970d
feat(desktop): polish desktop shell and shared WebUI surfaces ( #4195 )
...
* feat(desktop): add native host scaffold
* feat(webui): track turns and usage in gateway
* feat(webui): polish desktop chat experience
* feat(apps): add ArcGIS and Joplin logos
* feat(desktop): polish shell and shared surfaces
* fix(webui): avoid preview chips for glob references
* test: align CI expectations for token fallback
* feat(webui): preview prompt rail entries
* feat(webui): add prompt navigator drawer
* style(webui): refine prompt navigator placement
* style(webui): align prompt navigator with header actions
* style(webui): simplify prompt navigator header
* refactor(webui): clean thread resource refresh
* feat(desktop): add native reply notifications
* fix(webui): preserve desktop restart and replay state
* fix(desktop): harden gateway proxy startup
* fix(web): fall back when readability is unavailable
* fix(desktop): hide window instead of closing on macos
* fix(webui): unify desktop header actions
* fix(webui): simplify prompt history rows
* fix(desktop): log notification delivery failures
* chore(desktop): clean source package artifacts
* fix(cron): support one-time relative reminders
* fix(webui): reveal scroll button in place
* Revert "fix(cron): support one-time relative reminders"
This reverts commit 4c4661da120a3c7283e0768412bae48604e7390b.
* refactor(webui): extract token usage heatmap
* docs(desktop): clarify contributor guides
---------
Co-authored-by: chengyongru <2755839590@qq.com>
2026-06-06 19:49:33 +08:00
chengyongru
c77ca16d91
fix: preserve uv pip update reinstall semantics
...
Maintainer edit: the uv fallback for CLI app updates now keeps the force-reinstall behavior from the python -m pip path by using uv pip install --reinstall, with unit coverage for the generated argv.
2026-06-04 19:41:51 +08:00
axelray-dev
c2e9064b35
fix: remove unsupported -y flag from uv pip uninstall fallback
...
uv pip uninstall does not support the -y (assume-yes) flag. Remove it
from the uv fallback argv while keeping it for the python -m pip
uninstall path.
Reported-by: chengyongru
2026-06-04 19:41:51 +08:00
axelray-dev
a37e58a29e
fix(cli): fall back to uv pip when pip is unavailable
...
When nanobot is installed via uv tool install, sys.executable points to
a Python that does not have pip available as a module. _pip_install_argv
and _pip_uninstall_argv always used [sys.executable, -m, pip, ...]
which fails in that environment.
Add _pip_available() helper that checks importlib.util.find_spec('pip').
When pip is not available and uv is on PATH, fall back to:
uv pip install --python <sys.executable> ...
uv pip uninstall --python <sys.executable> -y ...
If neither pip nor uv is available, raise CliAppError.
Fixes #4158
2026-06-04 19:41:51 +08:00
Xubin Ren
57563b671f
fix(apps): recover stale npm installs
2026-05-29 17:26:58 +08:00
Xubin Ren
d7bc1bcfb5
fix(apps): use registry logos
2026-05-29 17:26:58 +08:00
Xubin Ren
c1357e86de
feat(apps): add extension registry source
2026-05-29 17:26:58 +08:00
Xubin Ren
3a420136bb
feat(webui): add project workspaces and access controls ( #4007 )
...
* feat(webui): add project workspaces and access controls
* feat(webui): add project workspaces and access controls
* refactor(tools): centralize workspace access resolution
* refactor(webui): remove unused workspace host state
* fix(webui): hide estimated file edit label
* fix(webui): clarify file edit deletion feedback
* fix(webui): label deleted file activity
* fix(webui): flatten file edit activity rows
* fix(core): remove path-only patch deletion
* fix(core): keep apply patch non-destructive
* refactor(webui): trim workspace host plumbing
* fix(tools): register exec with tools config
2026-05-29 03:42:53 +08:00
Xubin Ren
418cb23da2
feat(apps): unify CLI apps and MCP ( #3991 )
...
* refactor(cli): load bundled apps from catalog
* feat(plugins): unify CLI and MCP settings
* feat(plugins): add settings category filter
* style(plugins): refine settings catalog
* refactor(cli): load nanobot apps from repo catalog
* feat(store): add capability store entry
* feat(apps): rename capability store
* fix(apps): verify clean app removal
* fix(apps): keep main sidebar on apps view
* feat(apps): add shared app manifest protocol
* fix(apps): dismiss app status message
* refactor(apps): move CLI adapter under apps
* refactor(apps): drop legacy cli apps package
2026-05-25 20:07:02 +08:00