62 Commits

Author SHA1 Message Date
9ab529e930 bugfix 2026-04-24 12:07:20 +08:00
5002a3a4c7 bugfix 2026-04-24 12:03:27 +08:00
5a4c2e7393 bugfix 2026-04-24 11:44:06 +08:00
75fa6c5d29 feat(hermes-web-cli): add missing module files and fix user context handling
- Add missing core module files: crud_ops.py, db_tables.py, init_db.py, user_context.py
- Ensure all .dspy scripts properly use get_user() for user_id acquisition
- Fix user context handling in module functions via get_current_user_id()
- Maintain proper async/await patterns throughout the codebase
- Complete module implementation following module-development-spec
- All database operations use sqlor framework with proper user isolation
2026-04-24 11:12:36 +08:00
1fe8bb0027 fix(new_session.ui): correct Form field configuration per bricks-framework spec
- Replace 'select' uitype with 'code' uitype
- Use data_url instead of options.url for dynamic data loading
- Add valueField and textField to map backend response fields
- Fix URL path to /hermes-web-cli/hermes_services/list/
- Complies with module-development-spec and bricks-framework requirements
2026-04-23 18:33:28 +08:00
fab7170954 Add multi-user support: update create_session to accept user_id parameter and use ahserver's get_user() in create_session.dspy 2026-04-23 11:29:57 +08:00
9494a235f2 Remove initial-prompt field from new_session.ui form and update create_session.dspy to handle empty initial message 2026-04-23 11:23:09 +08:00
2115829274 Remove unnecessary hermes-web-cli subdirectory in wwwroot and move files to correct locations 2026-04-23 11:20:51 +08:00
72fc8656b9 Fix create_session.dspy: use return {'redirect': ...} instead of await redirect() to match ahserver convention 2026-04-23 11:17:57 +08:00
2ab47efd03 Update create_session.dspy to use await redirect() for proper navigation after session creation 2026-04-23 11:06:20 +08:00
a0ef78ac8d Improve create_session.dspy parameter handling for both request.form and direct params 2026-04-23 11:05:14 +08:00
0ac8ca310f Fix new_session.ui: remove custom toolbar and use params instead of data in urlwidget 2026-04-23 11:04:34 +08:00
f6c07f6d10 Implement create_session.dspy script and update backend function to call hermes-service API 2026-04-23 10:58:23 +08:00
607718ac21 fix: correct settings.ui to use get_setting() function instead of get_url 2026-04-22 21:55:19 +08:00
5e3067a92a fix(settings): resolve undefined security variable in settings.ui
- Added jinja2 set statement to fetch settings data from /hermes-web-cli/settings/ API
- Updated Form fields to use value/checked properties with proper fallbacks
- Implemented settings API endpoint to return current configuration
- Removed incorrect load event binding and template variable references
2026-04-22 21:51:04 +08:00
5b4085e6fd feat: add apikey field to hermes_services table structure and edit form 2026-04-22 21:02:16 +08:00
f7ef379a52 Add API key field to service configuration and support Bearer token authentication 2026-04-22 18:43:52 +08:00
4b53b0e778 Update Service menu URL to point to ./hermes_services endpoint 2026-04-22 18:29:47 +08:00
ac07140fc4 Further simplify new_session.ui: Remove session name field, let Hermes auto-generate session names 2026-04-22 18:03:51 +08:00
25add75558 Simplify new_session.ui: Remove AI Model field to use Hermes default model automatically 2026-04-22 18:01:51 +08:00
c898c9eef1 Fix new_session.ui: Use uitype instead of widgettype in Form fields, and implement proper Form toolbar actions 2026-04-22 17:49:07 +08:00
14ed67907a Fix settings.ui: Correct TabPanel structure using items instead of tabs, and use Form toolbar actions with proper uitype in fields 2026-04-22 17:40:35 +08:00
701aedfa5a Fix settings.ui: Replace non-existent Tabs控件 with TabPanel控件 and ensure Form控件 uses correct options.fields structure 2026-04-22 17:17:34 +08:00
02b2cdaeec Fix template variable references: Use quoted syntax '{{ 'widget-id'.data }}' to avoid Jinja2 UndefinedError with hyphenated widget IDs 2026-04-22 17:11:48 +08:00
2cda5570dc Fix list-component.js: Use correct bricks API methods - clear_widgets(), add_widget() instead of non-existent refresh() and appendChild() 2026-04-22 17:08:54 +08:00
3182fcdf97 Fix list-component.js: Remove non-existent refresh() method and use proper subwidgets array management for bricks framework compatibility 2026-04-22 17:07:42 +08:00
e726abcddb Refactor UI files to use registerfunction instead of inline script, following bricks-framework理念: minimize JS usage and use existing controls with auxiliary validation functions 2026-04-22 17:04:54 +08:00
63a3d3be59 Remove new-session.js: implement form handling inline using script actiontype, simplify model selection to text input 2026-04-22 16:48:10 +08:00
7daf801c99 Fix JavaScript files: use correct bricks.getWidgetById API with proper ID format 2026-04-22 16:43:09 +08:00
30eae89807 Fix Form控件结构: ensure all Form controls use options.fields instead of subwidgets 2026-04-22 16:39:31 +08:00
eee254da60 Fix new_session.ui: correct Form structure using options.fields instead of subwidgets 2026-04-22 16:34:06 +08:00
b30a98f65e Fix new_session.ui: add container ID and correct target reference for create_session button 2026-04-22 16:24:29 +08:00
82a58be972 Fix new_session.ui: correct URL reference and implement create_session functionality with proper registerfunction binding 2026-04-22 16:19:58 +08:00
73b833c1c3 Wrap Menu in VBox with fixed width: set outer VBox to 250px width and Menu to 100% width 2026-04-22 16:14:15 +08:00
3f449816ed Fix List component constructor: ensure opts.options exists before accessing width/height properties 2026-04-22 15:55:45 +08:00
fbd94e86a1 Fix settings.js syntax error: remove duplicate line numbers causing Unexpected token 'try' 2026-04-22 15:52:06 +08:00
3edfa140e9 Fix bricks framework API usage and file structure
- Move all JS files from wwwroot/scripts/ to wwwroot/ root directory to comply with ahserver requirements
- Fix component registration: use bricks.Factory.register() instead of bricks.register()
- Fix function registration: use bricks.RF.register() instead of bricks.registerFunction()
- Update UI files to use item_template_url with external templates for List components
- Add proper list item template files (session-list-item.ui, service-list-item.ui, model-list-item.ui)
- Ensure all custom components and functions use correct bricks framework API
2026-04-22 15:49:36 +08:00
34949ea16c Fix bricks-framework component usage: replace invalid List with custom implementation, replace Input/Checkbox/Select/Textarea with proper UiStr/UiInt/UiCheck/UiCode/UiText components with required name attributes 2026-04-22 14:59:53 +08:00
bc3e94b64a Fix Jinja2 template errors: use 'item' for List components and correct form field access 2026-04-22 14:48:50 +08:00
e846804ec8 Fix UI bindings and implement proper .dspy endpoints according to bricks-framework规范 2026-04-22 14:41:42 +08:00
6c28e4f6a9 fix: resolve Jinja2 template errors and undefined item variables
- Replace JavaScript ternary operator with Jinja2 if-else syntax in services.ui
- Change all 'item' references to 'data' in List component templates
- Add proper script bindings with data passing for List component actions
- Update main.dspy functions to use correct parameter names from form data
- Add missing update_model and remove_model functions for AI model management
- Ensure all List component interactions properly pass current item data
2026-04-22 14:25:08 +08:00
c158573a39 fix: replace backgroundColor with bgcolor in all UI files and add missing scripts
- Replace all 'backgroundColor' properties with 'bgcolor' to comply with bricks-framework specification
- Add missing UI files: new_session.ui, sessions.ui, services.ui, settings.ui
- Create scripts/main.dspy with all required functions for UI interactions
- Fix layout using css: 'filler' for main-content to properly fill remaining width
- Ensure all referenced links have corresponding script implementations
2026-04-22 14:15:54 +08:00
b152e41f69 fix: 清理临时文件 2026-04-22 14:03:57 +08:00
80781da286 fix: 移除Menu组件的item_cheight设置,使用缺省高度;确认使用bgcolor属性设置背景色 2026-04-22 14:03:46 +08:00
7624e3be08 fix: 修正index.ui中的控件ID引用,所有target统一使用'app.main-content'从body开始寻找 2026-04-22 13:54:58 +08:00
ff3275429d fix: 修正控件ID引用,动态加载的UI文件使用'app.main-content'从body开始寻找目标容器 2026-04-22 13:53:35 +08:00
2f312c0554 fix: 重新创建hermes_services/list端点用于code组件数据格式转换,修正new_session.ui配置 2026-04-22 13:48:17 +08:00
28459df92b fix: 清理临时文件 2026-04-22 13:20:54 +08:00
7d55ef7548 fix: 删除不必要的手动.dspy端点,修正new_session.ui使用标准CRUD端点和textField/valueField参数 2026-04-22 13:20:47 +08:00
51f9776f40 fix: 使用return而非print返回数组数据 2026-04-22 13:18:12 +08:00