hermes-agent/hermes_cli
Teknium 96e96a79ad
fix: --yolo and other flags silently dropped when placed before 'chat' subcommand (#5145)
When --yolo, -w, -s, -r, -c, and --pass-session-id exist on both the parent
parser and the 'chat' subparser with explicit defaults (default=False or
default=None), argparse's subparser initialization overwrites the parent's
parsed value. So 'hermes --yolo chat' silently drops --yolo, making it appear
broken.

Fix: use default=argparse.SUPPRESS on all duplicated arguments in the chat
subparser. SUPPRESS means 'don't set this attribute if the user didn't
explicitly provide it', so the parent parser's value survives through.

Affected flags: --yolo, --worktree/-w, --skills/-s, --pass-session-id,
--resume/-r, --continue/-c.

Adds 15 regression tests covering flag-before-subcommand, flag-after-subcommand,
no-subcommand, and env var propagation scenarios.
2026-04-04 16:55:13 -07:00
..
__init__.py chore: release v0.7.0 (2026.4.3) (#4812) 2026-04-03 11:14:55 -07:00
auth.py fix: repair OpenCode model routing and selection (#4508) 2026-04-02 09:36:24 -07:00
auth_commands.py feat(auth): same-provider credential pools with rotation, custom endpoint support, and interactive CLI (#2647) 2026-03-31 03:10:01 -07:00
banner.py chore: prepare Hermes for Homebrew packaging (#4099) 2026-03-30 17:34:43 -07:00
callbacks.py feat(approvals): make dangerous command approval timeout configurable (#3886) 2026-03-30 00:02:02 -07:00
checklist.py fix: add TTY guard to interactive CLI commands to prevent CPU spin (#3933) 2026-03-30 08:10:23 -07:00
claw.py feat: add post-migration cleanup for OpenClaw directories (#4100) 2026-03-30 17:39:08 -07:00
clipboard.py fix: clean up empty file after failed wl-paste clipboard extraction 2026-03-11 02:56:19 -07:00
codex_models.py fix: add gpt-5.4-mini to Codex fallback catalog (#3855) 2026-03-29 20:10:00 -07:00
colors.py feat: respect NO_COLOR env var and TERM=dumb (#4079) 2026-03-30 17:07:21 -07:00
commands.py fix: clear ghost status-bar lines on terminal resize (#4960) 2026-04-03 22:43:45 -07:00
config.py feat(gateway): add MATRIX_REQUIRE_MENTION and MATRIX_AUTO_THREAD support 2026-04-04 13:09:27 -07:00
copilot_auth.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
cron.py feat(cron): add script field for pre-run data collection (#5082) 2026-04-04 10:43:39 -07:00
curses_ui.py fix: add TTY guard to interactive CLI commands to prevent CPU spin (#3933) 2026-03-30 08:10:23 -07:00
default_soul.py fix: reset default SOUL.md to baseline identity text (#3159) 2026-03-26 01:34:27 -07:00
doctor.py fix(doctor): sync provider checks, add config migration, WAL and mem0 diagnostics (#5077) 2026-04-04 10:21:33 -07:00
env_loader.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
gateway.py fix: scope gateway stop/restart to current profile, --all for global kill 2026-04-03 14:21:44 -07:00
main.py fix: --yolo and other flags silently dropped when placed before 'chat' subcommand (#5145) 2026-04-04 16:55:13 -07:00
mcp_config.py fix: add TTY guard to interactive CLI commands to prevent CPU spin (#3933) 2026-03-30 08:10:23 -07:00
memory_setup.py fix(hindsight): overhaul hindsight memory plugin and memory setup wizard 2026-04-04 12:18:46 -07:00
model_switch.py fix: repair OpenCode model routing and selection (#4508) 2026-04-02 09:36:24 -07:00
models.py fix(opencode-go): strip trailing /v1 from base URL for Anthropic models (#4918) 2026-04-03 18:47:51 -07:00
nous_subscription.py Merge branch 'main' into rewbs/tool-use-charge-to-subscription 2026-03-31 09:29:43 +09:00
pairing.py chore: fix 154 f-strings, simplify getattr/URL patterns, remove dead code (#3119) 2026-03-25 19:47:58 -07:00
plugins.py Merge branch 'main' into rewbs/tool-use-charge-to-subscription 2026-03-31 09:29:43 +09:00
plugins_cmd.py chore: prepare Hermes for Homebrew packaging (#4099) 2026-03-30 17:34:43 -07:00
profiles.py fix(memory): profile-scoped memory isolation and clone support (#4845) 2026-04-03 13:10:11 -07:00
runtime_provider.py fix(opencode-go): strip trailing /v1 from base URL for Anthropic models (#4918) 2026-04-03 18:47:51 -07:00
setup.py feat: add MiniMax TTS provider support (speech-2.8) 2026-04-03 22:42:14 -07:00
skills_config.py fix: webhook platform support — skip home channel prompt, disable tool progress (salvage #4363) (#4660) 2026-04-02 14:00:22 -07:00
skills_hub.py fix(skills): validate hub bundle paths before install (#3986) 2026-03-30 08:37:19 -07:00
skin_engine.py refactor: consolidate get_hermes_home() and parse_reasoning_effort() (#3062) 2026-03-25 15:54:28 -07:00
status.py Merge branch 'main' into rewbs/tool-use-charge-to-subscription 2026-03-31 09:29:43 +09:00
tools_config.py fix: handle None mcp_servers in _get_platform_tools() 2026-04-03 09:08:20 -07:00
uninstall.py chore: fix 154 f-strings, simplify getattr/URL patterns, remove dead code (#3119) 2026-03-25 19:47:58 -07:00
webhook.py fix: replace user-facing hardcoded ~/.hermes paths with display_hermes_home() 2026-03-28 23:47:21 -07:00