| .. |
|
__init__.py
|
|
|
|
conftest.py
|
|
|
|
test_ai_gateway_models.py
|
|
|
|
test_anthropic_model_flow_stale_oauth.py
|
|
|
|
test_anthropic_oauth_flow.py
|
|
|
|
test_anthropic_provider_persistence.py
|
|
|
|
test_api_key_providers.py
|
|
|
|
test_apply_model_switch_result_context.py
|
|
|
|
test_apply_profile_override.py
|
fix(profiles): honour active_profile when HERMES_HOME points to hermes root
|
2026-05-09 11:10:53 -07:00 |
|
test_arcee_provider.py
|
feat(providers): add tencent-tokenhub provider support
|
2026-04-28 03:45:52 -07:00 |
|
test_argparse_flag_propagation.py
|
|
|
|
test_at_context_completion_filter.py
|
|
|
|
test_atomic_json_write.py
|
|
|
|
test_atomic_yaml_write.py
|
|
|
|
test_auth_codex_provider.py
|
|
|
|
test_auth_commands.py
|
Switch to JWT token for inference against Nous, falling back to old opaque token on failure.
|
2026-05-17 16:56:37 -07:00 |
|
test_auth_loopback_ssh_hint.py
|
fix(auth): improve xAI OAuth SSH hint with visual header and auto-detected host
|
2026-05-18 10:26:55 -07:00 |
|
test_auth_manual_paste.py
|
|
|
|
test_auth_nous_provider.py
|
|
|
|
test_auth_profile_fallback.py
|
fix(auth): fall back to global-root auth.json for providers missing in profile
|
2026-05-06 13:29:54 -07:00 |
|
test_auth_provider_gate.py
|
|
|
|
test_auth_qwen_provider.py
|
|
|
|
test_auth_ssl_macos.py
|
fix(auth): honor SSL CA env vars across httpx + requests callsites
|
2026-04-24 03:00:33 -07:00 |
|
test_auth_toctou_file_modes.py
|
test: migrate stale os.kill monkeypatches to gateway.status._pid_exists
|
2026-05-08 14:27:40 -07:00 |
|
test_auth_xai_oauth_provider.py
|
|
|
|
test_aux_config.py
|
|
|
|
test_azure_detect.py
|
feat(azure-foundry): add Microsoft Entra ID auth
|
2026-05-18 10:14:38 -07:00 |
|
test_azure_foundry_entra.py
|
|
|
|
test_backup.py
|
|
|
|
test_banner_git_state.py
|
|
|
|
test_banner_pip_update.py
|
|
|
|
test_banner_skills.py
|
fix: disabled skills respected across banner, system prompt, slash commands, and skill_view (#1897)
|
2026-03-18 03:17:37 -07:00 |
|
test_banner.py
|
feat(banner): hyperlink startup banner title to latest GitHub release (#14945)
|
2026-04-23 23:28:34 -07:00 |
|
test_bedrock_model_picker.py
|
|
|
|
test_chat_skills_flag.py
|
|
|
|
test_claw.py
|
fix(ci): stabilize main test suite regressions (#17660)
|
2026-04-29 23:18:55 -07:00 |
|
test_clear_stale_base_url.py
|
fix: warn and clear stale OPENAI_BASE_URL on provider switch (#5161)
|
2026-04-11 01:52:58 -07:00 |
|
test_cmd_update.py
|
|
|
|
test_coalesce_session_args.py
|
fix(cli): handle unquoted multi-word session names in -c/--continue and -r/--resume
|
2026-03-09 21:36:29 -07:00 |
|
test_codex_cli_model_picker.py
|
test(codex-spark): add live-API regression and make picker test deterministic
|
2026-05-09 23:17:25 -07:00 |
|
test_codex_models.py
|
test(codex-spark): add live-API regression and make picker test deterministic
|
2026-05-09 23:17:25 -07:00 |
|
test_codex_runtime_plugin_migration.py
|
|
|
|
test_codex_runtime_switch.py
|
|
|
|
test_commands.py
|
|
|
|
test_completion.py
|
|
|
|
test_config_drift.py
|
feat(delegate): orchestrator role and configurable spawn depth (default flat)
|
2026-04-21 14:23:45 -07:00 |
|
test_config_env_expansion.py
|
|
|
|
test_config_env_refs.py
|
fix(config): preserve env refs when save_config rewrites config (#11892)
|
2026-04-17 19:03:26 -07:00 |
|
test_config_validation.py
|
|
|
|
test_config.py
|
fix(config): warn loudly on YAML parse failure instead of silent default fallback (#23585)
|
2026-05-10 22:36:19 -07:00 |
|
test_container_aware_cli.py
|
|
|
|
test_copilot_auth.py
|
|
|
|
test_copilot_catalog_oauth_fallback.py
|
|
|
|
test_copilot_context.py
|
|
|
|
test_copilot_in_model_list.py
|
fix(model): repair Discord Copilot /model flow
|
2026-04-24 03:33:29 -07:00 |
|
test_copilot_token_exchange.py
|
|
|
|
test_cron.py
|
|
|
|
test_curator_archive_prune.py
|
feat(curator): add archive and prune subcommands (#20200)
|
2026-05-05 05:15:54 -07:00 |
|
test_curator_recent_run_notice.py
|
|
|
|
test_curator_run.py
|
|
|
|
test_curator_status.py
|
fix(curator): make manual runs synchronous
|
2026-05-07 05:27:47 -07:00 |
|
test_custom_provider_context_length.py
|
|
|
|
test_custom_provider_model_switch.py
|
|
|
|
test_dashboard_browser_safe_imports.py
|
|
|
|
test_dashboard_lifecycle_flags.py
|
|
|
|
test_dashboard_profiles_nav_label.py
|
|
|
|
test_debug.py
|
feat(security): enable secret redaction by default (#17691, #20785) (#21193)
|
2026-05-07 05:10:33 -07:00 |
|
test_dep_ensure.py
|
|
|
|
test_deprecated_cwd_warning.py
|
fix: enforce config.yaml as sole CWD source + deprecate .env CWD vars + add hermes memory reset (#11029)
|
2026-04-16 06:48:33 -07:00 |
|
test_destructive_slash_confirm_gate.py
|
|
|
|
test_detect_api_mode_for_url.py
|
|
|
|
test_determine_api_mode_hostname.py
|
|
|
|
test_dingtalk_auth.py
|
test(dingtalk): cover QR device-flow auth + OpenClaw branding disclosure
|
2026-04-17 05:08:07 -07:00 |
|
test_discord_skill_clamp_warning.py
|
|
|
|
test_doctor_command_install.py
|
|
|
|
test_doctor_dedicated_provider_skip.py
|
|
|
|
test_doctor.py
|
fix(doctor): flag missing credentials for active openrouter provider
|
2026-05-17 11:53:04 -07:00 |
|
test_env_load_cache.py
|
perf(tools): cache get_nous_auth_status() and load_env() to fix slow hermes tools menus (#25341)
|
2026-05-13 18:40:14 -07:00 |
|
test_env_loader.py
|
|
|
|
test_env_sanitize_on_load.py
|
clarify placeholder telegram credential in tests
|
2026-05-04 15:31:15 -04:00 |
|
test_fallback_cmd.py
|
feat(cli): add 'hermes fallback' command to manage fallback providers (#16052)
|
2026-04-26 06:19:04 -07:00 |
|
test_gateway_linger.py
|
|
|
|
test_gateway_platform_gating.py
|
|
|
|
test_gateway_proc_fallback.py
|
fix(gateway): detect gateway process via /proc in Docker without procps
|
2026-05-09 17:54:17 -07:00 |
|
test_gateway_runtime_health.py
|
fix(gateway): harden Telegram polling conflict handling
|
2026-03-14 12:11:23 -07:00 |
|
test_gateway_service_paths.py
|
|
|
|
test_gateway_service.py
|
|
|
|
test_gateway_wsl.py
|
|
|
|
test_gateway.py
|
|
|
|
test_gemini_free_tier_setup_block.py
|
|
|
|
test_gemini_provider.py
|
|
|
|
test_gmi_provider.py
|
refactor(gmi): move User-Agent to profile.default_headers
|
2026-05-08 03:22:11 -07:00 |
|
test_goals.py
|
|
|
|
test_hooks_cli.py
|
|
|
|
test_ignore_user_config_flags.py
|
|
|
|
test_image_gen_picker.py
|
|
|
|
test_install_cua_driver.py
|
|
|
|
test_inventory.py
|
|
|
|
test_kanban_boards.py
|
|
|
|
test_kanban_cli.py
|
|
|
|
test_kanban_core_functionality.py
|
|
|
|
test_kanban_db_init.py
|
fix(kanban): serialize DB initialization
|
2026-05-18 20:17:48 -07:00 |
|
test_kanban_db.py
|
|
|
|
test_kanban_decompose_db.py
|
|
|
|
test_kanban_decompose.py
|
|
|
|
test_kanban_diagnostics.py
|
|
|
|
test_kanban_notify.py
|
feat(gateway): deliverable mode — ship artifacts as native uploads from any agent surface (#27813)
|
2026-05-18 02:14:43 -07:00 |
|
test_kanban_specify_db.py
|
|
|
|
test_kanban_specify.py
|
|
|
|
test_launcher.py
|
|
|
|
test_list_picker_providers.py
|
fix(gateway): preserve model picker current context
|
2026-05-06 03:50:59 -07:00 |
|
test_logs.py
|
|
|
|
test_managed_installs.py
|
|
|
|
test_mcp_add_command_dest.py
|
fix(mcp): give 'mcp add --command' a distinct argparse dest
|
2026-05-07 05:17:03 -07:00 |
|
test_mcp_config.py
|
|
|
|
test_mcp_reload_confirm_gate.py
|
|
|
|
test_mcp_tools_config.py
|
|
|
|
test_memory_reset.py
|
|
|
|
test_model_catalog.py
|
fix(nous): surface Portal-flagged free models in picker even when curated list is stale (#24082)
|
2026-05-11 18:08:16 -07:00 |
|
test_model_normalize.py
|
|
|
|
test_model_picker_viewport.py
|
refactor(cli): align model picker viewport with PR #11260 vocabulary
|
2026-04-17 06:33:21 -07:00 |
|
test_model_provider_persistence.py
|
|
|
|
test_model_switch_context_display.py
|
|
|
|
test_model_switch_copilot_api_mode.py
|
|
|
|
test_model_switch_custom_providers.py
|
|
|
|
test_model_switch_opencode_anthropic.py
|
|
|
|
test_model_switch_variant_tags.py
|
|
|
|
test_model_validation.py
|
|
|
|
test_models_dev_preferred_merge.py
|
|
|
|
test_models.py
|
chore: ruff auto-fix PLR6201 resweep — tuple → set in membership tests (#27355)
|
2026-05-17 02:29:41 -07:00 |
|
test_non_ascii_credential.py
|
|
|
|
test_nous_auth_status_cache.py
|
perf(tools): cache get_nous_auth_status() and load_env() to fix slow hermes tools menus (#25341)
|
2026-05-13 18:40:14 -07:00 |
|
test_nous_hermes_non_agentic.py
|
|
|
|
test_nous_subscription.py
|
|
|
|
test_ollama_cloud_auth.py
|
|
|
|
test_ollama_cloud_provider.py
|
fix(models): strip :cloud/-cloud suffix from models.dev Ollama Cloud IDs
|
2026-05-04 12:38:15 -07:00 |
|
test_openai_codex_model_validation_fallback.py
|
|
|
|
test_opencode_go_flat_namespace.py
|
|
|
|
test_opencode_go_in_model_list.py
|
|
|
|
test_opencode_go_validation_fallback.py
|
|
|
|
test_overlay_slug_resolution.py
|
|
|
|
test_path_completion.py
|
|
|
|
test_pin_kanban_board_env.py
|
test(kanban): isolate HERMES_KANBAN_BOARD writes in pin-env tests
|
2026-05-05 04:37:47 -07:00 |
|
test_pip_install_detection.py
|
|
|
|
test_placeholder_usage.py
|
|
|
|
test_plugin_cli_registration.py
|
|
|
|
test_plugin_scanner_recursion.py
|
|
|
|
test_plugins_cmd.py
|
|
|
|
test_plugins.py
|
|
|
|
test_post_setup_gating.py
|
|
|
|
test_profile_describer.py
|
|
|
|
test_profile_distribution.py
|
|
|
|
test_profile_export_credentials.py
|
|
|
|
test_profiles.py
|
|
|
|
test_prompt_api_key.py
|
fix(setup): offer Keep/Replace/Clear when API key already exists
|
2026-05-05 04:08:11 -07:00 |
|
test_provider_config_validation.py
|
|
|
|
test_proxy.py
|
feat(proxy): add xai upstream adapter for Grok via OAuth
|
2026-05-18 20:09:32 -07:00 |
|
test_pty_bridge.py
|
|
|
|
test_reasoning_effort_menu.py
|
fix: normalize reasoning effort ordering in UI
|
2026-04-09 14:20:16 -07:00 |
|
test_redact_config_bridge.py
|
|
|
|
test_regression_16767.py
|
|
|
|
test_relaunch.py
|
|
|
|
test_resolve_last_session.py
|
|
|
|
test_runtime_provider_resolution.py
|
|
|
|
test_security_advisories.py
|
|
|
|
test_send_cmd.py
|
|
|
|
test_session_browse.py
|
fix(sessions): /save lands under $HERMES_HOME, widen browse+TUI picker, force-refresh ollama-cloud on setup (#16296)
|
2026-04-26 18:49:48 -07:00 |
|
test_session_handoff.py
|
|
|
|
test_session_recap.py
|
feat(status): append session recap to /status output (#27176)
|
2026-05-16 16:51:42 -07:00 |
|
test_sessions_delete.py
|
|
|
|
test_set_config_value.py
|
|
|
|
test_setup_agent_settings.py
|
|
|
|
test_setup_hermes_script.py
|
|
|
|
test_setup_irc.py
|
|
|
|
test_setup_matrix_e2ee.py
|
|
|
|
test_setup_model_provider.py
|
|
|
|
test_setup_noninteractive.py
|
|
|
|
test_setup_ollama_cloud_force_refresh.py
|
|
|
|
test_setup_openclaw_migration.py
|
|
|
|
test_setup_prompt_menus.py
|
|
|
|
test_setup_reconfigure.py
|
|
|
|
test_setup.py
|
fix(setup): drop post-setup chat handoff (#25067)
|
2026-05-13 13:28:25 -07:00 |
|
test_skills_config.py
|
fix(tests): resolve 17 persistent CI test failures (#15084)
|
2026-04-24 03:46:46 -07:00 |
|
test_skills_hub.py
|
|
|
|
test_skills_install_flags.py
|
|
|
|
test_skills_skip_confirm.py
|
|
|
|
test_skills_subparser.py
|
|
|
|
test_skin_engine.py
|
|
|
|
test_slack_cli.py
|
|
|
|
test_spotify_auth.py
|
fix(auth): keep Spotify logout from resetting model config
|
2026-05-07 05:53:14 -07:00 |
|
test_startup_plugin_gating.py
|
perf(cli): skip eager plugin discovery on known built-in subcommands (#22120)
|
2026-05-08 16:07:23 -07:00 |
|
test_status_model_provider.py
|
feat(agent): add lmstudio integration
|
2026-04-28 12:27:36 -07:00 |
|
test_status.py
|
feat(status): show xAI OAuth login state in hermes status
|
2026-05-17 11:35:57 -07:00 |
|
test_subparser_routing_fallback.py
|
|
|
|
test_subprocess_timeouts.py
|
|
|
|
test_suppress_eio_on_interrupt.py
|
|
|
|
test_teams_pipeline_plugin_cli.py
|
|
|
|
test_tencent_tokenhub_provider.py
|
|
|
|
test_terminal_menu_fallbacks.py
|
|
|
|
test_timeouts.py
|
|
|
|
test_tips.py
|
refactor: remove dead code — 1,784 lines across 77 files (#9180)
|
2026-04-13 16:32:04 -07:00 |
|
test_tool_token_estimation.py
|
fix(tests): resolve 10 CI failures across hooks, tiktoken, plugins (#3848)
|
2026-03-29 20:05:59 -07:00 |
|
test_tools_config.py
|
test(tools_config): align post_setup parametrize with current browser provider catalog
|
2026-05-17 12:44:48 -07:00 |
|
test_tools_disable_enable.py
|
|
|
|
test_tui_bundled.py
|
|
|
|
test_tui_npm_install.py
|
refactor(tui): simplify TUI build logic, remove stale staleness checks
|
2026-05-11 17:04:34 -04:00 |
|
test_tui_resume_flow.py
|
feat(cli): add /update slash command to CLI and TUI (#23854)
|
2026-05-18 20:10:46 -04:00 |
|
test_update_autostash.py
|
|
|
|
test_update_check.py
|
refactor: DRY cleanup from code review
|
2026-05-15 14:45:43 -07:00 |
|
test_update_config_clears_custom_fields.py
|
|
|
|
test_update_gateway_restart.py
|
feat: add hermes postinstall command for pip users
|
2026-05-15 14:45:43 -07:00 |
|
test_update_hangup_protection.py
|
|
|
|
test_update_stale_dashboard.py
|
|
|
|
test_update_yes_flag.py
|
test: remove 50 stale/broken tests to unblock CI (#22098)
|
2026-05-08 14:55:40 -07:00 |
|
test_user_providers_model_switch.py
|
|
|
|
test_video_gen_picker.py
|
|
|
|
test_voice_wrapper.py
|
|
|
|
test_web_oauth_dispatch.py
|
|
|
|
test_web_server_host_header.py
|
fix(web_server,whatsapp-bridge): validate Host header against bound interface (#13530)
|
2026-04-21 06:26:35 -07:00 |
|
test_web_server.py
|
|
|
|
test_web_ui_build.py
|
fix(dashboard): validate dist exists when --skip-build is set
|
2026-05-11 09:27:05 -07:00 |
|
test_webhook_cli.py
|
|
|
|
test_whatsapp_setup_ordering.py
|
|
|
|
test_xai_oauth_pkce_token_exchange.py
|
|
|
|
test_xiaomi_provider.py
|
|
|