Commit Graph
899 Commits
Author SHA1 Message Date
Martin 7b8a2271a3 Merge pull request #459 from octo-patch/fix/issue-382-prevent-server-crash-on-query-error
fix: return HTTP 500 instead of crashing server on query errors
2026-04-05 11:59:00 +02:00
Martin 4e985d8df6 Merge pull request #457 from octo-patch/fix/issue-367-make-plan-infinite-loop
fix: add max retry limit to PlannerAgent.make_plan to prevent infinite loop
2026-04-05 11:58:09 +02:00
Martin 74d38100c4 Merge pull request #455 from octo-patch/fix/issue-359-planner-unbound-answer
fix: resolve UnboundLocalError in PlannerAgent.process when stop flag is set
2026-04-05 11:57:16 +02:00
Martin 9e4613df71 Merge pull request #450 from octo-patch/feature/upgrade-minimax-m27
feat: upgrade MiniMax default model to M2.7
2026-04-05 11:55:47 +02:00
Octopus 872d01f8e5 fix: return HTTP 500 instead of calling sys.exit(1) on query errors
Previously, any unhandled exception during query processing caused the
entire backend server to exit via sys.exit(1), making the frontend show
'System offline. Deploy backend first.' until the container was restarted.
Also, is_generating was never reset to False on exception, permanently
blocking all subsequent queries with 429 responses.

- Replace sys.exit(1) with a proper HTTP 500 error response
- Move is_generating = False to the finally block so it always resets

