overcode 0.4.0__tar.gz → 0.4.1__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.
- {overcode-0.4.0/src/overcode.egg-info → overcode-0.4.1}/PKG-INFO +1 -1
- {overcode-0.4.0 → overcode-0.4.1}/pyproject.toml +1 -1
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/split.py +1 -2
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/new_agent_modal.py +16 -0
- {overcode-0.4.0 → overcode-0.4.1/src/overcode.egg-info}/PKG-INFO +1 -1
- {overcode-0.4.0 → overcode-0.4.1}/LICENSE +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/MANIFEST.in +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/README.md +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/setup.cfg +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/__init__.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/agent_scanner.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/bundled_skills.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/claude_config.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/claude_pid.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/__init__.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/__main__.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/_shared.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/agent.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/budget.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/config.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/daemon.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/doctor.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/hooks.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/jobs.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/monitoring.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/perms.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/sister.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/skills.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/cli/wrappers.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/config.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/daemon_claude_skill.md +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/daemon_logging.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/daemon_utils.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/data_export.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/dependency_check.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/doctor.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/duration.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/exceptions.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/follow_mode.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/history_reader.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/hook_handler.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/hook_status_detector.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/implementations.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/interfaces.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/job_launcher.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/job_manager.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/launcher.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/logging_config.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/mocks.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/monitor_daemon.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/monitor_daemon_core.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/monitor_daemon_state.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/notifier.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/pid_utils.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/presence_logger.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/pricing.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/protocols.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/session_manager.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/settings.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/sister_controller.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/sister_poller.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/ssh_provisioner.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/standing_instructions.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/status_constants.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/status_detector.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/status_detector_factory.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/status_history.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/status_patterns.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/summarizer_client.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/summarizer_component.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/summary_columns.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/summary_groups.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/supervisor_daemon.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/supervisor_daemon_core.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/supervisor_layout.sh +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/testing/__init__.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/testing/renderer.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/testing/tmux_driver.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/testing/tui_eye.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/testing/tui_eye_skill.md +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/time_context.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tmux_manager.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tmux_utils.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui.tcss +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_actions/__init__.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_actions/daemon.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_actions/input.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_actions/navigation.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_actions/session.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_actions/view.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_helpers.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_logic.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_render.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/__init__.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/agent_select_modal.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/command_bar.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/daemon_panel.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/daemon_status_bar.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/fullscreen_preview.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/help_overlay.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/instruction_history_modal.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/job_summary.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/modal_base.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/new_agent_defaults_modal.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/preview_pane.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/session_summary.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/sister_selection_modal.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/status_timeline.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/summary_config_modal.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/tmux_config_modal.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/tui_widgets/tui_log_panel.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/usage_monitor.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web/__init__.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web/templates/analytics.html +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web/templates/dashboard.html +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web_api.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web_chartjs.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web_control_api.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web_server.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web_server_runner.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/web_templates.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode/wrapper.py +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode.egg-info/SOURCES.txt +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode.egg-info/dependency_links.txt +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode.egg-info/entry_points.txt +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode.egg-info/requires.txt +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/src/overcode.egg-info/top_level.txt +0 -0
- {overcode-0.4.0 → overcode-0.4.1}/tests/test_e2e_multi_agent_jokes.py +0 -0
|
@@ -32,6 +32,7 @@ from pathlib import Path
|
|
|
32
32
|
from typing import Annotated
|
|
33
33
|
|
|
34
34
|
import typer
|
|
35
|
+
from rich import print as rprint
|
|
35
36
|
|
|
36
37
|
from ._shared import app, SessionOption
|
|
37
38
|
from ..tmux_utils import get_pane_base_index
|
|
@@ -548,8 +549,6 @@ def tmux_layout(
|
|
|
548
549
|
normally elsewhere, but they do override any custom user bindings for
|
|
549
550
|
the same keys. Use --uninstall to remove them.
|
|
550
551
|
"""
|
|
551
|
-
from rich import print as rprint
|
|
552
|
-
|
|
553
552
|
# --- Uninstall mode ---
|
|
554
553
|
if uninstall:
|
|
555
554
|
removed_anything = False
|
|
@@ -254,6 +254,22 @@ class NewAgentModal(ModalBase):
|
|
|
254
254
|
wrapper = d["wrapper"].strip() or None
|
|
255
255
|
host = d["host"]
|
|
256
256
|
is_remote = self._is_remote
|
|
257
|
+
# Ensure the local directory exists — tmux silently falls back to
|
|
258
|
+
# $HOME when `new-window -c <path>` points at a missing dir, which
|
|
259
|
+
# lands the agent in the wrong place. mkdir -p it so the agent
|
|
260
|
+
# starts where the user asked. Remote dirs live on another host,
|
|
261
|
+
# so we can't touch them from here.
|
|
262
|
+
if not is_remote:
|
|
263
|
+
local_dir = Path(d["directory"]).expanduser()
|
|
264
|
+
try:
|
|
265
|
+
local_dir.mkdir(parents=True, exist_ok=True)
|
|
266
|
+
except OSError as e:
|
|
267
|
+
self.notify(
|
|
268
|
+
f"Could not create directory {local_dir}: {e}",
|
|
269
|
+
severity="error",
|
|
270
|
+
)
|
|
271
|
+
return
|
|
272
|
+
d["directory"] = str(local_dir)
|
|
257
273
|
raw_args = d.get("claude_args", "").strip()
|
|
258
274
|
if raw_args:
|
|
259
275
|
try:
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|