voice-vibecoder 2.1.0__tar.gz → 2.2.0__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.
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/CHANGELOG.md +3 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/PKG-INFO +1 -1
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/pyproject.toml +1 -1
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/__init__.py +1 -1
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/panels.py +16 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/.github/workflows/ci.yml +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/.github/workflows/release.yml +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/.gitignore +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/LICENSE +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/README.md +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/app.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/index.html +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/app_config.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/audio.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/cli_serve.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/__init__.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/claude.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/cursor.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/registry.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/config.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/instances.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/server.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/session.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/tools/__init__.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/tools/agent_task.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/tools/definitions.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/tools/dispatch.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/tools/file_tree.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/tools/handlers.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/__init__.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/callbacks.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/diff_view.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/help_modal.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/screen.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/setup.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/state.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/styles.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/update_modal.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/ui/wizard.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/voice_providers/__init__.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/voice_providers/openai.py +0 -0
- {voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/worktrees.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: voice-vibecoder
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: Olaf The Vibecoder — a voice-controlled coding assistant using OpenAI Realtime API + Claude Code
|
|
5
5
|
Project-URL: Homepage, https://github.com/snokam/voice-vibecoder
|
|
6
6
|
Project-URL: Repository, https://github.com/snokam/voice-vibecoder
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "voice-vibecoder"
|
|
7
|
-
version = "2.
|
|
7
|
+
version = "2.2.0"
|
|
8
8
|
description = "Olaf The Vibecoder — a voice-controlled coding assistant using OpenAI Realtime API + Claude Code"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
@@ -93,6 +93,20 @@ class PanelMixin:
|
|
|
93
93
|
except Exception:
|
|
94
94
|
pass
|
|
95
95
|
|
|
96
|
+
def _show_welcome(self) -> None:
|
|
97
|
+
"""Re-show the welcome panel if the grid is empty."""
|
|
98
|
+
try:
|
|
99
|
+
self.query_one("#welcome-panel")
|
|
100
|
+
return # already showing
|
|
101
|
+
except Exception:
|
|
102
|
+
pass
|
|
103
|
+
try:
|
|
104
|
+
grid = self.query_one("#agent-grid", Grid)
|
|
105
|
+
if len(grid.children) == 0:
|
|
106
|
+
grid.mount(Static(self._WELCOME_TEXT, id="welcome-panel"))
|
|
107
|
+
except Exception:
|
|
108
|
+
pass
|
|
109
|
+
|
|
96
110
|
def _create_panels_batch(self, instances: list) -> None:
|
|
97
111
|
"""Create all panels in one mount call for faster startup."""
|
|
98
112
|
if instances:
|
|
@@ -347,5 +361,7 @@ class PanelMixin:
|
|
|
347
361
|
panel_count = len(grid.children)
|
|
348
362
|
if panel_count > 0:
|
|
349
363
|
_apply_grid_size(grid, panel_count, max_columns=3)
|
|
364
|
+
else:
|
|
365
|
+
self._show_welcome()
|
|
350
366
|
except Exception:
|
|
351
367
|
pass
|
|
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
|
{voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/__init__.py
RENAMED
|
File without changes
|
{voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/claude.py
RENAMED
|
File without changes
|
{voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/cursor.py
RENAMED
|
File without changes
|
{voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/code_providers/registry.py
RENAMED
|
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
|
{voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/voice_providers/__init__.py
RENAMED
|
File without changes
|
{voice_vibecoder-2.1.0 → voice_vibecoder-2.2.0}/src/voice_vibecoder/voice_providers/openai.py
RENAMED
|
File without changes
|
|
File without changes
|