Fixes #382
2026-04-04 11:23:41 +08:00
Octopus d1ecb15703 fix: add max retry limit to PlannerAgent.make_plan to prevent infinite loop (fixes #367) 2026-04-03 10:51:23 +08:00
Octopus 7cde1549b2 fix: initialize answer variable and reset stop flag in PlannerAgent.process (fixes #359) 2026-04-02 16:52:06 +08:00
PR Bot 1432266694 feat: upgrade MiniMax default model to M2.7
- Add MiniMax-M2.7 and MiniMax-M2.7-highspeed to supported models list
- Update docstring to list M2.7 models before M2.5
- Update README/README_CHS model references
- Add unit tests for M2.7 and M2.7-highspeed models
- Keep all previous models as alternatives
2026-03-18 16:33:04 +08:00
Martin 1036c5fbc1 Merge pull request #449 from guoyangzhen/fix/optional-tts-dependency
fix: make kokoro TTS optional to resolve num2words Python 3.12+ incompatibility
2026-03-16 20:02:51 +01:00
Martin 77ed25306e Merge pull request #448 from guoyangzhen/fix/startup-script-integer-comparison
fix: handle empty dir_size_bytes and remove deprecated docker-compose version
2026-03-16 20:02:07 +01:00
Martin d47761a6a5 Merge pull request #447 from guoyangzhen/fix/frontend-react-scripts-not-found
fix(frontend): ensure react-scripts is available in Docker container
2026-03-16 20:01:00 +01:00
Martin e135683426 Merge pull request #444 from ximiximi423/feat/add-minimax-provider
feat: add MiniMax as new LLM provider
2026-03-16 19:57:55 +01:00
guoyangzhen 53a47be80c fix: make kokoro TTS optional 2026-03-14 17:26:21 +08:00
guoyangzhen 75ce967107 fix: make kokoro TTS optional 2026-03-14 17:26:19 +08:00
guoyangzhen 9a8ce59520 fix: handle empty dir_size_bytes and remove deprecated docker-compose version 2026-03-14 17:09:33 +08:00
guoyangzhen a97010739b fix: handle empty dir_size_bytes and remove deprecated docker-compose version 2026-03-14 17:09:31 +08:00
guoyangzhen 7066f62942 fix(frontend): ensure react-scripts is available in Docker container
Use npm ci + npm rebuild for deterministic installs. Add verification
step that catches missing react-scripts early.

Fixes #411
2026-03-14 16:41:21 +08:00
ximi fc268ed087 feat: add MiniMax as new LLM provider
Add support for MiniMax M2.5 series models via OpenAI-compatible API:
- Add minimax_fn() to Provider class with configurable base URL
- Support both international and China mainland endpoints
- Update documentation in README.md and README_CHS.md
- Add MINIMAX_API_KEY and MINIMAX_BASE_URL to .env.example
- Add unit tests for MiniMax provider

Made-with: Cursor
2026-03-06 17:10:52 +08:00
Martin 781275c881 Merge pull request #439 from Br1an67/feat/issue-108-web-form-handling
feat: add support for select, textarea, and file upload in web forms
2026-03-02 19:45:10 +01:00
Martin 2a69fbef4b Merge pull request #440 from Br1an67/feat/issue-52-add-tests
test: add unit tests for parsing functions, logger, and utility
2026-03-02 19:44:20 +01:00
Martin fa4cef0e74 Merge pull request #438 from Br1an67/fix/issue-356-auto-update-chromedriver
fix: auto-update ChromeDriver when version mismatches Chrome
2026-03-02 19:43:39 +01:00
Martin f63b2c436d Merge pull request #437 from Br1an67/fix/issue-409-json-parsing
fix: handle JSON parsing errors in planner agent
2026-03-02 19:42:42 +01:00
Martin cb6210293a Merge pull request #425 from Aquarius10th/fix-apt-get-error
Specify the base image version to fix dependency missing or version c…
2026-03-02 19:41:02 +01:00
Br1an67 165dcb8d97 test: add unit tests for parsing functions, logger, and utility
Add 34 tests across 3 test files:

- test_browser_agent_parsing.py (20 tests): expand existing tests with
  coverage for extract_links, extract_form, clean_links, parse_answer,
  select_link, jsonify_search_results, stringify_search_results, and
  select_unvisited
- test_logger.py (9 tests): Logger initialization, message writing, log
  level handling, deduplication, and folder creation
- test_utility.py (5 tests): get_color_map returns correct structure and
  color values

All tests avoid LLM requests per issue requirements.
2026-03-02 00:28:48 +08:00
Br1an67 1e827a903b feat: add support for select, textarea, and file upload in web forms
Extend form handling to support:
- <select> dropdowns: detect options, select by visible text or value
- <textarea> fields: fill with text content
- <input type="file">: upload files by absolute path
- All element types are also discovered inside shadow DOM

Changes:
- find_inputs.js: discover <select> (with options) and <textarea>
- browser.py: import Select, handle new element types in
  get_form_inputs() and fill_form_inputs()
2026-03-02 00:16:28 +08:00
Br1an67 16f7f7c917 fix: auto-update ChromeDriver when version mismatches Chrome
Add version compatibility check before using existing ChromeDriver.
When the installed ChromeDriver major version does not match Chrome,
chromedriver_autoinstaller downloads the correct version automatically
instead of failing with a version mismatch error.

Add helper functions get_chromedriver_version() and
is_chromedriver_compatible() with tests for version matching logic.
2026-03-02 00:10:23 +08:00
Br1an67 f350378170 fix: handle JSON parsing errors in planner agent
Add try-except for json.JSONDecodeError in parse_agent_tasks() to
gracefully handle malformed JSON from LLM responses (e.g. Gemini 2.5
Flash via OpenRouter). Returns empty list on parse failure, which
triggers the existing retry mechanism in make_plan().

Add test suite for parse_agent_tasks() covering valid JSON, malformed
JSON, truncated JSON, and invalid agent name cases.
2026-03-02 00:03:36 +08:00
Martin 9611bf4081 Merge pull request #436 from arikusi/add-turkish-readme
docs: add Turkish translation (README_TR.md)
2026-02-28 21:32:00 +01:00
arikusi aeb9145d6e docs: add Turkish translation (README_TR.md) 2026-02-27 01:39:42 +03:00
Frank Zhou 889545f356 Specify the base image version to fix dependency missing or version conflict issues when using apt-get.
The originally specified version 3.11-slim is only an alias representing the latest version in the 3.11.x-slim series (for example, on November 22nd, its exact version number was 3.11.14-slim). After the base image is updated, various unexpected errors may occur when executing apt-get.
2025-11-23 00:03:26 +08:00
Martin 782a933971 Merge pull request #424 from Fosowl/dev
fix: remove unavailable engine from searxng config.
2025-11-15 14:56:20 +01:00
martin 42cd21346f fix: remove unavailable engine from searxng config to avoid warnings/errors 2025-11-15 14:49:42 +01:00
Martin abc765861a Merge pull request #405 from Fosowl/dev
readme update
2025-09-14 20:15:49 +02:00
martin.legrand 141bc5f097 readme update 2025-09-14 20:15:12 +02:00
Martin 8a713e5ec0 Merge pull request #404 from Fosowl/dev
fix : update readme for correct ollama start
2025-09-14 18:23:32 +02:00
martin.legrand 176863be55 fix : listen issue of ollama 2025-09-14 18:22:18 +02:00
Martin 0decd84541 Merge pull request #403 from Fosowl/dev
Fix various ubuntu issues + CLI instructions
2025-09-13 23:50:03 +02:00
martin.legrand edc0e69a82 fix : more linux issues 2025-09-13 23:47:24 +02:00
martin.legrand 60dd8a597f update readme.md 2025-09-13 22:34:05 +02:00
martin.legrand 28d255b8e9 update readme.md 2025-09-13 20:34:27 +02:00
martin.legrand 4554c6ef89 fix command_exists issue in .sh 2025-09-13 15:00:57 +02:00
martin.legrand fd8d940e58 rm test file 2025-09-13 14:31:59 +02:00
martin.legrand 87c8a3fb09 fix: redundant searxng folder causing error on ubuntu, tts issue, bigger mount point allowed by start_services, readme updated for cli mode 2025-09-13 14:30:21 +02:00
Martin be86fd07e1 Merge pull request #402 from Fosowl/dev
fix #400
2025-09-11 23:45:58 +02:00
martin.legrand d80bda8468 fix : unseen recursion mistake on empty value for work folder 2025-09-11 23:44:06 +02:00
Martin 308ba0e595 Merge pull request #379 from Fosowl/dev
readme update
2025-07-13 12:52:03 +02:00
martin legrand f72c1b9b07 update readme 2025-07-13 12:50:15 +02:00
Martin deaf142a0d Merge pull request #373 from Fosowl/dev
Fix backend url issue
2025-07-06 00:35:29 +02:00
martin legrand e0123bfc67 fix : searnxg url 2025-07-06 00:34:36 +02:00
martin legrand fa26cce44f fix : problem with frontend connection, enfore url 2025-07-06 00:24:02 +02:00