- lm_studio_fn: use urlparse to extract port from server_address so that
addresses with an http:// prefix (e.g. http://127.0.0.1:1234, as
documented in README) no longer break the Docker URL construction.
Previously split(":")[1] returned "//127.0.0.1" instead of the port
number, producing a malformed URL.
Also fix the non-Docker path to avoid prepending http:// when the address
already includes a scheme.
- api.py: pass the computed port variable to uvicorn.run() instead of the
hardcoded literal 7777, so that BACKEND_PORT environment variable is
actually honoured when starting the server directly.
- Use urllib.parse.urlencode to properly encode the POST body, so queries
containing special characters like '&', '+', '=' are sent correctly
- Extend execution_failure_check to also detect "No search results" as a
failure, preventing the agent from silently looping when all SearXNG
engines are rate-limited and return no results
When is_local=True, the Ollama host URL previously hardcoded port 11434,
ignoring the port specified in provider_server_address in config.ini.
Users who need to run Ollama on a non-default port (e.g. because 11434
is already in use) had no way to configure this without editing source code.
Now the port is extracted from provider_server_address when present,
falling back to 11434 if only a hostname is given.
The hardcoded --remote-debugging-port=9222 caused SessionNotCreatedException
when port 9222 was already in use by another Chrome instance or process.
Replace with a dynamically allocated free port via socket binding.