RockChinQ
79b4fe2004
docs(readme): add text links below Cloud deployment buttons ( #2551 )
2026-09-18 13:10:19 +08:00
RockChinQ
e3ae3cc1ea
Update links in README_CN.md
2026-09-18 08:30:22 +08:00
RockChinQ
db244084a9
Update website link in README.md
2026-09-18 08:29:51 +08:00
RockChinQ
3bc0def0c1
docs(readme): replace Cloud links with branded deployment CTA ( #2550 )
2026-09-17 18:31:53 +08:00
彼方
9b7ba0d647
Merge pull request #2544 from langbot-app/codex/media-content-cache-2354
...
feat(storage): Media content addressable storage (CAS) and monitoring Base64 externalization stripping (#2354 )
2026-09-15 21:03:48 +08:00
BiFangKNT
7e239f1629
fix(maintenance): guard media cache cleanup and annotate exception suppression
...
- Safely resolve media_cache via getattr in cleanup_expired_files to prevent AttributeError when storage_mgr is unset in cloud/test fixtures
- Only attach 'media_files' in cleanup return dictionary when media cache is active on singleton, preserving exact return contract for cloud maintenance tests
- Add explanatory comments to exception suppression in MediaCache.touch and cleanup loops to address code-quality review findings
2026-09-15 20:30:34 +08:00
BiFangKNT
c16cd433e0
refactor(storage): enforce xxHash3-128 and remove sha256 fallback in MediaCache
...
- Import xxhash directly instead of conditional try-except block
- Remove unused hashlib import and sha256 fallback branch in hash_bytes
- Update docstrings to reflect pure xxHash3-128 content-addressing
2026-09-15 19:48:08 +08:00
BiFangKNT
a32b3121d3
build(boot): register xxhash in startup dependency check
2026-09-15 18:14:29 +08:00
BiFangKNT
1143d6a5ae
feat(storage): media content-addressable cache and monitoring base64 externalization
...
- Add MediaCache using xxHash3-128 (with sha256 fallback) content-addressable storage
- Externalize message chain image payloads before recording monitoring and discarded messages
- Strip base64 payloads to null in SQLite monitoring_messages, dropping row size from megabytes to hundreds of bytes
- Add GET /api/v1/files/media/<filename> route with immutable HTTP cache headers to serve cached media
- Integrate age-based retention (default 30 days) and configurable disk quota with MaintenanceService cleanup loop
- Add defensive sanitizer in MonitoringService.record_message against oversized raw base64 payloads
- Add comprehensive unit tests and end-to-end verification covering CAS deduplication, route serving, and LRU pruning
2026-09-15 17:58:23 +08:00
BiFangKNT
38ff4766ef
chore: update .gitignore
2026-09-15 08:22:11 +08:00
Hyu
eb4563775d
docs(readme): remove retired public demo from all languages ( #2543 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-15 01:11:42 +08:00
sheetung
60bb67f025
Fnos packaging ( #2524 )
...
* feat(packaging): add fnOS FPK packaging and CI workflow
Add packaging/fnos/ shell (manifest, lifecycle cmd scripts, install/
upgrade/uninstall wizards, desktop entry, EULA) plus in-repo build
script. A release now auto-builds langbot-<tag>-fnos.fpk via
.github/workflows/build-fnos-fpk.yaml, uploaded to the release assets.
* ci(fnos): skip release upload on manual dispatch
github.event.release.tag_name is empty when triggered via
workflow_dispatch, causing 'gh release upload' to fail with
'requires at least 2 arg(s)'. Restrict the step to release events.
* ci(fnos): normalize release asset name
Strip a trailing -fnos from the tag-derived version before appending
the suffix, avoiding langbot-<v>-fnos-fnos.fpk when the tag itself
already carries -fnos.
* ci(fnos): use release tag version for auto build, manifest for manual
Auto build (release/tag) reads version from tag like other release
workflows; build.sh strips the v prefix when injecting into manifest.
Manual dispatch falls back to the version maintained in manifest.
* feat(fnos): add post-install deployment notice to install wizard
Last wizard step now informs users that first startup takes about
5-10 minutes for dependency setup before the web UI is ready.
* docs(fnos): add packaging directory README
* refactor(fnos): rename app from ai.langbot to langbot
Rename appname, desktop entry, data share, build artifacts, and all
references from ai.langbot to langbot across packaging files.
---------
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-14 00:31:19 +08:00
Type_rBody
cbe6844342
Merge pull request #2541 from hedging8563/codex/refresh-tokenlab-logo-20260913
...
chore(brand): refresh TokenLab logo
2026-09-13 22:18:08 +08:00
hedging8563
940895c541
chore(brand): refresh TokenLab logo
2026-09-13 21:24:38 +08:00
Hyu
9b130680ca
ci(discord): announce published stable releases via webhook ( #2539 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-13 00:39:21 +08:00
huanghuoguoguo
d26d0635c5
fix(vector): correct SeekDB adapter semantics ( #2536 )
2026-09-12 19:40:30 +08:00
彼方
58cde8c022
Merge pull request #2534 from langbot-app/fix/i18n-passkey-keys
...
fix(i18n): complete passkey keys across all locale files
2026-09-12 16:47:27 +08:00
彼方
9eb8683997
Merge pull request #2530 from langbot-app/feat/passkey-login
...
feat(auth): support passkey (webauthn) login and credential management
2026-09-12 16:00:10 +08:00
BiFangKNT
19526e1400
test(api): define explicit fixtures for passkey integration tests
2026-09-12 15:51:56 +08:00
BiFangKNT
dfde9578c1
fix(ci): fix ruff lint errors and postgres legacy migration table exclusion
2026-09-12 15:35:47 +08:00
Hyu
ec5b8cc8a8
docs(space): sync Runner usage recommendation contract ( #2533 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-12 13:37:14 +08:00
Hyu
137bb4fdb3
fix(ci): recover immutable release PyPI builds ( #2532 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-12 12:50:37 +08:00
Hyu
273b8839b9
chore(release): prepare LangBot 4.10.11 ( #2531 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
v4.10.11
2026-09-12 12:33:26 +08:00
BiFangKNT
9db6650274
style(tests): Remove unused time import from test file
2026-09-12 12:26:51 +08:00
BiFangKNT
b594cf23e4
feat(auth): add webauthn authentication support
2026-09-12 12:17:26 +08:00
Hyu
45d77c3926
fix(plugin): preserve explicit nested installation scope ( #2528 )
...
* fix(plugin): preserve explicit nested installation scope
* fix(deps): pin released RAG runtime SDK 0.5.8
---------
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-11 17:41:33 +08:00
Hyu
1ea9cd3f6f
fix(pipelines): show the actual sandbox scope restriction ( #2527 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-11 14:42:38 +08:00
Hyu
ff6ad6adc2
fix(monitoring): restore Cloud messages and bot-scoped sessions ( #2526 )
...
* fix(monitoring): restore Cloud message persistence and bot-scoped sessions
* fix(migrations): support partial monitoring schemas and align regression fixtures
* test(migrations): complete raw bot session fixture values
---------
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-11 14:34:37 +08:00
huige66631
ce6b647fe7
feat(mcp): detect OAuth-protected remote MCP servers ( #2363 )
...
* feat(mcp): surface OAuth-required server tests
* fix(mcp): show connection failure details in status cards
---------
Co-authored-by: RockChinQ <rockchinq@gmail.com >
2026-09-09 16:13:33 +08:00
WODE25500
485113ae43
fix: default Langflow tweaks to empty object when unset ( #2519 )
...
Co-authored-by: WODE25500 <318555974+WODE25500@users.noreply.github.com >
2026-09-09 15:46:26 +08:00
Tynwink
1ba3c1ec72
Merge pull request #2520 from langbot-app/feat/api-key-system-context
...
为 lbctl 增加 API Key 发现与管理能力
当前为 lbctl 提供的能力通过 system.py -> SYSTEM_CAPABILITY_OPERATIONS 维护,后续可通过统一的接口暴露能力,避免频繁维护常量。
2026-09-09 14:47:00 +08:00
Tynwink
3a82aa5fcc
Potential fix for pull request finding 'Empty except'
...
Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
2026-09-09 14:39:49 +08:00
WODE25500
fc1c998434
fix: Matrix relogin UnboundLocalError ( #2516 )
...
Co-authored-by: WODE25500 <318555974+WODE25500@users.noreply.github.com >
2026-09-09 13:51:42 +08:00
Tynwink2000
d90253cc77
feat(api): advertise provider and model management
2026-09-09 11:18:01 +08:00
Tynwink2000
d8b3dad212
feat(api): support explicit provider secret projection
2026-09-09 10:38:16 +08:00
Tynwink2000
8281eb18c9
feat(api): advertise plugin and skill management
2026-09-09 00:12:40 +08:00
Tynwink2000
4eea3419e8
feat(api): advertise knowledge and MCP management
2026-09-08 23:07:43 +08:00
Tynwink2000
814740ea68
feat(api): advertise managed read operations
2026-09-08 18:53:55 +08:00
Tynwink2000
e6e8258545
feat(api): advertise extension operation capabilities
2026-09-08 17:43:11 +08:00
Tynwink2000
1a69747a06
feat(api): expose task status to api keys
2026-09-08 14:06:13 +08:00
Tynwink2000
1fa5e2f755
feat(api): add system capabilities endpoint
2026-09-08 13:03:02 +08:00
fishzjp
267232c24f
fix(security): harden password recovery with usable eight-character codes ( #2477 )
...
Use eight securely random recovery-code characters with concurrency-safe online throttling. Preserve existing keys and verify recovery through browser and real SQLite integration tests.
Co-authored-by: zhangjinpeng@mail.tuchong.com <zhangjinpeng@mail.tuchong.com >
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-07 15:31:54 +00:00
QuasarRyan
d6443b10bc
feat(platform): add Mattermost platform adapter ( #2515 )
2026-09-07 22:46:47 +08:00
Tynwink
0577689da4
Merge pull request #2517 from langbot-app/feat/api-key-system-context
...
feat(api): add system context endpoint for lbctl
2026-09-07 14:51:31 +08:00
Tynwink2000
bc32eb3ca0
feat(api): add system context endpoint for lbctl
2026-09-07 14:22:27 +08:00
Hyu
0f216a0d4d
feat(provider): support Codex subscriptions with ChatGPT sign-in ( #2513 )
...
* feat(provider): support Codex subscriptions with ChatGPT sign-in
* style: format Codex live integration test
* fix(provider): preserve Codex identity in temporary model tests
* fix(web): portal provider selector without dialog overflow
* fix(web): allow native scrolling in provider dropdown
* fix(provider): surface safe Codex quota and upstream errors
* fix(web): provide reliable Codex copy feedback in dialogs
* feat(provider): confirm cascade deletion from edit dialog
* fix(persistence): discard connections after failed commit
* fix(web): polish provider loading and confirmation motion
---------
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-06 23:31:02 +08:00
Hyu
ec63978ecf
docs: replace legacy documentation shortlinks ( #2510 )
...
* docs: replace legacy documentation shortlinks
* style: format updated documentation URLs
---------
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-05 01:19:28 +08:00
Hyu
1cfe87186c
docs: update published documentation links ( #2509 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-05 00:55:18 +08:00
leonoxo
9794df0933
feat(n8n-runner): support async response handling ( #2487 )
...
* feat(n8n-runner): support async response handling
* fix(n8n-runner): expose response handling in form
* fix(n8n-runner): preserve async response semantics
---------
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
2026-09-04 22:36:40 +08:00
Hyu
a63808caa6
chore(release): prepare LangBot 4.10.10 ( #2507 )
...
Co-authored-by: dadachann <185672915+dadachann@users.noreply.github.com >
v4.10.10
2026-09-04 21:47:31 +08:00