hermes-bsd/tools
vominh1919 135b4c8b35 fix(mcp): decouple AnyUrl import from mcp dependency
AnyUrl was imported inside the same try block as mcp.client.auth, so
when the mcp package was not installed, AnyUrl was undefined and
_build_client_metadata raised NameError at runtime.

Moved the AnyUrl import to its own try/except block so it's available
whenever pydantic is installed (which is a core dependency), regardless
of whether the mcp SDK is present.

Also added pytest.importorskip('mcp') to the three
test_build_client_metadata tests that exercise _build_client_metadata,
since that function depends on OAuthClientMetadata from the mcp package.
2026-05-04 04:42:18 -07:00
..
browser_providers
environments fix(ci): stabilize current main test regressions 2026-04-30 06:36:50 -07:00
neutts_samples
__init__.py
ansi_strip.py
approval.py fix(approval): extend sensitive write target to cover shell RC and credential files 2026-05-03 08:49:13 -07:00
binary_extensions.py
browser_camofox.py refactor(config): add cfg_get() helper; migrate 20 nested-get call sites (#17304) 2026-04-28 23:17:39 -07:00
browser_camofox_state.py
browser_cdp_tool.py
browser_dialog_tool.py
browser_supervisor.py fix(browser_supervisor): verify thread and loop health before returning cached supervisor 2026-04-30 20:33:33 -07:00
browser_tool.py fix(browser): allow CDP override to pass requirement checks 2026-05-04 03:12:30 -07:00
budget_config.py
checkpoint_manager.py
clarify_tool.py
code_execution_tool.py fix(tools): serialize concurrent hermes_tools RPC calls from execute_code 2026-04-30 03:31:16 -07:00
credential_files.py refactor(config): add cfg_get() helper; migrate 20 nested-get call sites (#17304) 2026-04-28 23:17:39 -07:00
cronjob_tools.py fix(cronjob): treat bare 'custom' provider as unspecified in override 2026-05-04 03:11:11 -07:00
debug_helpers.py
delegate_tool.py fix(delegate): guard _load_config() against delegation: null in config.yaml 2026-05-04 03:09:59 -07:00
discord_tool.py fix(discord_tool): key capability cache by token instead of single global 2026-04-30 20:37:12 -07:00
env_passthrough.py refactor(config): add cfg_get() helper; migrate 20 nested-get call sites (#17304) 2026-04-28 23:17:39 -07:00
feishu_doc_tool.py
feishu_drive_tool.py
file_operations.py fix(file): strip leaked terminal fences from reads 2026-05-03 16:58:50 -07:00
file_state.py
file_tools.py fix(file-tools): cap read_file result size to prevent context window overflow 2026-05-04 03:14:59 -07:00
fuzzy_match.py
homeassistant_tool.py
image_generation_tool.py
interrupt.py
kanban_tools.py fix: allow kanban tools for orchestrator profiles with kanban toolset 2026-05-04 02:00:42 -07:00
managed_tool_gateway.py
mcp_oauth.py fix(mcp): decouple AnyUrl import from mcp dependency 2026-05-04 04:42:18 -07:00
mcp_oauth_manager.py
mcp_tool.py fix(mcp): reconnect on terminated sessions 2026-05-03 15:23:33 -07:00
memory_tool.py
mixture_of_agents_tool.py
neutts_synth.py
openrouter_client.py
osv_check.py
patch_parser.py
path_security.py
process_registry.py fix(process): reconcile session.exited against real child exit in poll/wait (#17430) 2026-04-29 04:59:21 -07:00
registry.py perf(tools): memoize get_tool_definitions + TTL-cache check_fn results (#17098) 2026-04-28 18:20:17 -07:00
rl_training_tool.py
schema_sanitizer.py
send_message_tool.py fix(email): add required Date header to send_message_tool._send_email 2026-05-04 02:48:20 -07:00
session_search_tool.py Clarify session_search auxiliary model docs 2026-05-04 01:42:07 -07:00
skill_manager_tool.py fix(curator): only mark agent-created for background-review sediment (#19621) 2026-05-04 02:42:16 -07:00
skill_provenance.py fix(curator): only mark agent-created for background-review sediment (#19621) 2026-05-04 02:42:16 -07:00
skill_usage.py fix(skills): keep manual skills out of curator 2026-05-04 02:19:28 -07:00
skills_guard.py
skills_hub.py skills-hub: hash binary skill bundle files correctly 2026-05-04 01:28:12 -07:00
skills_sync.py
skills_tool.py fix(skills): also bump_use on skill_view tool invocation 2026-04-30 05:07:34 -07:00
slash_confirm.py feat(gateway,cli): confirm /reload-mcp to warn about prompt cache invalidation 2026-04-29 21:56:47 -07:00
terminal_tool.py fix(terminal): skip sudo prompt when local NOPASSWD sudo works 2026-04-30 20:38:09 -07:00
tirith_security.py
todo_tool.py
tool_backend_helpers.py
tool_output_limits.py
tool_result_storage.py
transcription_tools.py fix(ci): stabilize main test suite regressions (#17660) 2026-04-29 23:18:55 -07:00
tts_tool.py feat(tts): add Piper as a native local TTS provider (closes #8508) (#17885) 2026-04-30 02:53:20 -07:00
url_safety.py
vision_tools.py fix(vision): guard user_prompt type in video_analyze_tool before debug_call_data construction 2026-05-03 15:28:04 -07:00
voice_mode.py
web_tools.py perf(tools): memoize get_tool_definitions + TTL-cache check_fn results (#17098) 2026-04-28 18:20:17 -07:00
website_policy.py
xai_http.py
yuanbao_tools.py