hermes-agent/tests/hermes_cli
ryptotalent 9b2488af2a fix: include arg-taking commands in Telegram menu
Built-in commands with required args (e.g. /queue, /steer, /background)
were excluded from Telegram setMyCommands output, making them invisible
in the autocomplete menu. However, their handlers already return usage
text when invoked without arguments, so hiding them hurts discoverability.

This commit removes the _requires_argument filter for built-in commands
(COMMAND_REGISTRY) while keeping it for plugin-registered slash commands,
which may not provide a no-arg usage fallback.

Closes #24312
2026-05-12 16:34:40 -07:00
..
__init__.py
conftest.py fix(kanban): suppress dispatcher stuck-warn when ready queue holds only non-spawnable assignees 2026-05-05 04:13:12 -07:00
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
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 fix(minimax): harden OAuth dashboard and runtime 2026-05-11 22:15:16 -07:00
test_auth_nous_provider.py test(auth): assert Nous refresh rotation payload 2026-05-08 04:17:42 -07:00
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
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_aux_config.py
test_azure_detect.py
test_backup.py fix(backup): floor pre-update backup_keep to 1 so the new backup survives 2026-05-04 05:07:13 -07:00
test_banner.py
test_banner_git_state.py
test_banner_skills.py
test_bedrock_model_picker.py fix(model): avoid bedrock credential probe in provider picker 2026-05-03 00:32:55 -07:00
test_chat_skills_flag.py
test_claw.py
test_clear_stale_base_url.py
test_cmd_update.py fix(update): use termux-all uv fallback path on Termux 2026-05-09 17:53:15 -07:00
test_coalesce_session_args.py
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_commands.py fix: include arg-taking commands in Telegram menu 2026-05-12 16:34:40 -07:00
test_completion.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_config_drift.py
test_config_env_expansion.py
test_config_env_refs.py
test_config_validation.py
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
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 feat(curator): show rename map in user-visible summary (#22910) 2026-05-09 18:43:40 -07:00
test_curator_run.py fix(curator): make manual runs synchronous 2026-05-07 05:27:47 -07:00
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 fix(cli): omit empty api_mode when probing custom models 2026-05-04 02:46:41 -07:00
test_dashboard_browser_safe_imports.py
test_dashboard_lifecycle_flags.py
test_dashboard_profiles_nav_label.py fix(dashboard): UI polish — modals, layout, consistency, test fixes 2026-05-12 13:59:22 -04:00
test_debug.py feat(security): enable secret redaction by default (#17691, #20785) (#21193) 2026-05-07 05:10:33 -07:00
test_deprecated_cwd_warning.py
test_destructive_slash_confirm_gate.py feat: confirm prompt for destructive slash commands (#4069) (#22687) 2026-05-09 11:04:46 -07:00
test_detect_api_mode_for_url.py
test_determine_api_mode_hostname.py
test_dingtalk_auth.py
test_discord_skill_clamp_warning.py test: add tests for cmd_key preservation through name clamping 2026-05-03 03:25:45 -07:00
test_doctor.py feat: add termux doctor fallback guidance for blocked extras 2026-05-07 13:04:08 -07:00
test_doctor_command_install.py
test_doctor_dedicated_provider_skip.py fix(doctor): skip pluggable provider profiles when a dedicated check exists (#22346) 2026-05-09 13:36:33 -07:00
test_env_loader.py clarify placeholder telegram credential in tests 2026-05-04 15:31:15 -04:00
test_env_sanitize_on_load.py clarify placeholder telegram credential in tests 2026-05-04 15:31:15 -04:00
test_fallback_cmd.py
test_gateway.py test(gateway): stub /proc unavailability in find_gateway_pids fallback test 2026-05-09 17:54:17 -07:00
test_gateway_linger.py
test_gateway_platform_gating.py fix(install): use --extra all not --all-extras; drop lazy-covered extras from [all] (#24515) 2026-05-12 15:06:25 -07:00
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
test_gateway_service.py fix(test_gateway): stop run_gateway() tests from rewriting the dev's installed systemd unit (#22900) 2026-05-09 17:54:09 -07:00
test_gateway_wsl.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 revert: roll back /goal checklist + /subgoal feature stack (#23813) 2026-05-11 07:06:27 -07:00
test_hooks_cli.py
test_ignore_user_config_flags.py
test_image_gen_picker.py
test_install_cua_driver.py feat(computer-use): refresh cua-driver on hermes update + add install --upgrade (#24063) 2026-05-11 17:10:58 -07:00
test_kanban_boards.py fix(kanban): ignore stale current board pointers 2026-05-05 04:34:45 -07:00
test_kanban_cli.py fix(kanban): restore HERMES_KANBAN_BOARD after scoped slash override 2026-05-11 06:44:58 -07:00
test_kanban_core_functionality.py fix(gateway): route kanban notifications to creator profile 2026-05-10 20:04:53 -07:00
test_kanban_db.py fix(kanban): extend stale claim instead of killing live worker 2026-05-10 15:23:04 -07:00
test_kanban_diagnostics.py feat(kanban): stranded_in_ready diagnostic for unclaimed tasks (#23578) 2026-05-10 21:58:44 -07:00
test_kanban_notify.py fix(kanban): route gateway create auto-subscribe to explicit board 2026-05-11 06:44:58 -07:00
test_kanban_specify.py feat(kanban): add specify — auxiliary LLM fleshes out triage tasks (#21435) 2026-05-07 13:04:41 -07:00
test_kanban_specify_db.py feat(kanban): add specify — auxiliary LLM fleshes out triage tasks (#21435) 2026-05-07 13:04:41 -07:00
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 fix(mcp): give 'mcp add --command' a distinct argparse dest 2026-05-07 05:17:03 -07:00
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
test_model_provider_persistence.py test: remove 50 stale/broken tests to unblock CI (#22098) 2026-05-08 14:55:40 -07:00
test_model_switch_context_display.py
test_model_switch_copilot_api_mode.py
test_model_switch_custom_providers.py fix(model_switch): live model discovery for custom_providers in /model picker 2026-05-07 05:21:26 -07:00
test_model_switch_opencode_anthropic.py
test_model_switch_variant_tags.py
test_model_validation.py test: remove 50 stale/broken tests to unblock CI (#22098) 2026-05-08 14:55:40 -07:00
test_models.py union paid recs from nous portal with static list (#24509) 2026-05-12 12:16:17 -07:00
test_models_dev_preferred_merge.py
test_non_ascii_credential.py
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 fix(codex-spark): defensive 128k entry in DEFAULT_CONTEXT_LENGTHS + clarify validation test docstring 2026-05-09 23:17:25 -07:00
test_opencode_go_flat_namespace.py fix(opencode-go): keep users on opencode-go instead of hijacking to native providers (#20802) 2026-05-06 09:08:33 -07:00
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_placeholder_usage.py
test_plugin_cli_registration.py
test_plugin_scanner_recursion.py
test_plugins.py feat(plugins): HERMES_PLUGINS_DEBUG=1 surfaces plugin discovery logs (#22684) 2026-05-09 11:07:12 -07:00
test_plugins_cmd.py fix(plugins): resolve Git binary for installs under minimal PATH 2026-05-09 11:10:04 -07:00
test_post_setup_gating.py fix(tools): install cua-driver when Computer Use is enabled via 'hermes tools' (#22765) 2026-05-09 13:02:25 -07:00
test_profile_distribution.py feat(profile): shareable profile distributions via git (#20831) 2026-05-08 10:04:32 -07:00
test_profile_export_credentials.py
test_profiles.py fix(profiles): exclude infrastructure artifacts when cloning with --clone-all 2026-05-09 04:10:35 -07:00
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_pty_bridge.py
test_reasoning_effort_menu.py
test_redact_config_bridge.py feat(security): enable secret redaction by default (#17691, #20785) (#21193) 2026-05-07 05:10:33 -07:00
test_regression_16767.py
test_relaunch.py fix(windows): prefer npm.cmd over npm.ps1, skip .py argv0 in relaunch 2026-05-08 14:27:40 -07:00
test_resolve_last_session.py
test_runtime_provider_resolution.py fix(minimax): harden OAuth dashboard and runtime 2026-05-11 22:15:16 -07:00
test_security_advisories.py feat(security): supply-chain advisory checker + lazy-install framework + tiered install fallback (#24220) 2026-05-12 01:02:25 -07:00
test_session_browse.py
test_session_handoff.py feat(session): make /handoff actually transfer the session live 2026-05-10 13:06:25 -07:00
test_sessions_delete.py
test_set_config_value.py
test_setup.py fix(setup): add missing SLACK_HOME_CHANNEL prompt to _setup_slack() 2026-05-04 01:37:18 -07:00
test_setup_agent_settings.py fix(gateway): shutdown + restart hygiene (drain timeout, false-fatal, success log) (#18761) 2026-05-02 02:08:06 -07:00
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 fix(cli): sanitize bracketed paste markers during setup 2026-05-05 06:12:42 -07:00
test_setup_reconfigure.py
test_skills_config.py
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 fix(slack): enable writable app home DMs in manifest 2026-05-08 17:01:12 -07:00
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.py
test_status_model_provider.py
test_subparser_routing_fallback.py
test_subprocess_timeouts.py
test_suppress_eio_on_interrupt.py fix(cli): guard logger.debug in signal handler (#13710 regression) (#20673) 2026-05-06 03:55:47 -07:00
test_teams_pipeline_plugin_cli.py feat(teams-pipeline): add plugin runtime and operator cli 2026-05-08 11:18:14 -07:00
test_tencent_tokenhub_provider.py fix(model-metadata): align hy3-preview static fallback + delete change-detector test (#22805) 2026-05-09 13:37:19 -07:00
test_terminal_menu_fallbacks.py
test_timeouts.py
test_tips.py
test_tool_token_estimation.py
test_tools_config.py fix(cli): expand composite toolset when mixed with configurables in platform_toolsets 2026-05-09 11:08:05 -07:00
test_tools_disable_enable.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 fix: make session search initialize session db 2026-05-09 14:36:58 -07:00
test_update_autostash.py fix(update): use termux-all uv fallback path on Termux 2026-05-09 17:53:15 -07:00
test_update_check.py
test_update_config_clears_custom_fields.py
test_update_gateway_restart.py fix(dashboard): UI polish — modals, layout, consistency, test fixes 2026-05-12 13:59:22 -04: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_voice_wrapper.py fix(tui): restore voice push-to-talk parity (#20897) 2026-05-06 15:49:59 -07:00
test_web_oauth_dispatch.py fix(minimax): harden OAuth dashboard and runtime 2026-05-11 22:15:16 -07:00
test_web_server.py test(security): broaden plugin API auth coverage + correct stale docstring 2026-05-10 07:04:18 -07:00
test_web_server_host_header.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_xiaomi_provider.py