DrSmoothl
c58ad64352
feat(dashboard): integrate DynamicConfigForm for ChatSection POC
...
- Register ChatSectionHook as 'replace' mode field hook
- Replace ChatSection rendering with DynamicConfigForm
- Use hardcoded minimal schema (POC - API integration pending)
- Preserve all existing state management and auto-save logic
- TypeScript compilation: ✓ PASSED
Complete Task 11 (Wave 3)
Ref: WebUI config visualization refactor plan
2026-02-17 17:46:40 +08:00
DrSmoothl
3fcf02866a
feat(dashboard): export ChatSectionHook in hooks index
...
- Add ChatSectionHook export to hooks/index.ts
- Complete Task 10 (Wave 3)
- ChatSectionHook now available for import and registration
2026-02-17 17:41:41 +08:00
DrSmoothl
b382747398
feat(dashboard): convert ChatSection to Hook component
2026-02-17 17:37:47 +08:00
DrSmoothl
ed27217c94
feat(config): add UI metadata to all Bot config sections
...
- BotConfig: 5/5 fields (100%)
- ChatConfig: 9/9 fields (100%)
- PersonalityConfig: 8/8 fields (100%)
- MemoryConfig: 9/9 fields (100%)
- ExpressionConfig: 13/13 fields (100%)
- WebUIConfig: 8/8 fields (100%)
- DatabaseConfig: 1/1 fields (100%)
All user-facing fields now have x-widget and x-icon metadata.
Complex fields marked as 'custom' for Hook rendering.
Completes Task 9 of webui-config-visualization-refactor plan.
2026-02-17 17:35:18 +08:00
DrSmoothl
bae87d122b
feat(config): add UI metadata to ModelConfig fields
...
Add json_schema_extra UI metadata to all Model-related configuration classes:
- APIProvider (7 fields): name, base_url, api_key, client_type, max_retry, timeout, retry_interval
- ModelInfo (8 fields): model_identifier, name, api_provider, price_in, price_out, temperature, max_tokens, force_stream_mode, extra_params
- TaskConfig (5 fields): model_list, max_tokens, temperature, slow_threshold, selection_strategy
- ModelTaskConfig (9 fields): utils, replyer, vlm, voice, tool_use, planner, embedding, lpmm_entity_extract, lpmm_rdf_build
Pattern: Field(default=..., [ge/le constraints], json_schema_extra={x-widget, x-icon, [step]})
Widget types: input, slider, switch, select, custom (for complex types)
Constraints mapped: ge/le to minValue/maxValue in Schema output (Task 1d)
All 30 user-facing fields now have complete metadata coverage:
- x-widget: rendering hint for frontend
- x-icon: icon identifier from lucide-react
- Constraints: ge, le for numeric validation
Verification:
✓ All classes import successfully
✓ 100% metadata coverage on user-facing fields
✓ Config instance creation works
✓ Backward compatible with existing validation
Relates to: Task 12 (Wave 3) of webui-config-visualization-refactor
2026-02-17 17:25:48 +08:00
DrSmoothl
b1c01d0a0c
feat: add .sisyphus/ to .gitignore
2026-02-17 17:22:35 +08:00
DrSmoothl
449e2f470c
feat(dashboard): create DynamicConfigForm component with Hook integration
...
- Accept schema, values, onChange, hooks props
- Check for field hooks, use if present (replace/wrapper modes)
- Fall back to DynamicField for non-hooked fields
- Support nested schema rendering with recursive calls
- Export DynamicConfigForm and DynamicField from index
Groups with Task 5. Completes Task 6 of webui-config-visualization-refactor plan.
2026-02-17 17:20:50 +08:00
DrSmoothl
4e5d091417
test(webui): add unit tests for ConfigSchemaGenerator
...
- Test field descriptions from field_docs
- Test json_schema_extra merging
- Test Pydantic constraints mapping
- Test nested model schema handling
- Test fields without extra metadata
All 5 tests passing. Completes Task 7 of webui-config-visualization-refactor plan.
2026-02-17 17:14:48 +08:00
DrSmoothl
2962a95341
feat(dashboard): create DynamicField renderer component
...
- Render fields based on x-widget or type
- Support slider, switch, textarea, select, custom widgets
- Include label, icon, description rendering
- Placeholder for unsupported types (array, object)
Completes Task 5 of webui-config-visualization-refactor plan.
2026-02-17 17:14:41 +08:00
DrSmoothl
5879164bfe
feat(config): add UI metadata to remaining ChatConfig fields (Wave 2)
...
- plan_reply_log_max_per_chat: input widget + file-text icon
- llm_quote: switch widget + quote icon
- enable_talk_value_rules: switch widget + settings icon
- talk_value_rules: custom widget + list icon
All ChatConfig fields now have json_schema_extra metadata for complete UI visualization support.
2026-02-17 17:09:07 +08:00
DrSmoothl
278a084c23
feat(webui): enhance ConfigSchemaGenerator with field_docs and UI metadata
...
- Add AttrDocBase.get_class_field_docs() classmethod for class-level field docs extraction
- Merge json_schema_extra (x-widget, x-icon, step) into schema output
- Map Pydantic constraints (ge/le) to minValue/maxValue for frontend compatibility
- Add ge=0, le=1 constraints to ChatConfig.talk_value for validation
Completes Task 1 (including subtasks 1a, 1b, 1c, 1d) of webui-config-visualization-refactor plan.
2026-02-17 17:05:25 +08:00
DrSmoothl
19c9c5a39a
feat(webui): use get_class_field_docs for schema field descriptions
2026-02-17 16:58:59 +08:00
DrSmoothl
1631774452
feat(config): add UI metadata to ChatConfig sample fields
2026-02-17 16:49:49 +08:00
DrSmoothl
e530ee8fa6
feat(dashboard): create FieldHookRegistry for dynamic form hooks
2026-02-17 16:49:32 +08:00
DrSmoothl
5838dda175
feat(dashboard): add UI metadata fields to FieldSchema type
2026-02-17 16:48:58 +08:00
UnCLAS-Prommer
545e3b4982
Merge branch 'r-dev' of github.com:Mai-with-u/MaiBot into r-dev
2026-02-15 22:57:01 +08:00
UnCLAS-Prommer
75e154741d
方法名调整;确保公共属性被定义
2026-02-15 22:56:26 +08:00
DrSmoothl
b6441ea17b
更新 WebUI 版本
2026-02-15 16:46:52 +08:00
DrSmoothl
c834f8c59c
优化 pyproject.toml 文件,调整 setuptools 配置以正确包含和排除包
2026-02-15 16:46:11 +08:00
DrSmoothl
275608abea
test WebUI CI x5
2026-02-15 16:39:32 +08:00
DrSmoothl
a832f7dabe
修复版本号格式,移除 WEBUI_VERSION 中的点分隔符
2026-02-15 16:39:17 +08:00
DrSmoothl
ba10124152
test WebUI CI x4
2026-02-15 16:36:52 +08:00
DrSmoothl
3db97a687a
修复 pyproject.toml 文件的 EOF 语法,确保正确生成版本信息
2026-02-15 16:36:15 +08:00
DrSmoothl
c3adc688e8
test WebUI CI x3
2026-02-15 16:33:34 +08:00
DrSmoothl
15ab1343b9
更新工作流以使用 Bun 替代 Node 进行构建
2026-02-15 16:32:20 +08:00
DrSmoothl
a19b9b2c42
test WebUI CI x2
2026-02-15 16:30:56 +08:00
DrSmoothl
692b57f880
更新发布工作流以支持 dev 和 r-dev 分支,并修复版本号生成逻辑
2026-02-15 16:30:30 +08:00
DrSmoothl
63c27aaf21
test WebUI CI
2026-02-15 16:19:48 +08:00
DrSmoothl
0dccc23e76
更新 GitHub Actions 工作流,统一使用 ubuntu-24.04 作为运行环境;新增发布 WebUI 产物的工作流
2026-02-15 16:19:13 +08:00
UnCLAS-Prommer
5799ce7efe
新功能
2026-02-15 13:29:56 +08:00
UnCLAS-Prommer
6dc33e9e86
提取一些公共方法
2026-02-15 00:18:16 +08:00
UnCLAS-Prommer
6db889580d
方便消息格式检查的property
2026-02-14 23:52:58 +08:00
DrSmoothl
dc36542403
添加文件监视器地基模块,重构模型请求模块使用新版本的配置热重载模块,新增watchfiles依赖
2026-02-14 21:17:24 +08:00
UnCLAS-Prommer
daad0ba2f0
从maim_message的序列化和反序列化;更多消息组件
2026-02-14 16:19:56 +08:00
UnCLAS-Prommer
c0c003a098
更舒适的颜色配置方案,真彩色支持
2026-02-14 16:19:04 +08:00
DrSmoothl
16b16d2ca6
重构绝大部分模块以适配新版本的数据库和数据模型,修复缺少依赖问题,更新 pyproject
2026-02-13 20:39:11 +08:00
UnCLAS-Prommer
c14736ffca
更好更规范的类型注解;AGENTSMD试作
2026-02-13 16:24:03 +08:00
UnCLAS-Prommer
b80b5afe2a
先推上去
2026-02-13 15:45:38 +08:00
UnCLAS-Prommer
9a3e8887af
Merge branch 'r-dev' of github.com:Mai-with-u/MaiBot into r-dev
2026-02-13 15:38:18 +08:00
UnCLAS-Prommer
26b8f56251
移除不必要属性,修改一个方法为非协程
2026-02-13 15:37:49 +08:00
DrSmoothl
e6e0a57e3b
修复导入路径:将服务器模块的导入路径更改为正确的消息服务器路径
2026-02-13 15:33:55 +08:00
UnCLAS-Prommer
14f6fdb2b2
解决潜在的存储错误
2026-02-13 15:25:18 +08:00
UnCLAS-Prommer
b9f3c17e14
合并到远程
2026-02-13 13:41:58 +08:00
DrSmoothl
60f76e4d4e
添加对 peewee 的旧数据库的兼容层,初步重构插件的 database API
2026-02-09 22:44:56 +08:00
SengokuCola
bf46d540f1
Update .gitignore
2026-02-06 23:10:59 +08:00
SengokuCola
3a5fd9d3e3
feat:自动检测并升级旧版配置文件
2026-02-06 23:05:43 +08:00
UnCLAS-Prommer
049027a48f
maim_message强制版本要求;忽略APIServer下乱七八糟的类型注解和Patch
2026-02-05 16:53:48 +08:00
UnCLAS-Prommer
4dbe919cfe
移除.env文件
2026-02-05 16:16:44 +08:00
UnCLAS-Prommer
54e9007b8d
合并tcp_connector,移除多余的toml_utils.py
2026-02-05 15:43:37 +08:00
UnCLAS-Prommer
4edb2878a6
移除多余文件;更改命名
2026-02-05 13:23:45 +08:00