vibesurf 0.1.14__py3-none-any.whl → 0.1.15__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 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.14'
32
- __version_tuple__ = version_tuple = (0, 1, 14)
31
+ __version__ = version = '0.1.15'
32
+ __version_tuple__ = version_tuple = (0, 1, 15)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -259,10 +259,10 @@ class BrowserUseAgent(Agent):
259
259
  '⚠️ DeepSeek models do not support use_vision=True yet. Setting use_vision=False for now...')
260
260
  self.settings.use_vision = False
261
261
 
262
- if 'kimi-k2' in self.llm.model.lower():
263
- self.logger.warning(
264
- '⚠️ Kimi-k2 models do not support use_vision=True yet. Setting use_vision=False for now...')
265
- self.settings.use_vision = False
262
+ # if 'kimi-k2' in self.llm.model.lower():
263
+ # self.logger.warning(
264
+ # '⚠️ Kimi-k2 models do not support use_vision=True yet. Setting use_vision=False for now...')
265
+ # self.settings.use_vision = False
266
266
 
267
267
  # Handle users trying to use use_vision=True with XAI models
268
268
  if 'grok' in self.llm.model.lower():
@@ -8,7 +8,7 @@ You are VibeSurf Agent, a professional AI browser assistant developed by [WarmSh
8
8
 
9
9
  You operate using with followed primary agents for collaboration:
10
10
 
11
- 1. **Browser Automation**: Execute web tasks using `execute_browser_use_agent_tasks`
11
+ 1. **Browser Automation**: Execute web tasks using `execute_browser_use_agent`
12
12
  - **Parallel Task Processing**: Execute multiple independent browser tasks simultaneously
13
13
  - **Efficiency Optimization**: Dramatically reduce execution time for multi-step workflows
14
14
  - **Intelligent Task Distribution**: Automatically identify parallelize subtasks
@@ -512,7 +512,8 @@ async def _browser_task_execution_node_impl(state: VibeSurfState) -> VibeSurfSta
512
512
  task_count = len(state.browser_tasks)
513
513
  if task_count == 0:
514
514
  raise ValueError("No browser tasks assigned. Please assign 1 task at least.")
515
-
515
+ if not state.browser_results:
516
+ state.browser_results = []
516
517
  if task_count <= 1:
517
518
  # Single task execution
518
519
  logger.info("📝 Using single execution for single task")
@@ -24,7 +24,7 @@ Example usage:
24
24
  temperature=0,
25
25
  )
26
26
  """
27
-
27
+ import pdb
28
28
  from dataclasses import dataclass
29
29
  from typing import Any, TypeVar, overload
30
30
  from pydantic import BaseModel
@@ -223,9 +223,11 @@ class ChatOpenAICompatible(ChatOpenAI):
223
223
  """
224
224
  # If this is not a special model or no structured output is requested,
225
225
  # use the parent implementation directly
226
+ if self._is_qwen_model() or self._is_kimi_model():
227
+ self.add_schema_to_system_prompt = True
228
+
226
229
  if not (self._is_gemini_model() or self._is_kimi_model()) or output_format is None:
227
230
  return await super().ainvoke(messages, output_format)
228
-
229
231
  openai_messages = OpenAIMessageSerializer.serialize_messages(messages)
230
232
 
231
233
  try:
@@ -269,9 +271,8 @@ class ChatOpenAICompatible(ChatOpenAI):
269
271
  )
270
272
 
271
273
  else:
272
- original_schema = SchemaOptimizer.create_optimized_json_schema(output_format)
273
-
274
274
  # Apply appropriate schema fix based on model type
275
+ original_schema = SchemaOptimizer.create_optimized_json_schema(output_format)
275
276
  if self._is_gemini_model():
276
277
  logger.debug(f"🔧 Applying Gemini schema fixes for model: {self.model}")
277
278
  fixed_schema = self._fix_gemini_schema(original_schema)
@@ -105,13 +105,15 @@ class VibeSurfTools:
105
105
 
106
106
  def _register_todo_actions(self):
107
107
  @self.registry.action(
108
- 'Generate a new todo.md file with the provided todo items in markdown checkbox format.'
108
+ 'Generate a new todo.md file with the provided todo items in markdown checkbox format.',
109
+ param_model=TodoGenerateAction
109
110
  )
