Web UI exposes example modules that are not present under examples/
Summary
The Web UI exposes several MODULE_DESCRIPTIONS entries that do not have matching modules under examples/. Selecting those options causes importlib.import_module(f"examples.{example_module}") to fail.
Reporter-assessed priority: P3 because this is a Web UI maintenance/UX issue. Maintainers should adjust the priority as appropriate.
Environment
- Repository:
camel-ai/owl - Commit reviewed:
9dbcf271a889f04e23894cc928069617b4483815 - Files:
owl/webapp.pyowl/webapp_zh.pyexamples/
Evidence
Existing Python files under examples/:
__init__.py
run.py
run_claude.py
run_deepseek.py
run_gemini.py
run_groq.py
run_qwen.py
run_vllm.pyBut MODULE_DESCRIPTIONS includes options such as:
run_mini
run_deepseek_zh
run_mistral
run_openai_compatible_model
run_ollama
run_qwen_mini_zh
run_qwen_zh
run_azure_openai
run_ppio
run_together_ai
run_novita_aiThe runtime path imports the selected module dynamically:
module_path = f"examples.{example_module}"
module = importlib.import_module(module_path)So a missing example file becomes a user-visible import failure.
Steps to Reproduce
- Start the OWL Web UI.
- Select an option such as
run_ollama,run_qwen_zh, orrun_azure_openai. - Submit a task.
Expected Behavior
The UI should only expose runnable modules, or missing modules should be clearly marked as unavailable.
Actual Behavior
The UI can expose module names that do not exist in examples/, leading to an import error after selection.
Suggested Fix
Possible approaches:
- Generate the dropdown choices from actual files in
examples/. - Remove unavailable entries from
MODULE_DESCRIPTIONS. - Add the missing example modules.
- Mark planned/unavailable entries as disabled instead of selectable.
中文补充
Web UI 下拉选项里存在多个 examples/ 目录中没有对应文件的模块名。用户选择这些选项后会触发动态导入失败。建议让 UI 只展示实际可运行模块,或把未完成的模块标记为不可用。
Source: camel-ai/owl