[hermes debug share: log content redacted at upload time. run with --no-redact to disable]
--- hermes dump ---
version: 0.18.0 [42bc07d1] (2026-07-03)
os: Linux 6.8.0-134-generic x86_64
python: 3.11.14
openai_sdk: 2.24.0
profile: default
hermes_home: ~/.hermes
model: deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
provider: llama-cpp
terminal: local
api_keys:
openrouter set
openai not set
anthropic not set
anthropic_token not set
nous not set
google/gemini not set
gemini not set
glm/zai not set
zai not set
kimi not set
minimax not set
deepseek not set
dashscope not set
huggingface not set
nvidia set
opencode_zen not set
opencode_go not set
kilocode not set
firecrawl not set
tavily set
browserbase not set
fal not set
elevenlabs not set
github not set
features:
toolsets: hermes-cli
mcp_servers: 0
memory_provider: built-in
gateway: stopped (systemd (user))
platforms: none
cron_jobs: 0
skills: 102
--- end dump ---
--- agent.log (last 200 lines) ---
2026-07-03 08:44:21,025 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 08:44:21,025 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 08:44:21,316 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 08:44:21,316 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 08:44:21,326 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 08:44:21,327 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 08:44:21,330 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 08:44:21,384 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 08:44:21,385 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 08:44:24,544 INFO run_agent: Loaded environment variables from /home/dev/.hermes/.env
2026-07-03 08:44:24,545 INFO run_agent: Loaded environment variables from /home/dev/Python/HermesAgent/hermes-agent/.env
2026-07-03 08:44:25,027 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 08:44:25,027 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 08:44:25,258 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 08:44:25,259 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 08:44:25,262 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 08:44:25,264 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 08:44:25,267 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 08:44:25,323 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 08:44:25,323 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 08:44:25,737 INFO run_agent: OpenAI client created (agent_init, shared=True) thread=Thread-5 (_build):137433500866240 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:44:25,739 WARNING tools.registry: check_fn check_browser_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,740 WARNING tools.registry: check_fn _browser_cdp_check returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,741 WARNING tools.registry: check_fn _browser_dialog_check returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,743 WARNING tools.registry: check_fn check_browser_vision_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,743 WARNING tools.registry: check_fn check_close_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,780 WARNING tools.registry: check_fn _check_kanban_mode returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,781 WARNING tools.registry: check_fn _check_kanban_orchestrator_mode returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,781 WARNING tools.registry: check_fn check_read_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,878 INFO agent.auxiliary_client: Vision auto-detect: using main provider llama-cpp (deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M)
2026-07-03 08:45:29,056 INFO [20260703_084424_595704] agent.turn_context: conversation turn: session=20260703_084424_595704 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M provider=custom platform=tui history=0 msg='donne le contenu de la page https://zonetuto.fr'
2026-07-03 08:45:29,758 WARNING [20260703_084424_595704] agent.prompt_builder: ⚠️ Context file AGENTS.md TRUNCATED: 70678 chars exceeds limit of 62914 — trim the file, pin a larger context_file_max_chars, or use a larger-context model!
2026-07-03 08:45:29,830 INFO [20260703_084424_595704] hermes_plugins.observability__langfuse: Langfuse tracing: started trace dd4ce308b314913fa2a397cc00b13b07 for task:20260703_084424_595704:turn:20260703_084424_595704:20260703_084424_595704:3834b4f1
2026-07-03 08:45:29,841 INFO run_agent: OpenAI client created (chat_completion_stream_request, shared=False) thread=Thread-14 (_call):137432477447872 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:46:43,407 INFO run_agent: OpenAI client closed (stream_request_complete, shared=False, tcp_force_closed=0) thread=Thread-14 (_call):137432477447872 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:46:43,408 INFO [20260703_084424_595704] agent.conversation_loop: API call #1: model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M provider=custom in=32988 out=74 total=33062 latency=73.6s
2026-07-03 08:46:43,427 INFO [20260703_084424_595704] tools.web_tools: Extracting content from 1 URL(s)
2026-07-03 08:46:43,466 INFO [20260703_084424_595704] tools.web_tools: Web extract via tavily: 1 URL(s)
2026-07-03 08:46:43,466 INFO plugins.web.tavily.provider: Tavily extract: 1 URL(s)
2026-07-03 08:46:43,466 INFO plugins.web.tavily.provider: Tavily extract request to https://api.tavily.com/extract
2026-07-03 08:46:43,992 INFO [20260703_084424_595704] tools.web_tools: Extracted content from 1 pages
2026-07-03 08:46:43,994 INFO [20260703_084424_595704] tools.web_tools: https://zonetuto.fr (9524 chars, whole)
2026-07-03 08:46:43,995 INFO [20260703_084424_595704] agent.tool_executor: tool web_extract completed (0.57s, 9789 chars)
2026-07-03 08:46:44,015 INFO run_agent: OpenAI client created (chat_completion_stream_request, shared=False) thread=Thread-15 (_call):137432469055168 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:47:05,803 INFO run_agent: OpenAI client closed (stream_request_complete, shared=False, tcp_force_closed=0) thread=Thread-15 (_call):137432469055168 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:47:05,804 INFO [20260703_084424_595704] agent.conversation_loop: API call #2: model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M provider=custom in=36033 out=1364 total=37397 latency=21.8s cache=32965/36033 (91%)
2026-07-03 08:47:05,944 INFO [20260703_084424_595704] agent.conversation_loop: Turn ended: reason=text_response(finish_reason=stop) model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M api_calls=2/90 budget=2/90 tool_turns=1 last_msg_role=assistant response_len=3987 session=20260703_084424_595704
2026-07-03 08:47:05,964 INFO agent.auxiliary_client: Auxiliary title_generation: using custom (deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M) at http://192.168.1.42:1234/v1/
2026-07-03 08:47:05,966 INFO agent.auxiliary_client: Auxiliary title_generation: transient transport error; retrying once on the same provider before fallback: Connection error.
2026-07-03 08:47:05,968 INFO agent.auxiliary_client: Auxiliary title_generation: connection error on custom (Connection error.), trying fallback
2026-07-03 08:47:05,970 WARNING agent.auxiliary_client: Auxiliary title_generation: connection error on custom and all fallbacks exhausted (fallback_chain + main agent model). Raising original error.
2026-07-03 08:47:05,970 WARNING agent.title_generator: Title generation failed: Connection error.
2026-07-03 08:47:39,851 INFO run_agent: OpenAI client closed (agent_close, shared=True, tcp_force_closed=0) thread=MainThread:137433645086528 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:57:03,492 INFO hermes_cli.backup: State snapshot created: 20260703-065703-pre-update (9 files)
2026-07-03 08:57:07,401 INFO tools.lazy_deps: Lazy-installing google-auth==2.55.1 for feature 'provider.vertex'
2026-07-03 08:57:07,966 INFO tools.lazy_deps: Lazy install complete for feature 'provider.vertex'
2026-07-03 08:57:07,980 INFO tools.lazy_deps: Lazy-installing mautrix[encryption]==0.21.0 aiosqlite==0.22.1 asyncpg==0.31.0 aiohttp-socks==0.11.0 for feature 'platform.matrix'
2026-07-03 08:57:08,637 INFO tools.lazy_deps: Lazy install complete for feature 'platform.matrix'
2026-07-03 09:03:13,085 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 09:03:13,085 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 09:03:13,457 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 09:03:13,479 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 09:03:13,489 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 09:03:13,491 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 09:03:13,494 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 09:03:13,528 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 09:03:13,528 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 09:03:18,748 INFO run_agent: Loaded environment variables from /home/dev/.hermes/.env
2026-07-03 09:03:18,748 INFO run_agent: Loaded environment variables from /home/dev/Python/HermesAgent/hermes-agent/.env
2026-07-03 09:03:19,508 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 09:03:19,508 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 09:03:19,741 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 09:03:19,741 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 09:03:19,745 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 09:03:19,746 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 09:03:19,749 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 09:03:19,805 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 09:03:19,805 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 09:03:20,410 INFO run_agent: OpenAI client created (agent_init, shared=True) thread=Thread-5 (_build):136183920182976 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 09:03:20,412 WARNING tools.registry: check_fn check_browser_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,413 WARNING tools.registry: check_fn _browser_cdp_check returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,414 WARNING tools.registry: check_fn _browser_dialog_check returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,415 WARNING tools.registry: check_fn check_browser_vision_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,415 WARNING tools.registry: check_fn check_close_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,556 WARNING tools.registry: check_fn _check_kanban_mode returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,558 WARNING tools.registry: check_fn _check_kanban_orchestrator_mode returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,558 WARNING tools.registry: check_fn check_read_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,694 INFO agent.auxiliary_client: Vision auto-detect: using main provider llama-cpp (deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M)
--- errors.log (last 100 lines) ---
2026-07-03 08:44:25,739 WARNING tools.registry: check_fn check_browser_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,740 WARNING tools.registry: check_fn _browser_cdp_check returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,741 WARNING tools.registry: check_fn _browser_dialog_check returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,743 WARNING tools.registry: check_fn check_browser_vision_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,743 WARNING tools.registry: check_fn check_close_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,780 WARNING tools.registry: check_fn _check_kanban_mode returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,781 WARNING tools.registry: check_fn _check_kanban_orchestrator_mode returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,781 WARNING tools.registry: check_fn check_read_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:45:29,758 WARNING [20260703_084424_595704] agent.prompt_builder: ⚠️ Context file AGENTS.md TRUNCATED: 70678 chars exceeds limit of 62914 — trim the file, pin a larger context_file_max_chars, or use a larger-context model!
2026-07-03 08:47:05,970 WARNING agent.auxiliary_client: Auxiliary title_generation: connection error on custom and all fallbacks exhausted (fallback_chain + main agent model). Raising original error.
2026-07-03 08:47:05,970 WARNING agent.title_generator: Title generation failed: Connection error.
2026-07-03 09:03:20,412 WARNING tools.registry: check_fn check_browser_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,413 WARNING tools.registry: check_fn _browser_cdp_check returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,414 WARNING tools.registry: check_fn _browser_dialog_check returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,415 WARNING tools.registry: check_fn check_browser_vision_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,415 WARNING tools.registry: check_fn check_close_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,556 WARNING tools.registry: check_fn _check_kanban_mode returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,558 WARNING tools.registry: check_fn _check_kanban_orchestrator_mode returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,558 WARNING tools.registry: check_fn check_read_terminal_requirements returned False; dependent tools will be unavailable this turn
--- gateway.log (last 100 lines) ---
(file not found)
--- gui.log (last 100 lines) ---
(file not found)
--- desktop.log (last 100 lines) ---
(file not found)
============================================================
FULL agent.log
============================================================
[hermes debug share: log content redacted at upload time. run with --no-redact to disable]
--- hermes dump ---
version: 0.18.0 [42bc07d1] (2026-07-03)
os: Linux 6.8.0-134-generic x86_64
python: 3.11.14
openai_sdk: 2.24.0
profile: default
hermes_home: ~/.hermes
model: deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
provider: llama-cpp
terminal: local
api_keys:
openrouter set
openai not set
anthropic not set
anthropic_token not set
nous not set
google/gemini not set
gemini not set
glm/zai not set
zai not set
kimi not set
minimax not set
deepseek not set
dashscope not set
huggingface not set
nvidia set
opencode_zen not set
opencode_go not set
kilocode not set
firecrawl not set
tavily set
browserbase not set
fal not set
elevenlabs not set
github not set
features:
toolsets: hermes-cli
mcp_servers: 0
memory_provider: built-in
gateway: stopped (systemd (user))
platforms: none
cron_jobs: 0
skills: 102
--- end dump ---
--- full agent.log ---
2026-07-03 08:44:21,025 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 08:44:21,025 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 08:44:21,316 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 08:44:21,316 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 08:44:21,326 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 08:44:21,327 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 08:44:21,330 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 08:44:21,384 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 08:44:21,385 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 08:44:24,544 INFO run_agent: Loaded environment variables from /home/dev/.hermes/.env
2026-07-03 08:44:24,545 INFO run_agent: Loaded environment variables from /home/dev/Python/HermesAgent/hermes-agent/.env
2026-07-03 08:44:25,027 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 08:44:25,027 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 08:44:25,258 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 08:44:25,259 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 08:44:25,262 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 08:44:25,264 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 08:44:25,267 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 08:44:25,323 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 08:44:25,323 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 08:44:25,737 INFO run_agent: OpenAI client created (agent_init, shared=True) thread=Thread-5 (_build):137433500866240 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:44:25,739 WARNING tools.registry: check_fn check_browser_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,740 WARNING tools.registry: check_fn _browser_cdp_check returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,741 WARNING tools.registry: check_fn _browser_dialog_check returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,743 WARNING tools.registry: check_fn check_browser_vision_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,743 WARNING tools.registry: check_fn check_close_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,780 WARNING tools.registry: check_fn _check_kanban_mode returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,781 WARNING tools.registry: check_fn _check_kanban_orchestrator_mode returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,781 WARNING tools.registry: check_fn check_read_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 08:44:25,878 INFO agent.auxiliary_client: Vision auto-detect: using main provider llama-cpp (deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M)
2026-07-03 08:45:29,056 INFO [20260703_084424_595704] agent.turn_context: conversation turn: session=20260703_084424_595704 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M provider=custom platform=tui history=0 msg='donne le contenu de la page https://zonetuto.fr'
2026-07-03 08:45:29,758 WARNING [20260703_084424_595704] agent.prompt_builder: ⚠️ Context file AGENTS.md TRUNCATED: 70678 chars exceeds limit of 62914 — trim the file, pin a larger context_file_max_chars, or use a larger-context model!
2026-07-03 08:45:29,830 INFO [20260703_084424_595704] hermes_plugins.observability__langfuse: Langfuse tracing: started trace dd4ce308b314913fa2a397cc00b13b07 for task:20260703_084424_595704:turn:20260703_084424_595704:20260703_084424_595704:3834b4f1
2026-07-03 08:45:29,841 INFO run_agent: OpenAI client created (chat_completion_stream_request, shared=False) thread=Thread-14 (_call):137432477447872 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:46:43,407 INFO run_agent: OpenAI client closed (stream_request_complete, shared=False, tcp_force_closed=0) thread=Thread-14 (_call):137432477447872 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:46:43,408 INFO [20260703_084424_595704] agent.conversation_loop: API call #1: model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M provider=custom in=32988 out=74 total=33062 latency=73.6s
2026-07-03 08:46:43,427 INFO [20260703_084424_595704] tools.web_tools: Extracting content from 1 URL(s)
2026-07-03 08:46:43,466 INFO [20260703_084424_595704] tools.web_tools: Web extract via tavily: 1 URL(s)
2026-07-03 08:46:43,466 INFO plugins.web.tavily.provider: Tavily extract: 1 URL(s)
2026-07-03 08:46:43,466 INFO plugins.web.tavily.provider: Tavily extract request to https://api.tavily.com/extract
2026-07-03 08:46:43,992 INFO [20260703_084424_595704] tools.web_tools: Extracted content from 1 pages
2026-07-03 08:46:43,994 INFO [20260703_084424_595704] tools.web_tools: https://zonetuto.fr (9524 chars, whole)
2026-07-03 08:46:43,995 INFO [20260703_084424_595704] agent.tool_executor: tool web_extract completed (0.57s, 9789 chars)
2026-07-03 08:46:44,015 INFO run_agent: OpenAI client created (chat_completion_stream_request, shared=False) thread=Thread-15 (_call):137432469055168 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:47:05,803 INFO run_agent: OpenAI client closed (stream_request_complete, shared=False, tcp_force_closed=0) thread=Thread-15 (_call):137432469055168 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:47:05,804 INFO [20260703_084424_595704] agent.conversation_loop: API call #2: model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M provider=custom in=36033 out=1364 total=37397 latency=21.8s cache=32965/36033 (91%)
2026-07-03 08:47:05,944 INFO [20260703_084424_595704] agent.conversation_loop: Turn ended: reason=text_response(finish_reason=stop) model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M api_calls=2/90 budget=2/90 tool_turns=1 last_msg_role=assistant response_len=3987 session=20260703_084424_595704
2026-07-03 08:47:05,964 INFO agent.auxiliary_client: Auxiliary title_generation: using custom (deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M) at http://192.168.1.42:1234/v1/
2026-07-03 08:47:05,966 INFO agent.auxiliary_client: Auxiliary title_generation: transient transport error; retrying once on the same provider before fallback: Connection error.
2026-07-03 08:47:05,968 INFO agent.auxiliary_client: Auxiliary title_generation: connection error on custom (Connection error.), trying fallback
2026-07-03 08:47:05,970 WARNING agent.auxiliary_client: Auxiliary title_generation: connection error on custom and all fallbacks exhausted (fallback_chain + main agent model). Raising original error.
2026-07-03 08:47:05,970 WARNING agent.title_generator: Title generation failed: Connection error.
2026-07-03 08:47:39,851 INFO run_agent: OpenAI client closed (agent_close, shared=True, tcp_force_closed=0) thread=MainThread:137433645086528 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 08:57:03,492 INFO hermes_cli.backup: State snapshot created: 20260703-065703-pre-update (9 files)
2026-07-03 08:57:07,401 INFO tools.lazy_deps: Lazy-installing google-auth==2.55.1 for feature 'provider.vertex'
2026-07-03 08:57:07,966 INFO tools.lazy_deps: Lazy install complete for feature 'provider.vertex'
2026-07-03 08:57:07,980 INFO tools.lazy_deps: Lazy-installing mautrix[encryption]==0.21.0 aiosqlite==0.22.1 asyncpg==0.31.0 aiohttp-socks==0.11.0 for feature 'platform.matrix'
2026-07-03 08:57:08,637 INFO tools.lazy_deps: Lazy install complete for feature 'platform.matrix'
2026-07-03 09:03:13,085 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 09:03:13,085 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 09:03:13,457 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 09:03:13,479 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 09:03:13,489 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 09:03:13,491 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 09:03:13,494 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 09:03:13,528 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 09:03:13,528 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 09:03:18,748 INFO run_agent: Loaded environment variables from /home/dev/.hermes/.env
2026-07-03 09:03:18,748 INFO run_agent: Loaded environment variables from /home/dev/Python/HermesAgent/hermes-agent/.env
2026-07-03 09:03:19,508 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: openrouter
2026-07-03 09:03:19,508 INFO hermes_cli.plugins: Plugin 'openrouter' registered image_gen provider: nous
2026-07-03 09:03:19,741 INFO hermes_cli.plugins: Plugin 'web-exa' registered web provider: exa
2026-07-03 09:03:19,741 INFO hermes_cli.plugins: Plugin 'web-tavily' registered web provider: tavily
2026-07-03 09:03:19,745 INFO hermes_plugins.get_serp_data: DataForSEO SERP plugin registered
2026-07-03 09:03:19,746 INFO hermes_plugins.research_serp: research_serp plugin registered
2026-07-03 09:03:19,749 INFO hermes_plugins.weather: Chaining-ready weather plugin registered
2026-07-03 09:03:19,805 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune
2026-07-03 09:03:19,805 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled
2026-07-03 09:03:20,410 INFO run_agent: OpenAI client created (agent_init, shared=True) thread=Thread-5 (_build):136183920182976 provider=custom base_url=http://192.168.1.42:18080/v1 model=deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M
2026-07-03 09:03:20,412 WARNING tools.registry: check_fn check_browser_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,413 WARNING tools.registry: check_fn _browser_cdp_check returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,414 WARNING tools.registry: check_fn _browser_dialog_check returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,415 WARNING tools.registry: check_fn check_browser_vision_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,415 WARNING tools.registry: check_fn check_close_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,556 WARNING tools.registry: check_fn _check_kanban_mode returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,558 WARNING tools.registry: check_fn _check_kanban_orchestrator_mode returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,558 WARNING tools.registry: check_fn check_read_terminal_requirements returned False; dependent tools will be unavailable this turn
2026-07-03 09:03:20,694 INFO agent.auxiliary_client: Vision auto-detect: using main provider llama-cpp (deepreinforce-ai/Ornith-1.0-35B-GGUF:Q4_K_M)
Bug Description
Setting
web.extract_backendto the name of a provider that was registered by a plugin (as opposed to one of the built-in backends) is silently ignored.web_extract()ends up dispatching to a different, auto-detected backend instead of surfacing an error or honoring the configured plugin.Impact: Any web-extract or web-search plugin that introduces a new provider name (not in the hardcoded list in
_is_backend_available()/_get_backend()) cannot be selected viaweb.extract_backend/web.search_backend/web.backend— the config is silently overridden by whatever backend auto-detection happens to pick, with no error or warning to the user.Steps to Reproduce
.hermes/plugins/web/pageprune/withplugin.yamldeclaring:.hermes/config.yaml:TAVILY_API_KEY).web_extract)..hermes/logs/agent.log.Expected Behavior
web_extract()should dispatch the URL extraction through thepagepruneprovider, as explicitly configured inweb.extract_backend.Actual Behavior
Plugin discovery correctly finds and registers the plugin:
But
web_extractdispatches totavilyinstead ofpageprune:TAVILY_API_KEYhappens to be set in the environment, which is whytavilyis chosen — with no key set, a similarly wrong (but different) backend would be picked instead. Either way, the explicitextract_backend: pageprunesetting is never honored, and no warning or error is surfaced to the user.Affected Component
Tools (terminal, file ops, web, code execution, etc.)
Messaging Platform (if gateway-related)
No response
Debug Report
Operating System
Ubuntu 24.04.4 LTS (kernel 6.8.0-134-generic, x86_64)
Python Version
3.11.14
Hermes Version
0.18.0
Additional Logs / Traceback (optional)
2026-07-03 08:44:21,384 INFO hermes_cli.plugins: Plugin 'web-pageprune' registered web provider: pageprune 2026-07-03 08:44:21,385 INFO hermes_cli.plugins: Plugin discovery complete: 55 found, 31 enabled ... 2026-07-03 08:46:43,427 INFO [20260703_084424_595704] tools.web_tools: Extracting content from 1 URL(s) 2026-07-03 08:46:43,466 INFO [20260703_084424_595704] tools.web_tools: Web extract via tavily: 1 URL(s) 2026-07-03 08:46:43,466 INFO plugins.web.tavily.provider: Tavily extract: 1 URL(s) 2026-07-03 08:46:43,466 INFO plugins.web.tavily.provider: Tavily extract request to https://api.tavily.com/extract 2026-07-03 08:46:43,995 INFO [20260703_084424_595704] agent.tool_executor: tool web_extract completed (0.57s, 9789 chars)Root Cause Analysis (optional)
tools/web_tools.pystill resolves the extract backend through a legacy helper chain that predates the plugin-based provider registry, and that chain uses a hardcoded backend allow-list that doesn't include plugin-provided names:web_extract()callsbackend = _get_extract_backend()at tools/web_tools.py:709_get_extract_backend()→_get_capability_backend("extract")→ checks_is_backend_available(specific)at tools/web_tools.py:199-209_is_backend_available()only recognizes a fixed set of names —exa,parallel,firecrawl,tavily,searxng,brave-free,ddgs,xai— and returnsFalsefor anything else, includingpageprune(tools/web_tools.py:212-238)"pageprune"fails that check,_get_capability_backenddiscards it and falls through to_get_backend()(tools/web_tools.py:139-171), which readsweb.backend(empty here) and then auto-detects from env vars, landing ontavilybecauseTAVILY_API_KEYis set.web_extract()(tools/web_tools.py:724),provider = _wsp_get_provider(backend)now looks up"tavily"(not"pageprune") in the registry, finds it, and uses it directly — the correct, plugin-aware fallbackget_active_extract_provider()(agent/web_search_registry.py:232) is only reached if the registry lookup forbackendfails, which doesn't happen here sincetavilyis a valid, registered provider.Notably,
agent/web_search_registry.pyalready implements the correct resolution logic and is plugin-aware:get_active_extract_provider()/_resolve()(agent/web_search_registry.py:133-219) explicitly documents "explicit config wins, ignoring availability" and works against the live_providersregistry rather than a hardcoded list. The bug is thatweb_extract()/web_search()consult the old_get_extract_backend()/_get_search_backend()first and only fall back to the correct resolver as an afterthought.The same bug affects
web_search()via_get_search_backend()at tools/web_tools.py:571 for any plugin-registered search provider not in the hardcoded allow-list.Proposed Fix (optional)
In
web_search()andweb_extract(), resolve the active provider directly via the registry (get_active_search_provider()/get_active_extract_provider()) instead of first computing a backend name through_get_search_backend()/_get_extract_backend()and looking it up by name. The registry resolver already implements the desired precedence (explicit per-capability config → sharedweb.backend→ single eligible provider → legacy preference order) and is aware of plugin-registered providers, so this removes the need to keep a hardcoded backend allow-list in sync with every provider plugin that can be installed.Are you willing to submit a PR for this?