pycoze 0.1.388__tar.gz → 0.1.390__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 (43) hide show
  1. {pycoze-0.1.388 → pycoze-0.1.390}/PKG-INFO +1 -1
  2. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/bot/chat_base.py +30 -24
  3. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze.egg-info/PKG-INFO +1 -1
  4. {pycoze-0.1.388 → pycoze-0.1.390}/setup.py +1 -1
  5. {pycoze-0.1.388 → pycoze-0.1.390}/LICENSE +0 -0
  6. {pycoze-0.1.388 → pycoze-0.1.390}/README.md +0 -0
  7. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/__init__.py +0 -0
  8. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ai/__init__.py +0 -0
  9. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ai/llm/__init__.py +0 -0
  10. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ai/llm/chat.py +0 -0
  11. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ai/llm/text_to_image_prompt.py +0 -0
  12. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ai/vram_reserve.py +0 -0
  13. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/api/__init__.py +0 -0
  14. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/api/lib/__init__.py +0 -0
  15. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/api/lib/tab.py +0 -0
  16. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/api/lib/view.py +0 -0
  17. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/api/lib/web.py +0 -0
  18. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/api/lib/window.py +0 -0
  19. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/bot/__init__.py +0 -0
  20. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/bot/chat.py +0 -0
  21. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/bot/lib.py +0 -0
  22. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/bot/message.py +0 -0
  23. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/bot/prompt.md +0 -0
  24. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/bot/tools.py +0 -0
  25. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/reference/__init__.py +0 -0
  26. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/reference/bot.py +0 -0
  27. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/reference/lib.py +0 -0
  28. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/reference/tool.py +0 -0
  29. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/reference/workflow.py +0 -0
  30. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ui/__init__.py +0 -0
  31. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ui/base.py +0 -0
  32. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ui/color.py +0 -0
  33. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ui/typ.py +0 -0
  34. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/ui/ui_def.py +0 -0
  35. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/utils/__init__.py +0 -0
  36. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/utils/arg.py +0 -0
  37. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/utils/env.py +0 -0
  38. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/utils/socket.py +0 -0
  39. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze/utils/text_or_file.py +0 -0
  40. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze.egg-info/SOURCES.txt +0 -0
  41. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze.egg-info/dependency_links.txt +0 -0
  42. {pycoze-0.1.388 → pycoze-0.1.390}/pycoze.egg-info/top_level.txt +0 -0
  43. {pycoze-0.1.388 → pycoze-0.1.390}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pycoze
3
- Version: 0.1.388
3
+ Version: 0.1.390
4
4
  Summary: Package for pycoze only!
5
5
  Author: Yuan Jie Xiong
6
6
  Author-email: aiqqqqqqq@qq.com
@@ -19,32 +19,35 @@ def guess_files_in_message(cwd: str, user_message: str) -> List[str]:
19
19
  return []
20
20
 
21
21
 
22
- def user_task_prompt(conversation_history, cwd, user_input: str, programmer_mode: bool, opened_files: List[str]):
22
+ def format_content(cwd, potential_paths, conversation_history):
23
+ content = []
24
+ for file_path in potential_paths:
25
+ file_path = resolve_relative_path(cwd, file_path)
26
+ if os.path.isfile(file_path):
27
+ file_marker = f"[[{file_path}]]'"
28
+ file_content = read_local_file(file_path)
29
+ if not any(
30
+ file_marker in msg["content"] for msg in conversation_history
31
+ ):
32
+ content.append(f"{file_marker}\n{file_content}")
33
+ return (
34
+ "Partial contents of files are as follows:" + "\n".join(content)
35
+ if content
36
+ else ""
37
+ )
38
+
39
+ def generate_user_task_prompt(conversation_history, cwd, user_input: str, programmer_mode: bool, active_file:str, opened_files: List[str]):
23
40
  if programmer_mode:
24
41
  potential_paths = guess_files_in_message(cwd, user_input)
25
42
 
26
- exist_files = get_formatted_filelist_str(cwd, True, 200)
27
- exist_files_str = f"Files in current directory:\n{exist_files}" if exist_files else ""
43
+ existing_files = get_formatted_filelist_str(cwd, True, 200)
28
44
 
29
- opened_files_str = (
30
- f"Opened files:\n{'\n'.join(opened_files)}" if opened_files else ""
31
- )
45
+ active_file_str = f"Currently viewing: {active_file}" if active_file else ""
32
46
 
33
- content = []
34
- for file_path in potential_paths:
35
- file_path = resolve_relative_path(cwd, file_path)
36
- if os.path.isfile(file_path):
37
- file_marker = f"[[{file_path}]]'"
38
- file_content = read_local_file(file_path)
39
- if not any(
40
- file_marker in msg["content"] for msg in conversation_history
41
- ):
42
- content.append(f"{file_marker}\n{file_content}")
43
- content_str = (
44
- "Partial contents of files are as follows:" + "\n".join(content)
45
- if content
46
- else ""
47
+ opened_files_str = (
48
+ f"Open tabs:\n{'\n'.join(opened_files)}" if opened_files else ""
47
49
  )
50
+ existing_files_str = f"Files in directory:\n{existing_files}" if existing_files else ""
48
51
  return f"""<task>
49
52
  {user_input}
50
53
  </task>
@@ -52,11 +55,13 @@ def user_task_prompt(conversation_history, cwd, user_input: str, programmer_mode
52
55
  <environment_details>
53
56
  Current working directory: {cwd}
54
57
 
55
- {exist_files_str}
58
+ {active_file_str}
56
59
 
57
60
  {opened_files_str}
58
61
 
59
- {content_str}
62
+ {existing_files_str}
63
+
64
+ {format_content(cwd, potential_paths, conversation_history)}
60
65
 
61
66
  </environment_details>
62
67
  """
@@ -152,6 +157,7 @@ async def handle_user_inputs(
152
157
  programmer_mode = bot_setting["programmerMode"]
153
158
  show_tool_results = bot_setting["showToolResults"]
154
159
  opened_files = bot_setting["openedFiles"]
160
+ active_file = bot_setting["activeFile"]
155
161
 
156
162
  start_new_stream = {
157
163
  "value": False
@@ -164,8 +170,8 @@ async def handle_user_inputs(
164
170
  conversation_history.append(
165
171
  {
166
172
  "role": "user",
167
- "content": user_task_prompt(
168
- conversation_history, cwd, user_input, programmer_mode, opened_files
173
+ "content": generate_user_task_prompt(
174
+ conversation_history, cwd, user_input, programmer_mode, active_file, opened_files
169
175
  ),
170
176
  }
171
177
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pycoze
3
- Version: 0.1.388
3
+ Version: 0.1.390
4
4
  Summary: Package for pycoze only!
5
5
  Author: Yuan Jie Xiong
6
6
  Author-email: aiqqqqqqq@qq.com
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="pycoze",
5
- version="0.1.388",
5
+ version="0.1.390",
6
6
  packages=find_packages(),
7
7
  install_requires=[],
8
8
  author="Yuan Jie Xiong",
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