Teknium
eb74a00c71
refactor(cli): split HermesCLI into 10 cohesive mixins (cli.py 22,284 -> 9,150)
...
326 methods lifted by AST (bodies identical; ast.dump-verified) into
hermes_cli/cli_{tui,status_bar,voice,model_switch,session,stream,modal,
terminal,info,loops}_mixin.py. cli.py-internal symbols resolve via lazy
'from cli import ...' inside each method (no import cycle; patch('cli.X')
keeps working). The three 'global' writers (_skill_commands, _cli_wake_owner)
now write the cli module attribute explicitly so the origin's readers still
see them. Dropped imports left unused in cli.py; kept display_hermes_home /
build_welcome_banner as re-exports (mixins + tests resolve them via cli).
Repointed two AST change-detector tests to cli_tui_mixin.py; one test
fixture now keeps 'cli' in sys.modules across its patch.dict scope.
2026-09-02 15:42:24 -07:00
..
2026-07-29 19:53:17 -07:00
2026-07-31 21:21:20 -07:00
2026-07-29 13:10:23 -07:00
2026-08-08 17:37:26 -07:00
2026-07-29 13:10:23 -07:00
2026-08-29 07:25:17 -07:00
2026-08-29 07:25:17 -07:00
2026-08-29 17:58:46 -07:00
2026-07-29 13:10:23 -07:00
2026-08-29 18:13:33 -07:00
2026-09-02 05:34:35 -07:00
2026-07-30 03:39:26 -05:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-09 22:09:49 -04:00
2026-08-01 15:34:16 -07:00
2026-08-14 13:09:37 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 23:16:18 -07:00
2026-09-01 12:07:35 -07:00
2026-08-14 21:41:26 -07:00
2026-08-15 01:04:19 -07:00
2026-08-08 19:22:53 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-28 23:38:59 -05:00
2026-07-29 13:10:23 -07:00
2026-08-10 10:40:19 -07:00
2026-08-16 01:51:35 -07:00
2026-07-31 12:04:59 -04:00
2026-07-29 13:10:23 -07:00
2026-08-13 21:38:30 +02:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-29 18:34:51 -07:00
2026-08-20 04:14:07 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 15:12:28 -07:00
2026-08-02 20:30:06 -07:00
2026-08-19 19:41:59 -07:00
2026-08-20 04:30:33 -07:00
2026-07-29 13:10:23 -07:00
2026-09-02 15:42:24 -07:00
2026-08-09 22:09:49 -04:00
2026-07-29 13:10:23 -07:00
2026-08-20 11:39:03 +05:30
2026-07-29 13:10:23 -07:00
2026-09-02 13:29:41 -07:00
2026-07-29 13:10:23 -07:00
2026-08-16 01:56:43 -07:00
2026-09-02 05:33:13 -07:00
2026-09-02 15:03:42 -07:00
2026-08-17 13:26:29 +05:30
2026-08-29 18:08:55 -07:00
2026-07-31 22:33:16 -07:00
2026-08-14 13:09:37 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-20 03:59:16 -07:00
2026-08-31 10:08:48 -07:00
2026-08-17 16:55:07 -07:00
2026-07-29 13:10:23 -07:00
2026-09-02 06:36:16 -07:00
2026-07-29 13:10:23 -07:00
2026-07-31 21:21:16 -07:00
2026-07-31 21:21:16 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-09-01 22:14:33 -07:00
2026-08-14 14:39:08 +05:30
2026-08-15 02:04:49 -07:00
2026-07-27 21:10:51 -07:00
2026-08-19 19:42:07 -07:00
2026-08-31 10:09:42 -07:00
2026-07-29 13:10:23 -07:00
2026-08-09 22:09:49 -04:00
2026-09-02 13:29:41 -07:00
2026-08-20 01:46:08 -07:00
2026-09-02 15:42:24 -07:00
2026-07-29 13:10:23 -07:00
2026-07-28 23:53:16 -07:00
2026-07-29 13:10:23 -07:00
2026-09-02 13:29:43 -07:00
2026-08-13 14:22:14 -07:00
2026-09-02 15:42:24 -07:00
2026-08-08 14:06:30 +05:30
2026-07-29 13:10:23 -07:00
2026-08-31 07:27:50 -07:00
2026-07-29 23:16:18 -07:00
2026-08-17 03:03:47 -07:00
2026-07-29 15:34:53 -07:00
2026-08-20 00:00:28 -07:00