soothe-cli 0.7.17__tar.gz → 0.7.18__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 (132) hide show
  1. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/PKG-INFO +1 -1
  2. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/state/file_tracker.py +3 -3
  3. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/file_change_notify.py +1 -1
  4. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/file_change_renderers.py +4 -6
  5. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/file_change_preview.py +1 -1
  6. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/cognition_goal_tree.py +1 -0
  7. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/.gitignore +0 -0
  8. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/README.md +0 -0
  9. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/pyproject.toml +0 -0
  10. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/__init__.py +0 -0
  11. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/__init__.py +0 -0
  12. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/commands/__init__.py +0 -0
  13. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/commands/autopilot_cmd.py +0 -0
  14. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/commands/config_cmd.py +0 -0
  15. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/commands/cron_cmd.py +0 -0
  16. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/commands/loop_cmd.py +0 -0
  17. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/commands/run_cmd.py +0 -0
  18. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/commands/status_cmd.py +0 -0
  19. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/execution/__init__.py +0 -0
  20. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/execution/daemon.py +0 -0
  21. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/execution/daemon_errors.py +0 -0
  22. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/execution/headless.py +0 -0
  23. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/execution/headless_renderer.py +0 -0
  24. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/execution/launcher.py +0 -0
  25. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/cli/main.py +0 -0
  26. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/config/__init__.py +0 -0
  27. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/config/cli_config.py +0 -0
  28. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/config/loader.py +0 -0
  29. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/config/logging_setup.py +0 -0
  30. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/__init__.py +0 -0
  31. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/headless/processor.py +0 -0
  32. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/headless/processor_state.py +0 -0
  33. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/parse/message_processing.py +0 -0
  34. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/parse/tool_call_resolution.py +0 -0
  35. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/parse/tool_result.py +0 -0
  36. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/policy/display_policy.py +0 -0
  37. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/policy/essential_events.py +0 -0
  38. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/policy/tui_trace_log.py +0 -0
  39. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/presentation/duration_format.py +0 -0
  40. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/presentation/engine.py +0 -0
  41. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/presentation/id_format.py +0 -0
  42. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/presentation/renderer_base.py +0 -0
  43. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/presentation/renderer_protocol.py +0 -0
  44. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/presentation/subagent_task_display.py +0 -0
  45. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/state/session_stats.py +0 -0
  46. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/state/step_router.py +0 -0
  47. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/state/stream_accumulator.py +0 -0
  48. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/state/transcript.py +0 -0
  49. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/token_events_debug.py +0 -0
  50. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/token_usage.py +0 -0
  51. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/transport/session.py +0 -0
  52. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/turn/pipeline.py +0 -0
  53. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/turn/prepare.py +0 -0
  54. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/wire/chunk_filter.py +0 -0
  55. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/wire/message_text.py +0 -0
  56. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/runtime/wire/messages.py +0 -0
  57. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/__init__.py +0 -0
  58. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/_cli_context.py +0 -0
  59. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/_env_vars.py +0 -0
  60. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/_version.py +0 -0
  61. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/__init__.py +0 -0
  62. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_app.py +0 -0
  63. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_execution.py +0 -0
  64. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_history.py +0 -0
  65. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_messages_mixin.py +0 -0
  66. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_model.py +0 -0
  67. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_module_init.py +0 -0
  68. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_startup.py +0 -0
  69. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/_ui.py +0 -0
  70. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/app/app.tcss +0 -0
  71. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/binding.py +0 -0
  72. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/command_registry.py +0 -0
  73. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/commands/__init__.py +0 -0
  74. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/commands/command_router.py +0 -0
  75. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/commands/slash_commands.py +0 -0
  76. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/commands/subagent_routing.py +0 -0
  77. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/config.py +0 -0
  78. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/hooks.py +0 -0
  79. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/input.py +0 -0
  80. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/markdown_theme.py +0 -0
  81. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/media_utils.py +0 -0
  82. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/model_config.py +0 -0
  83. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/path_utils.py +0 -0
  84. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/preview_limits.py +0 -0
  85. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/project_utils.py +0 -0
  86. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/sessions.py +0 -0
  87. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/shell_color.py +0 -0
  88. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/skills/__init__.py +0 -0
  89. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/skills/invocation.py +0 -0
  90. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/skills/load.py +0 -0
  91. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/spinner_labels.py +0 -0
  92. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/textual_adapter.py +0 -0
  93. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/theme.py +0 -0
  94. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/tips.py +0 -0
  95. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/tool_display.py +0 -0
  96. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/unicode_security.py +0 -0
  97. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/update_check.py +0 -0
  98. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/__init__.py +0 -0
  99. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/_links.py +0 -0
  100. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/autocomplete.py +0 -0
  101. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/chat_input.py +0 -0
  102. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/clipboard.py +0 -0
  103. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/context_data.py +0 -0
  104. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/context_viewer.py +0 -0
  105. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/diff.py +0 -0
  106. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/editor.py +0 -0
  107. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/help_screen.py +0 -0
  108. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/history.py +0 -0
  109. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/loading.py +0 -0
  110. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/loop_selector.py +0 -0
  111. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/mcp_viewer.py +0 -0
  112. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/message_store.py +0 -0
  113. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/__init__.py +0 -0
  114. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/_helpers.py +0 -0
  115. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/app.py +0 -0
  116. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/assistant.py +0 -0
  117. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/clarification.py +0 -0
  118. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/cognition_reason.py +0 -0
  119. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/cognition_step.py +0 -0
  120. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/cognition_step_activity.py +0 -0
  121. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/cognition_subagent.py +0 -0
  122. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/diff_message.py +0 -0
  123. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/error.py +0 -0
  124. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/skill.py +0 -0
  125. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/messages/user.py +0 -0
  126. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/model_selector.py +0 -0
  127. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/notification_settings.py +0 -0
  128. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/plan_quick_view_overlay.py +0 -0
  129. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/router_profile_selector.py +0 -0
  130. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/status.py +0 -0
  131. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/theme_selector.py +0 -0
  132. {soothe_cli-0.7.17 → soothe_cli-0.7.18}/src/soothe_cli/tui/widgets/welcome.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: soothe-cli
