systemr-cli 2.3.1__tar.gz → 2.3.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/PKG-INFO +1 -1
  2. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/__init__.py +1 -1
  3. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/chat_commands.py +12 -0
  4. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/pyproject.toml +1 -1
  5. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/.gitignore +0 -0
  6. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/DESIGN.md +0 -0
  7. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/README.md +0 -0
  8. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/clawhub/systemr-trading/SKILL.md +0 -0
  9. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/clawhub/systemr-trading/scripts/mcp_stdio_proxy.py +0 -0
  10. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/__main__.py +0 -0
  11. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/auth.py +0 -0
  12. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/cli.py +0 -0
  13. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/client.py +0 -0
  14. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/__init__.py +0 -0
  15. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/auth_commands.py +0 -0
  16. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/cron_commands.py +0 -0
  17. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/doctor_command.py +0 -0
  18. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/eval_commands.py +0 -0
  19. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/journal_commands.py +0 -0
  20. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/plan_commands.py +0 -0
  21. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/risk_commands.py +0 -0
  22. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/scan_commands.py +0 -0
  23. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/commands/size_commands.py +0 -0
  24. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/config.py +0 -0
  25. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/confirmation.py +0 -0
  26. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/credits.py +0 -0
  27. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/cron.py +0 -0
  28. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/display/__init__.py +0 -0
  29. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/display/chat_renderer.py +0 -0
  30. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/display/formatters.py +0 -0
  31. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/display/tables.py +0 -0
  32. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/display/theme.py +0 -0
  33. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/hooks.py +0 -0
  34. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/logging.py +0 -0
  35. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/model_failover.py +0 -0
  36. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/orchestrator.py +0 -0
  37. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/profile.py +0 -0
  38. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/store.py +0 -0
  39. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/streaming.py +0 -0
  40. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/tool_router.py +0 -0
  41. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/neo/types.py +0 -0
  42. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/__init__.py +0 -0
  43. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_auth.py +0 -0
  44. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_chat_helpers.py +0 -0
  45. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_chat_renderer.py +0 -0
  46. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_cli.py +0 -0
  47. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_config.py +0 -0
  48. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_confirmation.py +0 -0
  49. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_credits.py +0 -0
  50. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_cron.py +0 -0
  51. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_doctor.py +0 -0
  52. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_formatters.py +0 -0
  53. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_hooks.py +0 -0
  54. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_logging.py +0 -0
  55. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_model_failover.py +0 -0
  56. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_orchestrator.py +0 -0
  57. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_profile.py +0 -0
  58. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_store.py +0 -0
  59. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_streaming.py +0 -0
  60. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_tool_router.py +0 -0
  61. {systemr_cli-2.3.1 → systemr_cli-2.3.2}/tests/test_types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: systemr-cli
3
- Version: 2.3.1
3
+ Version: 2.3.2
4
4
  Summary: System R AI — trading operating system for agents
5
5
  Author-email: System R AI <ashim@systemr.ai>
6
6
  License-Expression: MIT
@@ -1,3 +1,3 @@
1
1
  """System R CLI — trading operating system in your terminal."""
2
2
 
3
- __version__ = "2.3.1"
3
+ __version__ = "2.3.2"
@@ -221,9 +221,21 @@ def chat(ctx: click.Context, model_name: str | None, research: bool, resume: boo
221
221
  history_file = SYSTEMR_HOME / "chat_history"
222
222
  loop = asyncio.new_event_loop()
223
223
 
224
+ from prompt_toolkit.key_binding import KeyBindings
225
+ from prompt_toolkit.filters import Condition
226
+
227
+ # Custom key binding: Enter on empty buffer does nothing
228
+ kb = KeyBindings()
229
+
230
+ @kb.add("enter", filter=Condition(lambda: not prompt_session.default_buffer.text.strip()))
231
+ def _ignore_empty_enter(event):
232
+ """Swallow Enter when input is empty — no new line, no movement."""
233
+ pass
234
+
224
235
  prompt_session: PromptSession[str] = PromptSession(
225
236
  history=FileHistory(str(history_file)),
226
237
  auto_suggest=AutoSuggestFromHistory(),
238
+ key_bindings=kb,
227
239
  )
228
240
 
229
241
  # Broker state (will be dynamic when broker connection is implemented)
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "systemr-cli"
7
- version = "2.3.1"
7
+ version = "2.3.2"
8
8
  description = "System R AI — trading operating system for agents"
9
9
  readme = "README.md"
10
10
  license = "MIT"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes