Skip to content
Draft

dev #6325

Show file tree
Hide file tree
Changes from 101 commits
Commits
Show all changes
639 commits
Select commit Hold shift + click to select a range
7a6cea3
fix(dashboard): remove Authorization header and withCredentials from …
LIghtJUNction Mar 28, 2026
bae7ec4
fix(dashboard): patch bundled DOMPurify to fix XSS vulnerability
LIghtJUNction Mar 28, 2026
c823fcd
chore(dashboard): add d3 dependency and postinstall patch script
LIghtJUNction Mar 28, 2026
d927f01
fix(dashboard): Vuetify 4 compatibility fixes
LIghtJUNction Mar 28, 2026
b70aa51
fix(dashboard): pin pinia to 3.0.0 to avoid regression in 3.0.1+
LIghtJUNction Mar 28, 2026
84c88db
fix(dashboard): fix extraneous @update event listener in PlatformPage
LIghtJUNction Mar 28, 2026
495ca70
fix(dashboard): replace remaining dense prop with density="compact"
LIghtJUNction Mar 28, 2026
f000a21
fix(dashboard): suppress known Vuetify 4 internal slot invocation war…
LIghtJUNction Mar 28, 2026
64bc582
fix(dashboard): wrap VWindowItem in VWindow to fix Vuetify 4 injectio…
LIghtJUNction Mar 28, 2026
eca534f
feat(core): add ToolSessionManager for stateful tool execution
LIghtJUNction Mar 29, 2026
d84565f
feat(dashboard): switch to BlueBusiness theme
LIghtJUNction Mar 29, 2026
610370f
i18n(dashboard): update translation files
LIghtJUNction Mar 29, 2026
5ea790d
chore: misc fixes and new test files
LIghtJUNction Mar 29, 2026
2b70c29
chore: bump version to 4.25.0
LIghtJUNction Mar 29, 2026
7b22e56
security: remove legacy SHA256/MD5 password verification and fix API …
LIghtJUNction Mar 29, 2026
90d565f
fix(dashboard): remove stray closing div in InstalledPluginsTab
LIghtJUNction Mar 29, 2026
b9b3d50
feat(dashboard): rename to Starlight Panel and add daily quote
LIghtJUNction Mar 29, 2026
0ee84ae
fix(dashboard): align daily quote text to left
LIghtJUNction Mar 29, 2026
d13ff84
feat(dashboard): add animated diamond background to login page
LIghtJUNction Mar 29, 2026
f97aca8
refactor(dashboard): simplify diamond bg with hexagonal close packing
LIghtJUNction Mar 29, 2026
7c0e841
refactor(dashboard): replace diamond bg with sci-fi cylinder panel
LIghtJUNction Mar 29, 2026
3e232fb
refactor(dashboard): crosshair schematic background for login
LIghtJUNction Mar 29, 2026
fc0e185
refactor(dashboard): add recessed pit effect with Cherenkov glow unde…
LIghtJUNction Mar 29, 2026
1530ce1
refactor(dashboard): add elastic cursor tracking with gravity pit effect
LIghtJUNction Mar 29, 2026
daaeb94
refactor(dashboard): recessed slot grid with lerp cursor tracking
LIghtJUNction Mar 29, 2026
487c198
refactor(dashboard): torch reveal effect with radial cursor glow
LIghtJUNction Mar 29, 2026
9018423
feat(dashboard): redesign login page with reactor core aesthetic
LIghtJUNction Mar 29, 2026
0121df1
fix(dashboard): show native cursor on login background
LIghtJUNction Mar 29, 2026
282ef94
feat(dashboard): introduce reactor core glassmorphism theme
LIghtJUNction Mar 29, 2026
b79e252
feat(dashboard): glassmorphism editor and reactor Monaco theme
LIghtJUNction Mar 29, 2026
86e6d08
feat(dashboard): redesign log console as reactor terminal
LIghtJUNction Mar 29, 2026
0eb0437
feat(dashboard): reactor form controls and config card glassmorphism
LIghtJUNction Mar 29, 2026
5109ca9
feat(dashboard): reactor glow on logo
LIghtJUNction Mar 29, 2026
c7c878a
feat(dashboard): blueprint light mode theme
LIghtJUNction Mar 29, 2026
934a74f
chore: remove accidental temp file
LIghtJUNction Mar 29, 2026
65d01b7
feat(dashboard): theme-aware reactor canvas and blueprint light mode
LIghtJUNction Mar 29, 2026
a9d6575
fix(dashboard): lock theme to dark-only for industrial aesthetic
LIghtJUNction Mar 29, 2026
15e3c12
fix(dashboard): improve ChatInput dark mode styling and placeholder v…
LIghtJUNction Mar 29, 2026
158a26c
fix(dashboard): improve sidebar styling and dark mode SCSS overrides
LIghtJUNction Mar 29, 2026
0dd91f1
fix: add noqa comments to platform adapter imports and update theme f…
LIghtJUNction Mar 29, 2026
0c02149
fix(dashboard): add additional SCSS overrides for dark mode
LIghtJUNction Mar 29, 2026
7fc1a13
fix(dashboard): ReactorBg eased scope, CSS comments, theme types, and…
LIghtJUNction Mar 29, 2026
c464d7a
fix(dashboard): use CDN MDI font and apply light mode style fixes
LIghtJUNction Mar 29, 2026
9dc3459
fix(dashboard): AddNewPlatform - show v-icon fallback when platform i…
LIghtJUNction Mar 29, 2026
8919d4d
fix(dashboard): TraceDisplayer - use resolveApiUrl instead of manual …
LIghtJUNction Mar 29, 2026
48e54e5
revert(dashboard): remove mdi-robot fallback that caused all platform…
LIghtJUNction Mar 29, 2026
2e66059
fix(dashboard): AddNewPlatform - show platform-specific MDI icon when…
LIghtJUNction Mar 29, 2026
4a0ab86
fix(dashboard): fix Trace page text invisible
LIghtJUNction Mar 29, 2026
62d7df1
chore: stage all dev changes
LIghtJUNction Mar 29, 2026
2a1544f
chore: stage remaining changes
LIghtJUNction Mar 29, 2026
de35ff5
feat(dashboard): complete redesign of Trace page
LIghtJUNction Mar 29, 2026
95cb2a8
fix: resolve multiple type errors and runtime bugs
LIghtJUNction Mar 29, 2026
efa999c
merge: origin/master into dev
LIghtJUNction Mar 30, 2026
086dc00
fix: resolve MCPTool import and openai_source merge conflicts
LIghtJUNction Mar 30, 2026
e855790
fix: restore dev retry logic and add class constants
LIghtJUNction Mar 30, 2026
e1c4b52
fix: resolve create_task type error in tool_loop_agent_runner
LIghtJUNction Mar 30, 2026
480c77a
fix: restore dashboard trace and platform logos
LIghtJUNction Mar 30, 2026
50b7d18
fix: resolve Self return type in ToolImageCache
LIghtJUNction Mar 30, 2026
2aafe18
fix: add type ignore for add_tool arg
LIghtJUNction Mar 30, 2026
376161f
fix: add type ignore for persona_toolset.add_tool
LIghtJUNction Mar 30, 2026
f084fba
fix: add type ignore for func_tool assignment
LIghtJUNction Mar 30, 2026
7e3bdbc
fix: add type ignore for merge
LIghtJUNction Mar 30, 2026
49d1746
fix: add type ignore for msg_dict
LIghtJUNction Mar 30, 2026
9b15a60
fix: resolve 7 type errors in dev branch
LIghtJUNction Mar 30, 2026
abb6a32
fix: type errors
LIghtJUNction Mar 30, 2026
4ca8bc7
fix: type
LIghtJUNction Mar 30, 2026
54f6916
fix: type
LIghtJUNction Mar 30, 2026
70107b2
fix: type
LIghtJUNction Mar 30, 2026
f543f16
fix: type
LIghtJUNction Mar 30, 2026
a550b88
fix: type
LIghtJUNction Mar 30, 2026
ff2d3d1
fix: delete duplicate layout in PersonaManager.vue (#7190)
kyangconn Mar 30, 2026
4a8686e
Merge branch 'dev' of https://github.com/AstrBotDevs/AstrBot into dev
LIghtJUNction Mar 31, 2026
94378d6
feat(dashboard): add auto switch theme button to setting page. (#7170)
kyangconn Mar 31, 2026
d921322
Merge branch 'dev' of https://github.com/AstrBotDevs/AstrBot into dev
LIghtJUNction Mar 31, 2026
3f40a1b
fix: simplify persona page header layout
LIghtJUNction Mar 31, 2026
7ff4057
feat(web-search): add provider routing aliases and explicit-engine se…
Jacobinwwey Mar 31, 2026
a73e388
fix(agent): improve send_message_to_user tool description to prevent …
ccsang Mar 31, 2026
87bfecb
chore: update requirements.txt
LIghtJUNction Mar 31, 2026
fc515d4
Merge remote-tracking branch 'origin/master' into dev
LIghtJUNction Mar 31, 2026
7ff6df9
chore: add type stubs and update pyproject.toml configuration
LIghtJUNction Mar 31, 2026
97077ed
test: clean up type: ignore comments and add package markers
LIghtJUNction Mar 31, 2026
da12fca
refactor(utils): improve type annotations and code quality
LIghtJUNction Mar 31, 2026
3eccbca
refactor(i18n): improve type safety and code quality in i18n_utils
LIghtJUNction Mar 31, 2026
6584168
refactor(platforms): improve type safety in platform adapters
LIghtJUNction Mar 31, 2026
806c3df
refactor(commands): improve type safety and add validation
LIghtJUNction Mar 31, 2026
b152516
refactor(db): clean up redundant type annotations and improve code
LIghtJUNction Mar 31, 2026
9ba2ea6
refactor(provider): improve type safety and code quality
LIghtJUNction Mar 31, 2026
a306c63
refactor(agent): improve type safety in agent components
LIghtJUNction Mar 31, 2026
585ffb3
refactor(pipeline): improve type safety and code quality
LIghtJUNction Mar 31, 2026
7b16068
refactor(star): improve type safety and code quality
LIghtJUNction Mar 31, 2026
5357a29
refactor(computer): improve type safety and error handling
LIghtJUNction Mar 31, 2026
69b1b09
refactor(dashboard): improve SSL configuration and code quality
LIghtJUNction Mar 31, 2026
12168a9
删除 .mcp.json
LIghtJUNction Mar 31, 2026
f695ddc
Delete .mcp.json
LIghtJUNction Mar 31, 2026
5e6a9f9
Merge branch 'dev' of https://github.com/AstrBotDevs/AstrBot into dev
LIghtJUNction Mar 31, 2026
cbeb25f
fix(provider): improve type annotations in volcengine TTS loggable pa…
LIghtJUNction Mar 31, 2026
9c9d4d6
refactor(dashboard): update UI pages to glassmorphism style
LIghtJUNction Mar 31, 2026
360a13b
chore: smart commit — update AGENTS.md, run ruff format, and apply sm…
LIghtJUNction Mar 31, 2026
105530a
fix: correct the image of compose (#7240)
kyangconn Apr 1, 2026
b17e5d4
feat(dashboard): Enhance Types in Settings.vue (#7241)
kyangconn Apr 2, 2026
310fdf3
fix: handle broken dashboard dist symlink in hatch build hook for AUR…
LIghtJUNction Apr 2, 2026
0883437
chore: remove dashboard dist symlink
LIghtJUNction Apr 2, 2026
868c81b
chore: commit all changes
LIghtJUNction Apr 2, 2026
ca4923d
refactor: remove TUI from cmd_run
LIghtJUNction Apr 2, 2026
3af00b9
chore: cmd_run
LIghtJUNction Apr 2, 2026
005b836
Merge remote-tracking branch 'origin/master' into dev
LIghtJUNction Apr 2, 2026
74849b4
fix auth store defineStore arguments
LIghtJUNction Apr 2, 2026
22606f3
Restore original dev frontend request handling
LIghtJUNction Apr 2, 2026
ea5d573
chore(vite): silence Sass import deprecation warnings
LIghtJUNction Apr 2, 2026
c867dac
fix(deps): dompurify version conflict
LIghtJUNction Apr 2, 2026
422d3c1
chore(dashboard): silence Sass if-function deprecation warnings
LIghtJUNction Apr 2, 2026
d3a429a
fix(dashboard): remove unused join import in vite config
LIghtJUNction Apr 2, 2026
582a63b
fix(dashboard): mount pinia before router to avoid white screen on start
LIghtJUNction Apr 2, 2026
5f701a7
fix(dashboard): use global.name.value for Vuetify 3 theme change
LIghtJUNction Apr 2, 2026
59c0e74
fix(dashboard): use @/utils/request instance of axios globally
LIghtJUNction Apr 2, 2026
d9e91bb
style: 修复 Webchat 浅色模式字体颜色及更新数据统计面板样式
LIghtJUNction Apr 2, 2026
2126002
fix: 修复 Vue 样式穿透警告并更新 tsconfig 解析模式
LIghtJUNction Apr 2, 2026
7b11f90
chore(deps): bump lodash from 4.17.23 to 4.18.1 in dashboard
LIghtJUNction Apr 2, 2026
252c623
feat: rename CORS_ALLOW_ORIGIN to ASTRBOT_CORS_ALLOW_ORIGIN and add i…
LIghtJUNction Apr 2, 2026
6918ebe
fix: revert shell execution logic back to master implementation
LIghtJUNction Apr 2, 2026
8310ade
Update pyproject.toml
LIghtJUNction Apr 2, 2026
26ff632
chore: remove astrbot-rs
LIghtJUNction Apr 2, 2026
90b79d5
fix(webui): enforce 12-char dashboard password policy with backend+fr…
Soulter Apr 3, 2026
a0159c8
fix(i18n): update password policy hints and validation rules for impr…
Soulter Apr 3, 2026
a3abb28
test: adapt dashboard auth fixtures for hashed default password
Soulter Apr 3, 2026
fe0e235
Merge remote-tracking branch 'origin/master' into dev
LIghtJUNction Apr 4, 2026
b749f62
fix(security): increase PBKDF2 iterations
Soulter Apr 4, 2026
c4dee90
refactor(cli): unify password encryption logic in cmd_conf.py
LIghtJUNction Apr 4, 2026
4308580
chore: ruff
LIghtJUNction Apr 4, 2026
a47e39d
feat(auth): implement secure login challenge and proof verification
Soulter Apr 4, 2026
5c27cf1
chore: ruff format
Soulter Apr 4, 2026
3d2ff93
fix(cli): use raise from e in exception clauses
LIghtJUNction Apr 4, 2026
a64d4e7
fix(auth): update md5 import syntax for consistency
Soulter Apr 4, 2026
8f62ad5
feat(auth): merge challenge-proof authentication and argon2 hashing f…
LIghtJUNction Apr 4, 2026
f429c72
test: update dashboard password resolution and fix mock loggers
LIghtJUNction Apr 4, 2026
6bff35d
fix(dashboard): resolve JSON syntax errors and BOM in auth.json
LIghtJUNction Apr 4, 2026
5012475
style: remove redundant empty lines and unused exception variables
LIghtJUNction Apr 4, 2026
3b8a77b
fix(dashboard): use correctly intercepted axios in VerticalHeader.vue…
LIghtJUNction Apr 4, 2026
b4f3718
fix(dashboard): restore beautiful glassmorphism login UI lost during …
LIghtJUNction Apr 4, 2026
607735e
fix(dashboard): resolve missing translations and autocomplete warnings
LIghtJUNction Apr 4, 2026
6675a95
fix(dashboard): completely resolve vuetify deprecation warning for th…
LIghtJUNction Apr 4, 2026
0b07409
fix(dashboard): completely eliminate all vuetify theme change warnings
LIghtJUNction Apr 4, 2026
4588543
fix(dashboard): fix vuetify theme deprecation, sse cors, and update i…
LIghtJUNction Apr 4, 2026
b40401a
style(dashboard): format password validation rule
LIghtJUNction Apr 4, 2026
c8b83f0
build(dashboard): upgrade lodash-es to 4.18.1 in overrides to fix sec…
LIghtJUNction Apr 4, 2026
779517d
refactor(dashboard): replace console.log with console.info
LIghtJUNction Apr 4, 2026
6f8e170
style(dashboard): format parameters in authLoginProof.ts
LIghtJUNction Apr 4, 2026
c27118d
style(dashboard): format and fix types in authLoginProof
LIghtJUNction Apr 4, 2026
c2b8378
fix(dashboard): remove unused variables in VerticalHeader.vue
LIghtJUNction Apr 4, 2026
92ecb6e
chore: style
LIghtJUNction Apr 4, 2026
b09defc
fix(dashboard): remove unused theme variable from App.vue
LIghtJUNction Apr 4, 2026
be22a99
chore: dashboard
LIghtJUNction Apr 4, 2026
b802ede
Merge dev and fix conflicts
LIghtJUNction Apr 6, 2026
13d0b8c
Merge branch 'dev' and fix tool_loop_agent_runner conflict
LIghtJUNction Apr 6, 2026
7d22cfb
chore: gitignore
LIghtJUNction Apr 8, 2026
43156d6
Merge branch 'origin/dev' into dev
LIghtJUNction Apr 8, 2026
b3c3f52
chore: remove pnpm-lock.yaml
LIghtJUNction Apr 8, 2026
86a78b5
chore: ignore pnpm-lock.yaml
LIghtJUNction Apr 8, 2026
89209ae
fix(deps): bump pinia to ^3.0.4 for vue-router@5.0.4 compatibility
LIghtJUNction Apr 8, 2026
ba7ace4
fix: add .npmrc with legacy-peer-deps=true
LIghtJUNction Apr 8, 2026
dd36913
fix(discord): resolve 'await' outside async function in collect_comma…
LIghtJUNction Apr 8, 2026
25f1081
fix(dashboard): redirect to server config dialog when backend URL not…
LIghtJUNction Apr 8, 2026
07b49b9
fix(deps): bump vite to 8.0.5 (resolves 3 security advisories)
LIghtJUNction Apr 8, 2026
3f1a148
fix(dashboard): auto-prepend https:// for backend URLs without protocol
LIghtJUNction Apr 8, 2026
3cd48ad
feat(cli): block password change if astrbot is running
LIghtJUNction Apr 8, 2026
33f54aa
fix(updator): skip update prompt when prerelease version >= latest st…
LIghtJUNction Apr 8, 2026
ec1af1a
ruff check --fix --select ALL
LIghtJUNction Apr 10, 2026
7a23c26
chore: gitignore
LIghtJUNction Apr 10, 2026
e781c5e
chore: ruff check --fix --select ALL
LIghtJUNction Apr 10, 2026
aa279f0
chore: ruff format .
LIghtJUNction Apr 10, 2026
18e6659
chore: ruff check --fix && ruff format .
LIghtJUNction Apr 10, 2026
5303e40
Merge branch 'master' into dev
LIghtJUNction Apr 10, 2026
dcf84e6
feat: enhance CLI prompts and fix frontend 401 handling
LIghtJUNction Apr 10, 2026
9daf44a
feat(cli): add detailed version command with system and git info
LIghtJUNction Apr 10, 2026
1cd49b4
refactor(cli): remove logo from default CLI output
LIghtJUNction Apr 10, 2026
cb9d7c0
fix(cli): only run runtime bootstrap when needed
LIghtJUNction Apr 10, 2026
6a81739
feat(cli): show ASCII logo and QR code only in interactive mode
LIghtJUNction Apr 10, 2026
ec363aa
fix(core): suppress SSL protocol errors from logging
LIghtJUNction Apr 10, 2026
8946a90
feat(provider): add lm_studio timeout in advanced config (#6415)
exynos967 Apr 10, 2026
7543dd2
refactor: remove TUI module and fix type annotations
LIghtJUNction Apr 11, 2026
3fc29a6
fix(provider): add missing ClassVar import in gemini_source
LIghtJUNction Apr 11, 2026
4d1e0ef
merge: resolve conflicts from upstream
LIghtJUNction Apr 15, 2026
e16e5c7
fix: resolve merge conflicts from upstream and fix tool conflict reso…
LIghtJUNction Apr 15, 2026
6d49428
Merge remote-tracking branch 'origin' into dev
LIghtJUNction Apr 18, 2026
33ec7bb
merge: master -> dev
LIghtJUNction Apr 22, 2026
c4048bb
refactor: delete _internal
LIghtJUNction Apr 22, 2026
60738b4
Update internal.py
LIghtJUNction Apr 22, 2026
5e32fdf
Update context.py
LIghtJUNction Apr 22, 2026
2ecd95b
chore: ruff check && format
LIghtJUNction Apr 22, 2026
1b76af4
test: improve storage_cleaner tests (constants, helpers, clearer asse…
LIghtJUNction Apr 22, 2026
4463895
chore: improve code quality score from 55 to 81
LIghtJUNction Apr 28, 2026
5f827ff
feat: persistent shell session and remove dead ToolSessionManager
LIghtJUNction Apr 28, 2026
63e1988
chore: merge CLAUDE.md into AGENTS.md and remove CLAUDE.md
LIghtJUNction Apr 28, 2026
0208dbb
Merge branch 'master' of https://github.com/AstrBotDevs/AstrBot into dev
LIghtJUNction Apr 28, 2026
f5d60f3
fix: restore persistent shell session lost in merge, upgrade axios to…
LIghtJUNction Apr 28, 2026
497fefb
fix: restore missing sentinel classes and import lost in merge
LIghtJUNction Apr 28, 2026
1acefcd
fix: restore dashboard to pre-merge version (broken by -X theirs merge)
LIghtJUNction Apr 28, 2026
c059d60
fix: port IME enter fix and Firecrawl tool name from master
LIghtJUNction Apr 28, 2026
9bc8731
fix: add Firecrawl API key and CUA image config from master
LIghtJUNction Apr 28, 2026
2c3bceb
feat: add file dedup and signature check from master attachment handling
LIghtJUNction Apr 28, 2026
946685d
fix: re-export BACKGROUND_TASK_WOKE_USER_PROMPT and CONVERSATION_HIST…
LIghtJUNction Apr 28, 2026
7c4a061
feat: port attachment handling improvements from master
LIghtJUNction Apr 28, 2026
d57582e
fix: restore merge-dropped port/ip_addr variable definitions and payl…
LIghtJUNction Apr 28, 2026
716e651
feat: add inline message editing and regeneration functionality for w…
LIghtJUNction Apr 28, 2026
e610c49
fix: port IME enter fix and Firecrawl tool name from master
LIghtJUNction Apr 28, 2026
4925397
fix: restore IME fix, fileTypeStyles, clearStaged fix lost in inline …
LIghtJUNction Apr 28, 2026
50b1485
fix: add 5 missing SQLiteDatabase method implementations lost in merge
LIghtJUNction Apr 28, 2026
1d36f04
fix: restore _sanitize_upload_filename function lost in merge
LIghtJUNction Apr 28, 2026
0c47c27
test: add import smoke, auth roundtrip, and startup tests
LIghtJUNction Apr 28, 2026
846a1ab
test: add main.py syntax check and SQLiteDatabase abstract method check
LIghtJUNction Apr 28, 2026
71ce6b0
test: add compile-all check and CLI entry point test for AUR compat
LIghtJUNction Apr 28, 2026
e9a62f7
test: align imports with PKGBUILD check(), add AUR startup chain tests
LIghtJUNction Apr 28, 2026
cafe26b
fix: repair test failures from merge
LIghtJUNction Apr 28, 2026
3fb7515
fix: LocalShellComponent tests - mock sessions to avoid event loop co…
LIghtJUNction Apr 28, 2026
afb0f88
fix: test_cua_config_log logger mock compat with multi-arg info calls
LIghtJUNction Apr 28, 2026
585b871
test: add dashboard API smoke tests for all route classes
LIghtJUNction Apr 28, 2026
4480bc2
fix: test_ensure_vec_db mock path and create kb_dir to avoid SQLite e…
LIghtJUNction Apr 28, 2026
d3793ee
fix: align test_initial_loader with current InitialLoader.start imple…
LIghtJUNction Apr 28, 2026
d6c4c70
fix: add missing functools and TYPE_CHECKING imports in shipyard.py
LIghtJUNction Apr 28, 2026
1bc8175
fix: make registered_web_apis/_register_tasks instance vars, add rese…
LIghtJUNction Apr 28, 2026
b403422
test: cover all non-placeholder API routes with parametrized smoke tests
LIghtJUNction Apr 28, 2026
10fa16e
fix: core_lifecycle event_bus cleanup, initialize_core sets dashboard…
LIghtJUNction Apr 28, 2026
d8eb3d3
fix: dashboard_shutdown_event None safety, missing KnowledgeBaseUploa…
LIghtJUNction Apr 28, 2026
a0c9cc8
fix: test_api.py type errors - inline kwargs, fix ParameterSet import…
LIghtJUNction Apr 28, 2026
dcaaf62
test: comprehensive test coverage and type fixes
LIghtJUNction Apr 28, 2026
c7cfb81
fix: replace optional chaining/nullish coalescing in Vue templates
LIghtJUNction Apr 28, 2026
e875709
fix: reasoning_content None guard in openai_source think part parsing
LIghtJUNction Apr 28, 2026
adc31fd
Fix: NoneType += str error in openai_source.py
LIghtJUNction Apr 28, 2026
9f999e4
test: add test for None think content edge case in openai_source
LIghtJUNction Apr 28, 2026
361f42f
fix: add exc_info to agent error log for debugging NoneType += str
LIghtJUNction Apr 28, 2026
1f3f86a
fix: system_prompt None guard before += in _ensure_persona_and_skills
LIghtJUNction Apr 28, 2026
40fb75f
test: regression test for system_prompt=None + TypeError
LIghtJUNction Apr 28, 2026
5e0fece
feat: add Computer Use step to onboarding wizard
LIghtJUNction Apr 28, 2026
85a50ef
Revert "feat: add Computer Use step to onboarding wizard"
LIghtJUNction Apr 28, 2026
de590c4
feat: add Computer Use step to onboarding wizard (sync with master)
LIghtJUNction Apr 28, 2026
a131d7f
fix: add fetchDefaultConfig helper for computer access step
LIghtJUNction Apr 28, 2026
eac4215
fix: add missing clear_persona param to SQLiteDatabase.update_convers…
LIghtJUNction Apr 29, 2026
7a0909a
test: add regression test for update_conversation clear_persona param
LIghtJUNction Apr 29, 2026
daee102
test: comprehensive import smoke tests for all dashboard routes
LIghtJUNction Apr 29, 2026
169a856
test: mass-coverage push — ~1000+ new unit tests
LIghtJUNction Apr 29, 2026
d582a85
test: dashboard routes unit tests for chat/conversation/open_api
LIghtJUNction Apr 29, 2026
8b609a9
fix: jsonschema ValidationError import in test_tool
LIghtJUNction Apr 29, 2026
e980151
test: utils test expansion - network, command_parser, storage, tempdi…
LIghtJUNction Apr 29, 2026
3d7dff6
test: final coverage batch - utils, pipeline, agent, star tests
LIghtJUNction Apr 29, 2026
6996dbd
Update .gitignore
LIghtJUNction Apr 29, 2026
a5141e2
ci(dashboard): add biome lint check to CI workflow
LIghtJUNction Apr 29, 2026
284700d
feat(dashboard): support first-login auto admin setup
LIghtJUNction Apr 29, 2026
e9c3481
wip: current local changes before squash rebase
LIghtJUNction May 7, 2026
d373a24
merge: sync origin/master into dev
LIghtJUNction May 8, 2026
273b677
test: fix unit tests after master→dev merge
LIghtJUNction May 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 93 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# ==========================================
# AstrBot Environment Configuration Example
# ==========================================
# Copy this file to .env and adjust the values as needed.
# Note: Variables set here will override default configurations.

# ------------------------------------------
# Core Configuration (核心配置)
# ------------------------------------------

# AstrBot root directory path. Defaults to current working directory or ~/.astrbot for desktop client.
# ASTRBOT_ROOT=/path/to/astrbot

# Log level. Options: DEBUG, INFO, WARNING, ERROR, CRITICAL. Default: INFO.
# ASTRBOT_LOG_LEVEL=INFO

# Enable plugin auto-reload. Set to "1" to enable. Useful for development.
# ASTRBOT_RELOAD=0

# Disable metrics upload. Set to "1" to disable anonymous usage statistics.
# ASTRBOT_DISABLE_METRICS=0

# Python executable path override (used for local code execution feature).
# PYTHON=/usr/bin/python3

# Enable demo mode (might restrict some features).
# DEMO_MODE=False

# Enable testing mode (affects logging and some behaviors).
# TESTING=False

# Flag indicating execution via desktop client (Internal use mostly).
# ASTRBOT_DESKTOP_CLIENT=0

# Flag indicating execution via systemd service.
# ASTRBOT_SYSTEMD=0

# ------------------------------------------
# Dashboard Configuration (管理面板配置)
# ------------------------------------------

# Enable or disable the WebUI Dashboard. Default: True.
# ASTRBOT_DASHBOARD_ENABLE=True

# Dashboard bind host. Default: 0.0.0.0 (listen on all interfaces).
# ASTRBOT_DASHBOARD_HOST=0.0.0.0

# Dashboard bind port. Default: 6185.
# ASTRBOT_DASHBOARD_PORT=6185

# Enable SSL (HTTPS) for the dashboard.
# ASTRBOT_DASHBOARD_SSL_ENABLE=False

# SSL Certificate path (required if SSL is enabled).
# ASTRBOT_DASHBOARD_SSL_CERT=/path/to/cert.pem

# SSL Key path (required if SSL is enabled).
# ASTRBOT_DASHBOARD_SSL_KEY=/path/to/key.pem

# SSL CA Certificates path (optional).
# ASTRBOT_DASHBOARD_SSL_CA_CERTS=/path/to/ca.pem

# ------------------------------------------
# Network Configuration (网络配置)
# ------------------------------------------

# HTTP/HTTPS Proxy URL (e.g., http://127.0.0.1:7890).
# http_proxy=
# https_proxy=

# No proxy list (comma-separated domains/IPs to bypass proxy).
# no_proxy=localhost,127.0.0.1

# ------------------------------------------
# Integrations (第三方集成)
# ------------------------------------------

# Alibaba DashScope API Key (used for Rerank service).
# DASHSCOPE_API_KEY=sk-xxxxxxxxxxxx

# Coze Integration
# COZE_API_KEY=
# COZE_BOT_ID=

# Computer Use data directory (for screenshot/file storage related to computer control).
# BAY_DATA_DIR=

# ------------------------------------------
# Platform Specific (平台特定配置)
# ------------------------------------------

# Test mode for QQ Official Bot.
# TEST_MODE=off
2 changes: 2 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
git pull
git status
53 changes: 53 additions & 0 deletions .github/workflows/deploy-dashboard.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Deploy Dashboard to GitHub Pages

on:
schedule:
- cron: '0 0 * * *' # Runs daily at midnight UTC
workflow_dispatch: # Allow manual triggering

permissions:
contents: read
pages: write
id-token: write

# Only allow one concurrent deployment at a time
concurrency:
group: pages
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup Bun
uses: oven-sh/setup-bun@v2

- name: Install dependencies
working-directory: dashboard
run: bun install

- name: Build dashboard
working-directory: dashboard
run: bun run build

- name: Setup Pages
uses: actions/configure-pages@v5

- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: dashboard/dist

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
15 changes: 9 additions & 6 deletions .github/workflows/smoke_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ on:
branches:
- master
paths-ignore:
- 'README*.md'
- 'changelogs/**'
- 'dashboard/**'
- "README*.md"
- "changelogs/**"
- "dashboard/**"
pull_request:
workflow_dispatch:

Expand All @@ -16,7 +16,7 @@ jobs:
name: Run smoke tests
runs-on: ubuntu-latest
timeout-minutes: 10

steps:
- name: Checkout
uses: actions/checkout@v6
Expand All @@ -26,8 +26,8 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.12'
python-version: "3.12"

- name: Install UV package manager
run: |
pip install uv
Expand All @@ -40,6 +40,9 @@ jobs:
- name: Run smoke tests
run: |
uv run main.py &
# uv tool install -e . --force
# astrbot init -y
# astrbot run --backend-only &
APP_PID=$!

echo "Waiting for application to start..."
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -61,5 +61,5 @@ GenieData/
.codex/
.opencode/
.kilocode/
.serena
.worktrees/

2 changes: 1 addition & 1 deletion .python-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.12
3.12
19 changes: 15 additions & 4 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@
### Core

```
uv sync
uv run main.py
uv tool install -e . --force
astrbot init
astrbot run # start the bot
astrbot run --backend-only # start the backend only
```

Exposed an API server on `http://localhost:6185` by default.
Expand All @@ -13,8 +15,8 @@ Exposed an API server on `http://localhost:6185` by default.

```
cd dashboard
pnpm install # First time only. Use npm install -g pnpm if pnpm is not installed.
pnpm dev
bun install # First time only.
bun dev
```

Runs on `http://localhost:3000` by default.
Expand All @@ -27,6 +29,15 @@ Runs on `http://localhost:3000` by default.
4. When committing, ensure to use conventional commits messages, such as `feat: add new agent for data analysis` or `fix: resolve bug in provider manager`.
5. Use English for all new comments.
6. For path handling, use `pathlib.Path` instead of string paths, and use `astrbot.core.utils.path_utils` to get the AstrBot data and temp directory.
7. Use Python 3.12+ type hinting syntax (e.g., `list[str]` over `List[str]`, `int | None` over `Optional[int]`). Avoid using `Any` and ensure comprehensive type annotations are provided.
8. When introducing new environment variables:
- Use the `ASTRBOT_` prefix for naming (e.g., `ASTRBOT_ENABLE_FEATURE`).
- Add the variable and description to `.env.example`.
- Update `astrbot/cli/commands/cmd_run.py`:
- Add to the module docstring under "Environment Variables Used in Project".
- Add to the `keys_to_print` list in the `run` function for debug output.
9. To check all available CLI commands and their usage recursively, run `astrbot help --all`.


## PR instructions

Expand Down
Loading