3
- Version: 0.7.17
3
+ Version: 0.7.18
4
4
  Summary: Soothe CLI client - communicates with daemon via WebSocket
5
5
  Project-URL: Homepage, https://github.com/mirasoth/soothe
6
6
  Project-URL: Documentation, https://soothe.readthedocs.io
@@ -226,7 +226,7 @@ def apply_insert_lines_to_content(content: str, line: int, insert_content: str)
226
226
  return "".join(lines)
227
227
 
228
228
 
229
- def apply_edit_file_lines_to_content(
229
+ def apply_edit_lines_to_content(
230
230
  content: str,
231
231
  start_line: int,
232
232
  end_line: int,
@@ -747,7 +747,7 @@ def file_change_label(
747
747
  return "Deleting"
748
748
  if tool_name == "write_file":
749
749
  return "Creating" if is_new_file else "Writing"
750
- if tool_name in ("edit_file", "edit_file_lines"):
750
+ if tool_name in ("edit_file", "edit_lines"):
751
751
  return "Editing"
752
752
  if tool_name == "insert_lines":
753
753
  return "Inserting"
@@ -759,7 +759,7 @@ def file_change_label(
759
759
  return "Deleted"
760
760
  if tool_name == "write_file":
761
761
  return "Created" if is_new_file else "Written"
762
- if tool_name in ("edit_file", "edit_file_lines"):
762
+ if tool_name in ("edit_file", "edit_lines"):
763
763
  return "Edited"
764
764
  if tool_name == "insert_lines":
765
765
  return "Inserted"
@@ -115,7 +115,7 @@ async def mount_file_change_preview(
115
115
  str(args.get("old_string") or "") or str(args.get("new_string") or "")
116
116
  ):
117
117
  return
118
- if tool_name == "edit_file_lines" and parse_line_range_args(args) is None:
118
+ if tool_name == "edit_lines" and parse_line_range_args(args) is None:
119
119
  return
120
120
  if tool_name == "insert_lines" and parse_insert_line_arg(args) is None:
121
121
  return
@@ -7,7 +7,7 @@ from typing import Any
7
7
  from soothe_cli.runtime.state.file_tracker import (
8
8
  FILE_CHANGE_TOOLS,
9
9
  FileOperationRecord,
10
- apply_edit_file_lines_to_content,
10
+ apply_edit_lines_to_content,
11
11
  apply_insert_lines_to_content,
12
12
  extract_line_range_text,
13
13
  parse_insert_line_arg,
@@ -80,7 +80,7 @@ def build_file_change_preview(
80
80
  "new_string": new_string,
81
81
  }
82
82
 
83
- if tool_name == "edit_file_lines":
83
+ if tool_name == "edit_lines":
84
84
  line_range = parse_line_range_args(args)
85
85
  if line_range is None:
86
86
  return None
@@ -128,9 +128,7 @@ def build_file_change_preview(
128
128
  if physical and physical.is_file():
129
129
  before = read_physical_file_text(physical) or ""
130
130
  old_segment = extract_line_range_text(before, start_line, end_line) if before else ""
131
- after_text = (
132
- apply_edit_file_lines_to_content(before, start_line, end_line, "") if before else ""
133
- )
131
+ after_text = apply_edit_lines_to_content(before, start_line, end_line, "") if before else ""
134
132
  if after_text is None:
135
133
  after_text = before
136
134
  return EditFileLinesPreviewWidget, {
@@ -203,7 +201,7 @@ def update_preview_data_from_record(data: dict[str, Any], record: FileOperationR
203
201
  data["total_lines"] = len(lines)
204
202
  return
205
203
 
206
- if record.tool_name == "edit_file_lines":
204
+ if record.tool_name == "edit_lines":
207
205
  line_range = parse_line_range_args(record.args)
208
206
  if line_range is not None:
209
207
  data["start_line"], data["end_line"] = line_range
@@ -406,7 +406,7 @@ class EditFilePreviewWidget(FileChangePreviewWidget):
406
406
 
407
407
 
408
408
  class EditFileLinesPreviewWidget(EditFilePreviewWidget):
409
- """Preview for edit_file_lines / delete_lines — line range + segment diff."""
409
+ """Preview for edit_lines / delete_lines — line range + segment diff."""
410
410
 
411
411
  def compose(self) -> ComposeResult:
412
412
  """Compose line-range edit preview."""
@@ -225,6 +225,7 @@ class CognitionGoalTreeMessage(Vertical):
225
225
  self,
226
226
  body,
227
227
  status=status,
228
+ glyph_override="🎯",
228
229
  spinner_position=self._spinner_position,
229
230
  animate_running=self._loop_executing(),
230
231
  )
File without changes
File without changes
File without changes