vibesurf 0.1.18__py3-none-any.whl → 0.1.20__py3-none-any.whl
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.
Potentially problematic release.
This version of vibesurf might be problematic. Click here for more details.
- vibe_surf/_version.py +2 -2
- vibe_surf/agents/report_writer_agent.py +1 -1
- vibe_surf/backend/database/migrations/v003_fix_task_status_case.sql +11 -0
- vibe_surf/chrome_extension/sidepanel.html +17 -0
- vibe_surf/chrome_extension/styles/layout.css +55 -0
- vibe_surf/tools/file_system.py +8 -0
- vibe_surf/tools/voice_asr.py +54 -0
- {vibesurf-0.1.18.dist-info → vibesurf-0.1.20.dist-info}/METADATA +3 -2
- {vibesurf-0.1.18.dist-info → vibesurf-0.1.20.dist-info}/RECORD +13 -11
- {vibesurf-0.1.18.dist-info → vibesurf-0.1.20.dist-info}/WHEEL +0 -0
- {vibesurf-0.1.18.dist-info → vibesurf-0.1.20.dist-info}/entry_points.txt +0 -0
- {vibesurf-0.1.18.dist-info → vibesurf-0.1.20.dist-info}/licenses/LICENSE +0 -0
- {vibesurf-0.1.18.dist-info → vibesurf-0.1.20.dist-info}/top_level.txt +0 -0
vibe_surf/_version.py
CHANGED
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.1.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 1,
|
|
31
|
+
__version__ = version = '0.1.20'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 1, 20)
|
|
33
33
|
|
|
34
34
|
__commit_id__ = commit_id = None
|
|
@@ -136,7 +136,7 @@ class ReportWriterAgent:
|
|
|
136
136
|
create_result = await self.file_system.create_file(report_filename)
|
|
137
137
|
logger.info(f"Created report file: {create_result}")
|
|
138
138
|
|
|
139
|
-
max_iterations =
|
|
139
|
+
max_iterations = 10 # Prevent infinite loops
|
|
140
140
|
|
|
141
141
|
# Add system message with unified prompt only if message history is empty
|
|
142
142
|
if not self.message_history:
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
-- Migration: v003_fix_task_status_case.sql
|
|
2
|
+
-- Description: Fix task status values to use lowercase (enum values)
|
|
3
|
+
-- Version: 0.0.3
|
|
4
|
+
|
|
5
|
+
-- Update any uppercase status values to lowercase to match TaskStatus enum
|
|
6
|
+
UPDATE tasks SET status = 'pending' WHERE status = 'PENDING';
|
|
7
|
+
UPDATE tasks SET status = 'running' WHERE status = 'RUNNING';
|
|
8
|
+
UPDATE tasks SET status = 'paused' WHERE status = 'PAUSED';
|
|
9
|
+
UPDATE tasks SET status = 'completed' WHERE status = 'COMPLETED';
|
|
10
|
+
UPDATE tasks SET status = 'failed' WHERE status = 'FAILED';
|
|
11
|
+
UPDATE tasks SET status = 'stopped' WHERE status = 'STOPPED';
|
|
@@ -36,6 +36,23 @@
|
|
|
36
36
|
<div class="logo-brand">
|
|
37
37
|
<img src="icons/logo.png" alt="VibeSurf" class="logo-image">
|
|
38
38
|
<span class="logo-text">VibeSurf</span>
|
|
39
|
+
<div class="social-links">
|
|
40
|
+
<a href="https://github.com/vvincent1234/VibeSurf" class="social-link" title="GitHub" data-platform="github" target="_blank" rel="noopener noreferrer">
|
|
41
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
42
|
+
<path d="M12 0C5.374 0 0 5.373 0 12c0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23A11.509 11.509 0 0112 5.803c1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576C20.566 21.797 24 17.3 24 12c0-6.627-5.373-12-12-12z" fill="currentColor"/>
|
|
43
|
+
</svg>
|
|
44
|
+
</a>
|
|
45
|
+
<a href="https://discord.gg/WSeRwW2M" class="social-link" title="Discord" data-platform="discord" target="_blank" rel="noopener noreferrer">
|
|
46
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
47
|
+
<path d="M20.317 4.37a19.791 19.791 0 00-4.885-1.515.074.074 0 00-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 00-5.487 0 12.64 12.64 0 00-.617-1.25.077.077 0 00-.079-.037A19.736 19.736 0 003.677 4.37a.07.07 0 00-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 00.031.057 19.9 19.9 0 005.993 3.03.078.078 0 00.084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 00-.041-.106 13.107 13.107 0 01-1.872-.892.077.077 0 01-.008-.128 10.2 10.2 0 00.372-.292.074.074 0 01.077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 01.078.01c.12.098.246.198.373.292a.077.077 0 01-.006.127 12.299 12.299 0 01-1.873.892.077.077 0 00-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 00.084.028 19.839 19.839 0 006.002-3.03.077.077 0 00.032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 00-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z" fill="currentColor"/>
|
|
48
|
+
</svg>
|
|
49
|
+
</a>
|
|
50
|
+
<a href="https://x.com/warmshao" class="social-link" title="X (Twitter)" data-platform="x" target="_blank" rel="noopener noreferrer">
|
|
51
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
52
|
+
<path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z" fill="currentColor"/>
|
|
53
|
+
</svg>
|
|
54
|
+
</a>
|
|
55
|
+
</div>
|
|
39
56
|
</div>
|
|
40
57
|
<div class="session-info">
|
|
41
58
|
<span class="session-label">Session:</span>
|
|
@@ -43,6 +43,61 @@
|
|
|
43
43
|
font-weight: var(--font-weight-semibold);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
+
/* Social Links */
|
|
47
|
+
.social-links {
|
|
48
|
+
display: flex;
|
|
49
|
+
align-items: center;
|
|
50
|
+
gap: var(--spacing-xs);
|
|
51
|
+
margin-left: var(--spacing-sm);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.social-link {
|
|
55
|
+
display: flex;
|
|
56
|
+
align-items: center;
|
|
57
|
+
justify-content: center;
|
|
58
|
+
width: 20px;
|
|
59
|
+
height: 20px;
|
|
60
|
+
border-radius: var(--radius-sm);
|
|
61
|
+
color: var(--text-muted);
|
|
62
|
+
text-decoration: none;
|
|
63
|
+
transition: all var(--transition-fast);
|
|
64
|
+
opacity: 0.7;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.social-link:hover {
|
|
68
|
+
color: var(--text-secondary);
|
|
69
|
+
background-color: var(--bg-hover);
|
|
70
|
+
opacity: 1;
|
|
71
|
+
transform: scale(1.1);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.social-link:active {
|
|
75
|
+
transform: scale(0.95);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.social-link[data-platform="github"]:hover {
|
|
79
|
+
color: #333;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.social-link[data-platform="discord"]:hover {
|
|
83
|
+
color: #5865F2;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.social-link[data-platform="x"]:hover {
|
|
87
|
+
color: #000;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/* Dark mode adjustments for social links */
|
|
91
|
+
@media (prefers-color-scheme: dark) {
|
|
92
|
+
.social-link[data-platform="github"]:hover {
|
|
93
|
+
color: #f0f6fc;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.social-link[data-platform="x"]:hover {
|
|
97
|
+
color: #fff;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
46
101
|
.logo-image {
|
|
47
102
|
width: 24px;
|
|
48
103
|
height: 24px;
|
vibe_surf/tools/file_system.py
CHANGED
|
@@ -311,6 +311,14 @@ class CustomFileSystem(FileSystem):
|
|
|
311
311
|
except Exception as e:
|
|
312
312
|
return f"Error: Could not write to file '{full_filename}'. {str(e)}"
|
|
313
313
|
|
|
314
|
+
async def save_extracted_content(self, content: str) -> str:
|
|
315
|
+
"""Save extracted content to a numbered file"""
|
|
316
|
+
initial_filename = f'extracted_content_{self.extracted_content_count}'
|
|
317
|
+
extracted_filename = f'{initial_filename}.md'
|
|
318
|
+
await self.write_file(initial_filename, content)
|
|
319
|
+
self.extracted_content_count += 1
|
|
320
|
+
return f'Extracted content saved to file {extracted_filename} successfully.'
|
|
321
|
+
|
|
314
322
|
async def list_directory(self, directory_path: str = "") -> str:
|
|
315
323
|
"""List contents of a directory within the file system (data_dir only)"""
|
|
316
324
|
try:
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import pdb
|
|
3
|
+
|
|
4
|
+
import dashscope
|
|
5
|
+
from typing import Optional
|
|
6
|
+
from vibe_surf.logger import get_logger
|
|
7
|
+
|
|
8
|
+
logger = get_logger(__name__)
|
|
9
|
+
|
|
10
|
+
class QwenASR:
|
|
11
|
+
def __init__(self, model="qwen3-asr-flash", api_key: Optional[str] = None):
|
|
12
|
+
dashscope.api_key = api_key or os.getenv("DASHSCOPE_API_KEY")
|
|
13
|
+
self.model = model
|
|
14
|
+
|
|
15
|
+
def asr(self, wav_url: str, context=""):
|
|
16
|
+
if not wav_url.startswith("http"):
|
|
17
|
+
assert os.path.exists(wav_url), f"{wav_url} not exists!"
|
|
18
|
+
wav_url = f"file://{wav_url}"
|
|
19
|
+
|
|
20
|
+
try:
|
|
21
|
+
messages = [
|
|
22
|
+
{
|
|
23
|
+
"role": "system",
|
|
24
|
+
"content": [
|
|
25
|
+
{"text": context},
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"role": "user",
|
|
30
|
+
"content": [
|
|
31
|
+
{"audio": wav_url},
|
|
32
|
+
]
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
response = dashscope.MultiModalConversation.call(
|
|
36
|
+
model=self.model,
|
|
37
|
+
messages=messages,
|
|
38
|
+
result_format="message",
|
|
39
|
+
asr_options={
|
|
40
|
+
"enable_lid": True,
|
|
41
|
+
"enable_itn": False
|
|
42
|
+
}
|
|
43
|
+
)
|
|
44
|
+
if response.status_code != 200:
|
|
45
|
+
raise Exception(f"http status_code: {response.status_code} {response}")
|
|
46
|
+
output = response['output']['choices'][0]
|
|
47
|
+
if output['finish_reason'] not in ('stop', 'function_call'):
|
|
48
|
+
logger.warning(f'{self.model} finish with error...\n{response}')
|
|
49
|
+
return ""
|
|
50
|
+
recog_text = output["message"]["content"][0]["text"]
|
|
51
|
+
return recog_text
|
|
52
|
+
except Exception as e:
|
|
53
|
+
logger.warning(str(e))
|
|
54
|
+
return ""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vibesurf
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.20
|
|
4
4
|
Summary: VibeSurf: A powerful browser assistant for vibe surfing
|
|
5
5
|
Author: Shao Warm
|
|
6
6
|
License: Apache-2.0
|
|
@@ -37,11 +37,12 @@ Requires-Dist: aiosqlite>=0.21.0
|
|
|
37
37
|
Requires-Dist: rich>=13.0.0
|
|
38
38
|
Requires-Dist: greenlet>=3.2.4
|
|
39
39
|
Requires-Dist: getmac>=0.9.5
|
|
40
|
-
Requires-Dist: browser-use==0.7.
|
|
40
|
+
Requires-Dist: browser-use==0.7.8
|
|
41
41
|
Requires-Dist: markdown-pdf>=1.9
|
|
42
42
|
Requires-Dist: nanoid>=2.0.0
|
|
43
43
|
Requires-Dist: markdownify>=1.2.0
|
|
44
44
|
Requires-Dist: pathvalidate>=3.3.1
|
|
45
|
+
Requires-Dist: dashscope>=1.24.5
|
|
45
46
|
Dynamic: license-file
|
|
46
47
|
|
|
47
48
|
# VibeSurf: A powerful browser assistant for vibe surfing
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
vibe_surf/__init__.py,sha256=WtduuMFGauMD_9dpk4fnRnLTAP6ka9Lfu0feAFNzLfo,339
|
|
2
|
-
vibe_surf/_version.py,sha256=
|
|
2
|
+
vibe_surf/_version.py,sha256=P88Jfo9OvOr8LB0vHFqLUwFR7A0eE281KxEewbcCSBc,706
|
|
3
3
|
vibe_surf/cli.py,sha256=pbep2dBeQqralZ8AggkH4h2nayBarbdN8lhZxo35gNU,16689
|
|
4
4
|
vibe_surf/common.py,sha256=_WWMxen5wFwzUjEShn3yDVC1OBFUiJ6Vccadi6tuG6w,1215
|
|
5
5
|
vibe_surf/logger.py,sha256=k53MFA96QX6t9OfcOf1Zws8PP0OOqjVJfhUD3Do9lKw,3043
|
|
6
6
|
vibe_surf/agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
vibe_surf/agents/browser_use_agent.py,sha256=qmm3TAVzEYjvOvSQEa5xUZOgpBOR_8qePME8BjLjOd0,45951
|
|
8
|
-
vibe_surf/agents/report_writer_agent.py,sha256=
|
|
8
|
+
vibe_surf/agents/report_writer_agent.py,sha256=pCF2k6VLyO-sSviGBqqIyVD3SLqaZtSqiW3kvNfPY1I,20967
|
|
9
9
|
vibe_surf/agents/vibe_surf_agent.py,sha256=i7O4Djw3Pd1ijwbkGbXkQqO1y0RunlelCqajjfJFfaQ,73687
|
|
10
10
|
vibe_surf/agents/views.py,sha256=yHjNJloa-aofVTGyuRy08tBYP_Y3XLqt1DUWOUmHRng,4825
|
|
11
11
|
vibe_surf/agents/prompts/__init__.py,sha256=l4ieA0D8kLJthyNN85FKLNe4ExBa3stY3l-aImLDRD0,36
|
|
@@ -29,6 +29,7 @@ vibe_surf/backend/database/queries.py,sha256=WEXZBNHQ1LWWR4Bv-49LMs8mZOkapFBx2_v
|
|
|
29
29
|
vibe_surf/backend/database/schemas.py,sha256=OPnpRKwYG1Cu8geJ6pajiEDF8x8mRestXnAfI4Gy18w,3402
|
|
30
30
|
vibe_surf/backend/database/migrations/v001_initial_schema.sql,sha256=MC2fa1WHUEhHhdOTxz0qB4RI7JdGRpiGXZ77ytl3LRQ,4345
|
|
31
31
|
vibe_surf/backend/database/migrations/v002_add_agent_mode.sql,sha256=jKnW28HsphUeU9kudEx9QaLnUh8swmmOt-hFsZJay24,251
|
|
32
|
+
vibe_surf/backend/database/migrations/v003_fix_task_status_case.sql,sha256=npzRgEnKymTzvb-nOZHtycjVyWX2Dx0tCEtrZJfcujg,580
|
|
32
33
|
vibe_surf/backend/utils/__init__.py,sha256=V8leMFp7apAglUAoCHPZrNNcRHthSLYIudIJE5qwjb0,184
|
|
33
34
|
vibe_surf/backend/utils/encryption.py,sha256=CjLNh_n0Luhfa-6BB-icfzkiiDqj5b4Gu6MADU3p2eM,3754
|
|
34
35
|
vibe_surf/backend/utils/llm_factory.py,sha256=mNy8o3sw7vYJ8gwiTsrgXbG7Ri_B11ylE4KGcfHULp8,8972
|
|
@@ -46,7 +47,7 @@ vibe_surf/chrome_extension/content.js,sha256=q6JRpmHAEdPWNnFSIqoPv8eBm0T574c3H5h
|
|
|
46
47
|
vibe_surf/chrome_extension/dev-reload.js,sha256=xQpi-1Ekb5P8Ogsm6rUK09QzxafwH0H409zBKmaUFNw,1790
|
|
47
48
|
vibe_surf/chrome_extension/manifest.json,sha256=B08nHuU-bPc-pUr30Y-of39TjMlrE7D5gP2sZjZ8CrE,1142
|
|
48
49
|
vibe_surf/chrome_extension/popup.html,sha256=n3dI_-WbILm0q8O_za6xX0WvOofz5lwT_7YXs0u9RAE,4248
|
|
49
|
-
vibe_surf/chrome_extension/sidepanel.html,sha256=
|
|
50
|
+
vibe_surf/chrome_extension/sidepanel.html,sha256=UuFTM_32LU3aYpem8o0muhW4FvOdu-7uyfY-tHgArXw,29639
|
|
50
51
|
vibe_surf/chrome_extension/icons/convert-svg.js,sha256=j137nZA7MJK35NtrwWff8yb3UEKa5XTAvnV6EjY-CVI,953
|
|
51
52
|
vibe_surf/chrome_extension/icons/logo-preview.html,sha256=hrgU45uziKHKIb8be9P4ZrZJyGggWnm2M5oEu89V5sM,6962
|
|
52
53
|
vibe_surf/chrome_extension/icons/logo.icns,sha256=ZzY1eIKF4dNhNW4CeE1UBQloxNVC7bQx3qcClo3CnMQ,1569615
|
|
@@ -66,7 +67,7 @@ vibe_surf/chrome_extension/styles/base.css,sha256=d8nt7Wej1r57G6pnBIGKEVkepFxlq8
|
|
|
66
67
|
vibe_surf/chrome_extension/styles/components.css,sha256=cbpYgT1ujG11axRa9xnHizgm4wfrpSzq_nkUOdfNZ0A,18495
|
|
67
68
|
vibe_surf/chrome_extension/styles/history-modal.css,sha256=xCg0EPz1N4kg47jnz9q9E1M4zGag8lJMt_msAOkZi3M,16583
|
|
68
69
|
vibe_surf/chrome_extension/styles/input.css,sha256=7gmWfXbm3CHPEPHtzwSwAtGeNGJtzrect7yYy57rnEo,10745
|
|
69
|
-
vibe_surf/chrome_extension/styles/layout.css,sha256=
|
|
70
|
+
vibe_surf/chrome_extension/styles/layout.css,sha256=ejX3qZnPrObzynf3XLwqurLI1ZaGKx41dj9ypdeBP28,4522
|
|
70
71
|
vibe_surf/chrome_extension/styles/responsive.css,sha256=a_SFX-PeOcenG4xMeoru5XFnnXdf0YhEyRzvTVVZHdI,8529
|
|
71
72
|
vibe_surf/chrome_extension/styles/settings-environment.css,sha256=OzgezmfZZ_yD60Jy9Uiq83mDmMCfk2dPPcZISb9Eqd4,3390
|
|
72
73
|
vibe_surf/chrome_extension/styles/settings-forms.css,sha256=alBDabKacyxw0kf116Lr8WU4bjdWqTDht01MtIRMjj4,6970
|
|
@@ -79,14 +80,15 @@ vibe_surf/llm/__init__.py,sha256=_vDVPo6STf343p1SgMQrF5023hicAx0g83pK2Gbk4Ek,601
|
|
|
79
80
|
vibe_surf/llm/openai_compatible.py,sha256=8v0LW_-ZoKv4gcO--6_SmU_BLF8XCJaiPxZ6kXFgM4I,14998
|
|
80
81
|
vibe_surf/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
81
82
|
vibe_surf/tools/browser_use_tools.py,sha256=gWiBj-YPz7kQYi0yekuvpPQ2Z2-EBLuutF6rf71iOcM,28781
|
|
82
|
-
vibe_surf/tools/file_system.py,sha256=
|
|
83
|
+
vibe_surf/tools/file_system.py,sha256=PKRHe3EuOl78zzrA4SFiz1DDJotzx7OmszZqQMipQ-k,19317
|
|
83
84
|
vibe_surf/tools/mcp_client.py,sha256=OeCoTgyx4MoY7JxXndK6pGHIoyFOhf5r7XCbx25y1Ec,2446
|
|
84
85
|
vibe_surf/tools/report_writer_tools.py,sha256=sUqUFr-_Rs8RJ0Bs77Hrp07kNwRIvHv7ErzSPYSlbTg,705
|
|
85
86
|
vibe_surf/tools/vibesurf_tools.py,sha256=VVhM2IZOXwpGvJ3v9jTXFHmxTxF2jAzhrwqFqxFVuX4,29976
|
|
86
87
|
vibe_surf/tools/views.py,sha256=aPoabrXOCrn5vPCAauMKYvpyP9n0qC2xKn1IbjAGXwE,4218
|
|
87
|
-
|
|
88
|
-
vibesurf-0.1.
|
|
89
|
-
vibesurf-0.1.
|
|
90
|
-
vibesurf-0.1.
|
|
91
|
-
vibesurf-0.1.
|
|
92
|
-
vibesurf-0.1.
|
|
88
|
+
vibe_surf/tools/voice_asr.py,sha256=iBMzPSXYDtAbalr-lwzsGVKQPbR0Cj2lvsKSLKyEcU8,1790
|
|
89
|
+
vibesurf-0.1.20.dist-info/licenses/LICENSE,sha256=czn6QYya0-jhLnStD9JqnMS-hwP5wRByipkrGTvoXLI,11355
|
|
90
|
+
vibesurf-0.1.20.dist-info/METADATA,sha256=EvLwKDgeGFER75FSHwSj8koN5g02vwROXU-fl0rHXm0,5346
|
|
91
|
+
vibesurf-0.1.20.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
92
|
+
vibesurf-0.1.20.dist-info/entry_points.txt,sha256=UxqpvMocL-PR33S6vLF2OmXn-kVzM-DneMeZeHcPMM8,48
|
|
93
|
+
vibesurf-0.1.20.dist-info/top_level.txt,sha256=VPZGHqSb6EEqcJ4ZX6bHIuWfon5f6HXl3c7BYpbRqnY,10
|
|
94
|
+
vibesurf-0.1.20.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|