yrk and Xubin Ren
be1cc769d5
docs: refine ModelScope documentation wording
2026-07-22 01:35:20 +08:00
yrk and Xubin Ren
9abad4746e
feat(providers): add ModelScope provider for LLM and image generation
2026-07-22 01:35:20 +08:00
chengyongru and chengyongru
1d7bad3909
feat(providers): support Codex fast mode
2026-07-21 17:55:17 +08:00
chengyongru and chengyongru
9d830fb6b6
docs(ollama): explain tool prompt cache reuse
2026-07-20 17:47:04 +08:00
chengyongru and GitHub
8423cf3eeb
fix(channels): complete dependency manifest migration ( #4995 )
...
* fix(channels): complete dependency manifest migration
* docs(docker): clarify custom uid dependency installs
* fix(channels): keep dependency preinstall internal
* refactor(channels): move dependency installer to scripts
* fix(docker): limit runtime write access
2026-07-20 15:24:57 +08:00
chengyongru and GitHub
462a0dfb0f
refactor(channels): make built-in channels self-contained ( #4908 )
...
* refactor(channels): own setup and instance contracts
* refactor(channels): isolate management contracts
* refactor(channels): normalize activation contracts
* fix(channels): enforce management contracts
* refactor(channels): finish setup ownership migration
* fix(channels): harden management contracts
* fix(channels): enforce lazy loading and runtime ownership
* fix(feishu): make multi-instance startup idempotent
* fix(webui): render channel setup contracts cleanly
* fix(feishu): stop websocket clients cleanly
* fix(channels): enforce persistence and activation gates
* fix(channels): preserve global feature action scope
* fix(channels): apply defaults for single plugins
* fix(channels): enforce management contract boundaries
* refactor(feishu): remove identity helper indirection
* fix(channels): preserve management setup contracts
* refactor(channels): generalize instance settings UI
* refactor(channels): package channel plugins with web UI metadata
* refactor(channels): make built-ins self-contained packages
* test(channels): colocate tests with channel packages
* fix(dingtalk): use official brand icon
* feat(channels): colocate webui translations
* docs(channels): clarify plugin ownership
* test(exec): remove output wait race
* refactor(channels): unify plugin descriptors
* fix(channels): enforce descriptor-owned contracts
* refactor(channels): finish package-owned plugin setup
* refactor(channels): use repository-owned packages only
* fix(channels): self-describe dependencies and runtime state
* fix(channels): warn about legacy entry points
2026-07-19 23:30:49 +08:00
chengyongru and GitHub
a6b68178aa
fix(whatsapp): allow group ids in allowFrom ( #4834 )
2026-07-19 19:16:37 +08:00
Yuxin Lou and Xubin Ren
b76d54aae1
Harden default Docker Compose security
2026-07-18 17:37:41 +08:00
Arthur K. and chengyongru
dcb37259fa
feat(heartbeat): custom evaluator prompt
2026-07-15 01:19:48 +08:00
chengyongru and GitHub
88c38e9b38
fix(restart): deliver completion after channel reconnects ( #4931 )
2026-07-15 01:08:39 +08:00
chengyongru and chengyongru
4916fc07ab
fix(agent): close reasoning on stream timeout
2026-07-14 15:51:22 +08:00
chengyongru and GitHub
b2759e8a6b
docs: reorganize documentation around user workflows ( #4916 )
2026-07-14 13:59:47 +08:00
chengyongru and GitHub
4a3818e03c
docs: update recent changes through July 12 ( #4913 )
2026-07-13 22:50:22 +08:00
chengyongru and GitHub
234e895e5a
fix(codex): align OAuth defaults and setup docs ( #4910 )
...
* fix(codex): align OAuth defaults and setup docs
* docs(codex): clarify provider settings key
* docs(codex): simplify OAuth setup guidance
2026-07-13 17:04:33 +08:00
Xubin Ren
a65a6f334c
test(gateway): cover slow health clients
2026-07-13 15:16:51 +08:00
Xubin Ren
3824206ab2
fix(gateway): harden health endpoint exposure
2026-07-13 15:16:51 +08:00
Xubin Ren and GitHub
fe0717b385
feat(webui): add guided setup flows
...
* feat(channels): add guided setup flows
* test(channels): preserve setup config values
* fix(channels): reflect saved setup state
* refactor(channels): simplify setup state metadata
* fix(channels): harden setup lifecycle
* refactor(channels): centralize setup contracts
* fix(channels): route setup actions through webui shim
* fix(channels): adapt settings for compact screens
* fix(models): preserve default preset display
* feat(models): add curated Codex catalog
* fix(webui): stop attached gateway on interrupt
* fix(webui): simplify apps catalog
* docs(webui): clarify apps and runtime features
* feat(settings): add guided capability setup
* fix(webui): harden setup and managed services
* test: keep managed runtime checks portable
* test: scope POSIX runtime coverage
* fix(webui): simplify file settings
* feat(files): bundle document reading
* fix(webui): harden setup request boundaries
* fix(webui): prevent channel setup status squeeze
* fix(settings): group provider compatibility aliases
* refactor(settings): remove redundant setup surfaces
* fix(webui): harden guided setup lifecycle
* fix(webui): preserve channel setup compatibility
2026-07-13 13:11:46 +08:00
Xubin Ren
89acea6fe1
fix(webui): allow remote workspace access reduction
2026-07-12 22:08:27 +08:00
chengyongru and Xubin Ren
c339ce8bba
refactor(agent): remove obsolete MCP prompt annotations
2026-07-12 00:35:17 +08:00
chengyongru and Xubin Ren
2eb7398f34
fix(agent): close runtime context persistence gaps
2026-07-12 00:35:17 +08:00
chengyongru and Xubin Ren
2154dc51d0
docs: add automation guide
2026-07-10 19:31:33 +08:00
chengyongru and Xubin Ren
0b9ca744c2
docs(webui): mention file edit previews in guide
2026-07-09 10:42:43 +08:00
chengyongru and Xubin Ren
7685a89dcc
docs(webui): describe file edit diffs
2026-07-09 10:42:43 +08:00
chengyongru and Xubin Ren
207813d3b5
fix(webui): tighten localhost bootstrap check
2026-07-09 10:42:00 +08:00
chengyongru and Xubin Ren
e0c2d28f90
fix(webui): issue localhost bootstrap api tokens
2026-07-09 10:42:00 +08:00
chengyongru and Xubin Ren
88143a8bf0
fix(webui): gate bootstrap API token issuance
2026-07-08 21:01:48 +08:00
chengyongru and Xubin Ren
7204d88a4c
docs: add high-usage chat app guides
2026-07-08 20:56:27 +08:00
chengyongru and Xubin Ren
1a21542d11
docs: address search entry review feedback
2026-07-08 20:56:27 +08:00
chengyongru and Xubin Ren
f531f1ce38
docs: improve search entry pages
2026-07-08 20:56:27 +08:00
chengyongru and Xubin Ren
941a2541eb
docs: document onboard refresh flag
...
maintainer edit: add CLI, quick start, and troubleshooting docs for the non-interactive config refresh flow introduced by this PR.
2026-07-08 20:56:06 +08:00
chengyongru and Xubin Ren
883776358e
fix: keep local api serve unauthenticated
...
maintainer edit: Align OpenAI-compatible API auth with the WebSocket channel boundary: loopback serve remains usable without a key, while wildcard binds still fail before agent initialization unless api.api_key is configured.
2026-07-08 12:16:12 +08:00
chengyongru and Xubin Ren
28141ce20b
docs: update serve api key requirement
...
maintainer edit: Align OpenAI-compatible API docs and examples with the new fail-closed api.api_key requirement while keeping /health documented as unauthenticated.
2026-07-08 12:16:12 +08:00
chengyongru and Xubin Ren
29e99d3742
docs: document Alt+Enter multiline input
...
maintainer edit: document the supported interactive CLI multiline shortcut and trim comments left after removing Shift+Enter support.
2026-07-07 15:41:08 +08:00
chengyongru and Xubin Ren
c5e053f83b
fix: pin validated DNS for SSRF-safe fetches
...
maintainer edit: keep MCP HTTP SSRF checks strict, pin validated DNS for direct web_fetch and HTTP/SSE MCP requests, preserve explicit and environment proxy compatibility, and cover the proxy/redirect/rebinding cases with tests.
2026-07-07 15:40:53 +08:00
chengyongru and Xubin Ren
dd014b50a7
docs(mattermost): finish channel ordering cleanup
...
Maintainer edit: move remaining Mattermost documentation mentions to the end of named channel lists.
2026-07-06 12:14:57 +08:00
chengyongru and Xubin Ren
595d789c6f
docs(mattermost): list new channel last
...
Maintainer edit: keep Mattermost at the end of documented channel lists so existing channel order remains first-come-first-served.
2026-07-06 12:14:57 +08:00
Kenneth Zhao and Xubin Ren
fff38f11a7
feat: add Mattermost channel support
2026-07-06 12:14:57 +08:00
Xubin Ren
937f04ac86
docs(config): document canonical OpenCode provider
2026-07-06 12:13:00 +08:00
franciscomaestre and Xubin Ren
8a42a9c73a
feat(web-search): add Serper.dev (Google Search API) provider
...
Add 'serper' as a web search backend, following the existing provider
pattern (keenable/exa): POST to https://google.serper.dev/search with the
X-API-KEY header, map the 'organic' results into the shared result format,
and fall back to DuckDuckGo when no key is configured.
- key resolved from config.api_key or SERPER_API_KEY env var
- 429 handled with a rate-limit message; other HTTP errors surfaced
- tests cover success, env-key, no-key fallback, HTTP error and rate limit
- docs: add Serper config example and list it in tools.web.search providers
2026-07-06 12:11:31 +08:00
Xubin Ren and GitHub
067e0c4a40
feat(cli): add safe WebUI first-run launcher ( #4688 )
2026-07-03 18:58:04 +08:00
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
LILAC and GitHub
b19a744110
fix(providers): update Anthropic default model to claude-sonnet-4-6
...
Update the Anthropic provider default model and matching docs/tests from claude-sonnet-4-20250514 to claude-sonnet-4-6.
Fixes #4675
2026-07-03 15:46:19 +08:00
chengyongru and Xubin Ren
f38fd7d5d3
feat(memory): add workspace Dream prompt override
2026-07-03 00:41:51 +08:00
chengyongru and Xubin Ren
661ab00656
feat(trigger): add local trigger run audit records
2026-07-02 13:32:46 +08:00
chengyongru and Xubin Ren
acb0e853ff
refactor(trigger): share automation turn delivery
2026-07-02 13:32:46 +08:00
chengyongru and Xubin Ren
f32007c83f
fix(trigger): defer local triggers until session idle
2026-07-02 13:32:46 +08:00
chengyongru and Xubin Ren
2ebf5c4972
refactor(trigger): name CLI trigger source as local
...
maintainer edit: cron is also a trigger source, so keep the new CLI-delivered source explicitly named as local trigger across backend, WebUI, docs, and tests.
2026-07-02 13:32:46 +08:00
chengyongru and Xubin Ren
1ed2c9a213
fix(trigger): recover interrupted deliveries
2026-07-02 13:32:46 +08:00
chengyongru and Xubin Ren
55b550ee01
fix(trigger): hide external trigger inputs
2026-07-02 13:32:46 +08:00
chengyongru and Xubin Ren
b690a48336
fix(trigger): require names for trigger creation
2026-07-02 13:32:46 +08:00