What's Changed
- chore: release v0.5.1 by @lyingbug in #1104
- docs(readme): add Chrome Extension and ClawHub Skill badges by @lyingbug in #1105
- fix(embedding): OpenAIEmbedder.doRequestWithRetry shadows err · retur… by @toy0116 in #1116
- fix(chat): include history in model fallback by @Aphroq in #1112
- fix(memory): dedupe episode write on duplicate streaming Done by @tsukiga-kirei in #1125
- feat(wiki): enforce strict citation tracing and ontology reuse in Wik… by @lFeynman in #1120
- feat(openmaic-classroom): 增加基于wiki知识图谱概念的微课堂生成支持,更新需求构建模板 by @peterchan2020 in #1119
- fix: oidc auth login by @Windfarer in #1127
- feat(ks3): add KS3 object storage support by @ChenRussell in #1109
- fix(im): clamp reconnect backoff to avoid int64 overflow busy loop by @lyingbug in #1128
- feat(frontend): unify fonts across the app and add per-user font/size/theme preferences by @Puma7 in #1121
- fix(i18n): remove duplicate liveIndicator key in ko-KR locale by @lyingbug in #1129
- feat(frontend): respect BASE_URL so the SPA works behind a path-prefi… by @toy0116 in #1115
- fix: include shared knowledge in knowledge search by @Aphroq in #1111
- fix(agent): correct graph config reporting by @Aphroq in #1114
- fix(data-analysis): capture LOCAL_STORAGE_BASE_DIR at init time (#1040) by @guangyang1206 in #1130
- fix(ingest): prevent filename-driven LLM hallucinations on scanned PDFs by @Puma7 in #1122
- feat(kb-list): group pinned knowledge bases into a labeled section by @lyingbug in #1132
- feat(frontend): replace standalone search page with global ⌘K palette by @lyingbug in #1135
- feat(kb-list): source column + description subtitle, fix <style> XSS by @lyingbug in #1136
- fix(files): fall back to global file service when tenant storage config is unavailable by @sqkstwj in #1096
- refactor(knowledge): split 9.8k-line service file by responsibility by @lyingbug in #1134
- Revert "refactor(knowledge): split 9.8k-line service file by responsibility" by @lyingbug in #1138
- fix(storage): merge tos/s3/oss/ks3 tenant configs in buildStorageConfig (#1117) by @voidborne-d in #1137
- feat(chunking): adaptive 3-tier strategy with editor UI and live debug panel by @Puma7 in #1124
- refactor(knowledge): split 9.8k-line service file by responsibility by @lyingbug in #1139
- feat(chunker): coalesce tiny adjacent heading chunks; drop redundant TierRecursive by @lyingbug in #1140
- fix(frontend): rework chunking debug UX in the KB editor by @lyingbug in #1141
- refactor(chunker): phase 1 cleanup — overlap bug, profile threading, protected spans, embedding trim, parent-child strategy by @lyingbug in #1142
- fix(chunker): recognise CN chapter titles and multi-level numeric headings by @lyingbug in #1143
- fix(knowledge): polish chunking-settings debug trigger and strategy hint by @lyingbug in #1148
- fix: 为前端静态资源设置 Cache-Control,修复升级后需重新登录才能看到新页面 by @lyingbug in #1149
- fix(frontend): make general-settings font picker actually work by @lyingbug in #1150
- fix(graph): recover JSON from malformed/truncated fences in extract_entity (#1113) by @draix in #1131
- fix: 修复流式回答think/answer混淆及对话结束标记问题 by @peterchan2020 in #1126
- fix(agent): 统一最终答案渲染并去除重复/空思考块 by @lyingbug in #1153
- fix(docreader): throttle heavy parser concurrency by @wolfkill in #1151
- chore(agent): add fire-once stream diagnostic logs (agent + OpenAI layer) by @lyingbug in #1157
- fix(frontend): render markdown tables in chat wiki drawer by @lyingbug in #1158
- fix(frontend): polish model settings UI and fix disabled brand color by @lyingbug in #1162
- feat: cli foundation by @voidkey in #1144
- perf(wiki): subgraph API and interactive exploration for large graphs by @lyingbug in #1167
- perf(wiki): lazy-load sidebar page list with virtual-scroll tabs by @lyingbug in #1169
- fix(frontend): allow build scripts for pnpm to unblock Docker build by @lyingbug in #1170
- fix(frontend): pass allow-build flags to pnpm install in Docker build by @lyingbug in #1171
- fix(frontend): configure pnpm v11 build approvals in workspace file by @lyingbug in #1172
- Fix authentication API documentation links by @aqilaziz in #1163
- fix: propagate user attachments to agent query in AgentQA by @lyingbug in #1175
- fix(frontend): use npm to match committed lockfile by @YunfanDu in #1174
- Pr/wiki requeue fix by @toy0116 in #1155
- perf(wiki): move ingest log to event table and index to on-demand API by @lyingbug in #1176
- fix(wiki-ingest): harden lock-conflict handling and reduce retry churn by @lyingbug in #1177
- feat(retriever): 接入 Apache Doris 4.1 作为向量数据库 by @tianlinzx in #1154
- fix(retriever/doris): code review cleanup by @lyingbug in #1180
- feat(wiki/graph): 优化操作帮助入口与图例视觉 by @lyingbug in #1181
- fix(wiki-ingest): reconcile summary links and log feed when reduce LLM fails by @lyingbug in #1182
- feat:cli v0.1 by @voidkey in #1179
- chore(deps): bump github.com/mattn/go-isatty from 0.0.20 to 0.0.22 in /cli by @dependabot[bot] in #1193
- chore(deps): bump github.com/spf13/cobra from 1.8.1 to 1.10.2 in /cli by @dependabot[bot] in #1192
- chore(deps): bump actions/setup-node from 4 to 6 by @dependabot[bot] in #1191
- chore(deps): bump docker/metadata-action from 5 to 6 by @dependabot[bot] in #1187
- chore(deps): bump actions/download-artifact from 4 to 8 by @dependabot[bot] in #1186
- chore(deps): bump docker/build-push-action from 3 to 7 by @dependabot[bot] in #1188
- chore(deps): bump actions/setup-go from 5 to 6 by @dependabot[bot] in #1189
- chore(deps): bump github.com/mattn/go-runewidth from 0.0.16 to 0.0.23 in /cli by @dependabot[bot] in #1190
- chore(dependabot): expand coverage beyond /cli by @lyingbug in #1194
- chore(deps): bump github.com/google/jsonschema-go from 0.4.2 to 0.4.3 by @dependabot[bot] in #1212
- chore(deps): bump github.com/volcengine/ve-tos-golang-sdk/v2 from 2.7.23 to 2.9.4 by @dependabot[bot] in #1211
- chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.83.0 to 1.101.0 by @dependabot[bot] in #1213
- chore(deps): bump github.com/minio/minio-go/v7 from 7.0.91 to 7.1.0 by @dependabot[bot] in #1216
- chore(deps): bump github.com/sashabaranov/go-openai from 1.40.5 to 1.41.2 by @dependabot[bot] in #1214
- chore(deps): bump github.com/aliyun/alibabacloud-oss-go-sdk-v2 from 1.4.1 to 1.5.1 by @dependabot[bot] in #1210
- chore(deps-dev): bump less from 4.3.0 to 4.6.4 in /frontend by @dependabot[bot] in #1208
- chore(deps): bump github.com/duckdb/duckdb-go/v2 from 2.5.4 to 2.10502.0 by @dependabot[bot] in #1215
- chore(deps): bump github.com/go-openapi/strfmt from 0.25.0 to 0.26.2 by @dependabot[bot] in #1218
- chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.19.11 to 1.19.16 by @dependabot[bot] in #1217
- chore(deps): bump gorm.io/gorm from 1.30.0 to 1.31.1 by @dependabot[bot] in #1209
- chore(deps): update minio requirement from >=7.2.18 to >=7.2.20 in /docreader by @dependabot[bot] in #1206
- chore(deps-dev): bump less-loader from 12.3.0 to 12.3.2 in /frontend by @dependabot[bot] in #1207
- chore(deps): update lxml requirement from >=6.0.2 to >=6.1.0 in /docreader by @dependabot[bot] in #1205
- chore(deps): update oss2 requirement from >=2.18.0 to >=2.19.1 in /docreader by @dependabot[bot] in #1203
- chore(deps): update cos-python-sdk-v5 requirement from >=1.9.38 to >=1.9.42 in /docreader by @dependabot[bot] in #1200
- chore(deps): bump docker/setup-buildx-action from 3 to 4 by @dependabot[bot] in #1199
- chore(deps): bump docker/login-action from 3 to 4 by @dependabot[bot] in #1195
- chore(deps): bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #1196
- chore(deps): bump actions/checkout from 3 to 6 by @dependabot[bot] in #1197
- chore(deps): bump @types/papaparse from 5.5.0 to 5.5.2 in /frontend by @dependabot[bot] in #1198
- chore(deps): update paddlepaddle requirement from <4.0.0,>=3.0.0 to >=3.3.1,<4.0.0 in /docreader by @dependabot[bot] in #1201
- chore(deps): bump vue from 3.5.17 to 3.5.34 in /frontend by @dependabot[bot] in #1204
- chore(deps): bump github.com/weaviate/weaviate from 1.33.0-rc.1 to 1.37.2 by @dependabot[bot] in #1219
- chore(deps): bump dompurify and @types/dompurify in /frontend by @dependabot[bot] in #1202
- chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.32.14 to 1.32.17 by @dependabot[bot] in #1221
- chore(deps): bump github.com/chromedp/chromedp from 0.14.2 to 0.15.1 by @dependabot[bot] in #1223
- chore(deps): bump nltk from 3.9.2 to 3.9.4 in /docreader by @dependabot[bot] in #1229
- feat: add Tencent VectorDB retriever backend by @langcaiye in #1184
- chore: bump Go to 1.26 and slim docreader dependencies by @lyingbug in #1231
- chore(deps): bump google.golang.org/grpc from 1.80.0 to 1.81.0 by @dependabot[bot] in #1228
- chore(deps): bump gorm.io/driver/postgres from 1.5.11 to 1.6.0 by @dependabot[bot] in #1227
- chore(deps): bump github.com/ollama/ollama from 0.11.4 to 0.23.2 by @dependabot[bot] in #1226
- chore(deps): bump github.com/milvus-io/milvus/client/v2 from 2.6.2 to 2.6.4 by @dependabot[bot] in #1224
- chore(deps): bump github.com/jackc/pgx/v5 from 5.7.2 to 5.9.2 by @dependabot[bot] in #1239
- chore(deps): update github.com/go-openapi/swag to v0.26.0 and remove unused dependencies by @lyingbug in #1240
- chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 by @dependabot[bot] in #1225
- perf(wiki-ingest): scale to 4w-doc KBs + generic task queue / dead-letter by @lyingbug in #1241
- feat: support Tencent VectorDB keyword retrieval by @langcaiye in #1234
- fix(chat): 为 LLM 非流式/流式调用添加超时保护,防止 worker 被 hung 请求永久阻塞 by @ymkzs in #1238
- fix(chat): LLM 兜底超时仅在上层无 deadline 时生效,并修复 ChatStream raw HTTP 路径的 cancel 泄漏 by @lyingbug in #1242
- fix(frontend): 修正 LLM 调用超时文案与实际行为一致,上限放宽至 3600s by @lyingbug in #1243
- feat(agent): human-in-the-loop approval for MCP tool calls (#1173) by @lyingbug in #1245
- docs(cloud-image): add cloud-agnostic image packaging scripts by @lyingbug in #1249
- fix(client): correct GetChunkByIDOnly endpoint by @HQF2017 in #1254
- fix(cloud-image): enhance firstboot and cleanup scripts for improved security and functionality by @lyingbug in #1255
- feat(web-search): add SearXNG provider (#1166) by @lyingbug in #1246
- feat(cloud-image): support apt-based docker install for restricted-egress hosts by @lyingbug in #1260
- chore(env): remove WEKNORA_SANDBOX_DOCKER_IMAGE from .env.example by @lyingbug in #1261
- refactor(agent): rebuild multi-turn history from DB, drop llmcontext layer by @lyingbug in #1263
- docs(api): full audit and update of API documentation by @voidkey in #1251
- feat: cli v0.2 by @voidkey in #1247
- chore(deps): bump the frontend-deps group in /frontend with 15 updates by @dependabot[bot] in #1269
- chore(deps): bump the server-deps group with 25 updates by @dependabot[bot] in #1272
- chore(deps): bump github.com/spf13/pflag from 1.0.9 to 1.0.10 in /cli in the cli-deps group by @dependabot[bot] in #1265
- chore(deps): update pydantic requirement from >=2.12.3 to >=2.13.4 in /docreader by @dependabot[bot] in #1266
- chore(deps): update pypdfium2 requirement from >=5.0.0 to >=5.8.0 in /docreader by @dependabot[bot] in #1267
- chore(deps-dev): bump typescript from 5.8.3 to 6.0.3 in /frontend by @dependabot[bot] in #1270
- fix(agent): replay attachments in multi-turn history by @lyingbug in #1275
- chore(deps): update dependencies in /docreader and adjust dependabot configuration by @lyingbug in #1276
- fix(agent): exclude wiki-only KBs from quick-answer (RAG) mode by @lyingbug in #1278
- fix(faq): correct PostgreSQL cast precedence in FAQ search by @voidkey in #1274
- fix(agent): relax rerank model requirement for custom agents by @lyingbug in #1281
- feat: support Anthropic chat provider by @langcaiye in #1280
- fix(multimodal): unblock processing when provider:// image read fails by @lyingbug in #1284
- fix(feishu): tolerate partial wiki node listing failures by @wolfkill in #1286
- chore(github): translate issue/PR templates to English and improve content by @lyingbug in #1289
- feat(knowledge-base): document list filters and explicit batch-management UX by @lyingbug in #1288
- fix(middleware): mask camelCase secret fields in request logs by @lyingbug in #1291
- fix(pipeline): make data-analysis stage opt-in per agent (#1244) by @lyingbug in #1293
- fix(agent-editor): move data-analysis toggle to retrieval section by @lyingbug in #1294
- feat(agent): support dedicated model for query understanding step by @lyingbug in #1295
- feat(observability): fill Langfuse trace gaps and add end-to-end TTFB logs by @lyingbug in #1298
- fix: support Anthropic gateway streaming by @langcaiye in #1292
- fix(chat): map MaxTokens to MaxCompletionTokens for GPT-5/o-series by @lyingbug in #1299
- fix(frontend): persist graph extract toggle state on KB save (#1297) by @lyingbug in #1300
- docs(frontend): clarify Wiki page-link graph vs entity-relation knowledge graph by @lyingbug in #1301
- fix(agent): pass reasoning_content back to providers that require it by @lyingbug in #1305
- Fix/issue 1302 mimo reasoning content passthrough by @lyingbug in #1306
- chore: release v0.5.2 by @lyingbug in #1307
New Contributors
- @toy0116 made their first contribution in #1116
- @lFeynman made their first contribution in #1120
- @Puma7 made their first contribution in #1121
- @guangyang1206 made their first contribution in #1130
- @voidborne-d made their first contribution in #1137
- @aqilaziz made their first contribution in #1163
- @YunfanDu made their first contribution in #1174
- @tianlinzx made their first contribution in #1154
- @dependabot[bot] made their first contribution in #1193
- @langcaiye made their first contribution in #1184
- @ymkzs made their first contribution in #1238
- @HQF2017 made their first contribution in #1254
Full Changelog: v0.5.1...v0.5.2