110
- async def generate_todos(todo_items: list[str], file_system: CustomFileSystem):
111
+ async def generate_todos(params: TodoGenerateAction, file_system: CustomFileSystem):
111
112
  """Generate a new todo.md file with todo items in markdown format"""
112
113
  try:
113
114
  # Format todo items as markdown checkboxes
114
115
  formatted_items = []
116
+ todo_items = params.todo_items
115
117
  for item in todo_items:
116
118
  # Clean item and ensure it doesn't already have checkbox format
117
119
  clean_item = item.strip()
vibe_surf/tools/views.py CHANGED
@@ -99,7 +99,6 @@ class TodoModification(BaseModel):
99
99
  description='Text of the todo item to operate on',
100
100
  )
101
101
 
102
-
103
102
  class TodoModifyAction(BaseModel):
104
103
  """Parameters for modifying todo items"""
105
104
  modifications: list[TodoModification] = Field(
@@ -108,6 +107,7 @@ class TodoModifyAction(BaseModel):
108
107
  )
109
108
 
110
109
 
110
+
111
111
  class VibeSurfDoneAction(BaseModel):
112
112
  """Parameters for task completion output"""
113
113
  response: str = Field(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: vibesurf
3
- Version: 0.1.14
3
+ Version: 0.1.15
4
4
  Summary: VibeSurf: A powerful browser assistant for vibe surfing
5
5
  Author: Shao Warm
6
6
  License: Apache-2.0
@@ -1,16 +1,16 @@
1
1
  vibe_surf/__init__.py,sha256=WtduuMFGauMD_9dpk4fnRnLTAP6ka9Lfu0feAFNzLfo,339
2
- vibe_surf/_version.py,sha256=1asLxKIxr0ym19WewGl0URtkfnEuN7mK8ZckB9dZw6Q,706
2
+ vibe_surf/_version.py,sha256=HPqQHR9pVxIxlFt4vovkyoe7k6UO3ag2isBN2lHFL8g,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
- vibe_surf/agents/browser_use_agent.py,sha256=1gbljYbB8drL_vZm2jFs5d3cZHWfB6CRIT6blwiPvhs,46024
7
+ vibe_surf/agents/browser_use_agent.py,sha256=R8myQ0c9YsJve30yMfIRgz2IzOoHUxrNTtXj8x0YHiw,46032
8
8
  vibe_surf/agents/report_writer_agent.py,sha256=tKELps-FjZq06OKXpoyS-zJzvfdYXM6UnXDrR2oZk6M,20970
9
- vibe_surf/agents/vibe_surf_agent.py,sha256=GRCqf198nqvS5HRu5Dv89qjiS-2Jn39KJR1r1Ih6vJQ,73115
9
+ vibe_surf/agents/vibe_surf_agent.py,sha256=-pC7MSOd7I21JbLN0yY69RNHRfTFt-STfA4j6jIyrS4,73191
10
10
  vibe_surf/agents/views.py,sha256=bcVOxd9On2lJ4NSar5RqP1V7Nw_RBtkHJPE-f2kVdRA,4750
11
11
  vibe_surf/agents/prompts/__init__.py,sha256=l4ieA0D8kLJthyNN85FKLNe4ExBa3stY3l-aImLDRD0,36
12
12
  vibe_surf/agents/prompts/report_writer_prompt.py,sha256=sZE8MUT1CDLmRzbnbEQzAvTwJjpITgh2Q8g1_eXmkzE,4454
13
- vibe_surf/agents/prompts/vibe_surf_prompt.py,sha256=8bC7IJNbK7_jLbxjVsta3urZIi-FLCQbfSLQEjnkeLQ,5579
13
+ vibe_surf/agents/prompts/vibe_surf_prompt.py,sha256=gn8Q234zwtUxVzduzmINmqV-iooE-aJ9u2-yXQ3Wo6M,5573
14
14
  vibe_surf/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
15
  vibe_surf/backend/llm_config.py,sha256=9V8Gg065TQALbOKQnOqFWd8RzOJjegOD8w6YOf90Q7Y,5036
16
16
  vibe_surf/backend/main.py,sha256=nZDs_FkYU7NdqSm1O4OwHJslYIJZL1Gr3CEKa8ByaEY,7178
@@ -77,17 +77,17 @@ vibe_surf/chrome_extension/styles/settings-responsive.css,sha256=jLE0yG15n2aI6_6
77
77
  vibe_surf/chrome_extension/styles/settings-utilities.css,sha256=3PuQS2857kg83d5erLbLdo_7J95-qV-qyNWS5M-w1oQ,505
78
78
  vibe_surf/chrome_extension/styles/variables.css,sha256=VbFJ8L76AaJUqb6gCz9jEG_V6OX4YJa65I2iyeNJIw4,1411
79
79
  vibe_surf/llm/__init__.py,sha256=_vDVPo6STf343p1SgMQrF5023hicAx0g83pK2Gbk4Ek,601
80
- vibe_surf/llm/openai_compatible.py,sha256=uMnWcoZlBt_hMYgIkWFrwJmMH2wcswYkSLMPRcRd2dk,14854
80
+ vibe_surf/llm/openai_compatible.py,sha256=rdJTGXW-68yTho1hgzhkjMAocQOK0p_GSl8PmAx_C8Y,14974
81
81
  vibe_surf/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
82
82
  vibe_surf/tools/browser_use_tools.py,sha256=gWiBj-YPz7kQYi0yekuvpPQ2Z2-EBLuutF6rf71iOcM,28781
83
83
  vibe_surf/tools/file_system.py,sha256=gVdTd6qUfoyVfZMzmX9DXTyBbfXY56jVhUqtfm1qqps,18878
84
84
  vibe_surf/tools/mcp_client.py,sha256=OeCoTgyx4MoY7JxXndK6pGHIoyFOhf5r7XCbx25y1Ec,2446
85
85
  vibe_surf/tools/report_writer_tools.py,sha256=sUqUFr-_Rs8RJ0Bs77Hrp07kNwRIvHv7ErzSPYSlbTg,705
86
- vibe_surf/tools/vibesurf_tools.py,sha256=uSsymefr-SrVAuDtvNGsB0Am4QeTuHuL-4KJABQW8dg,29880
87
- vibe_surf/tools/views.py,sha256=KwzzXXZJqyW1oyszA0Z4buDDqAm-6PXsCAB0nB7z_sQ,4218
88
- vibesurf-0.1.14.dist-info/licenses/LICENSE,sha256=czn6QYya0-jhLnStD9JqnMS-hwP5wRByipkrGTvoXLI,11355
89
- vibesurf-0.1.14.dist-info/METADATA,sha256=KavOgNCWdgIyphzqOTx8f268TtR0Lws1VPbKd8cA9pE,5313
90
- vibesurf-0.1.14.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
91
- vibesurf-0.1.14.dist-info/entry_points.txt,sha256=UxqpvMocL-PR33S6vLF2OmXn-kVzM-DneMeZeHcPMM8,48
92
- vibesurf-0.1.14.dist-info/top_level.txt,sha256=VPZGHqSb6EEqcJ4ZX6bHIuWfon5f6HXl3c7BYpbRqnY,10
93
- vibesurf-0.1.14.dist-info/RECORD,,
86
+ vibe_surf/tools/vibesurf_tools.py,sha256=VVhM2IZOXwpGvJ3v9jTXFHmxTxF2jAzhrwqFqxFVuX4,29976
87
+ vibe_surf/tools/views.py,sha256=aPoabrXOCrn5vPCAauMKYvpyP9n0qC2xKn1IbjAGXwE,4218
88
+ vibesurf-0.1.15.dist-info/licenses/LICENSE,sha256=czn6QYya0-jhLnStD9JqnMS-hwP5wRByipkrGTvoXLI,11355
89
+ vibesurf-0.1.15.dist-info/METADATA,sha256=Cy00eGyShMlmGt-aOLG4FBbh-JBmqv1tWBZFdTgUTx8,5313
90
+ vibesurf-0.1.15.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
91
+ vibesurf-0.1.15.dist-info/entry_points.txt,sha256=UxqpvMocL-PR33S6vLF2OmXn-kVzM-DneMeZeHcPMM8,48
92
+ vibesurf-0.1.15.dist-info/top_level.txt,sha256=VPZGHqSb6EEqcJ4ZX6bHIuWfon5f6HXl3c7BYpbRqnY,10
93
+ vibesurf-0.1.15.dist-info/RECORD,,