beswarm 0.1.40__tar.gz → 0.1.42__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 (139) hide show
  1. {beswarm-0.1.40 → beswarm-0.1.42}/PKG-INFO +6 -1
  2. {beswarm-0.1.40 → beswarm-0.1.42}/README.md +5 -0
  3. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/setup.py +1 -1
  4. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/chatgpt.py +7 -2
  5. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/click.py +2 -1
  6. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm.egg-info/PKG-INFO +6 -1
  7. {beswarm-0.1.40 → beswarm-0.1.42}/pyproject.toml +1 -1
  8. {beswarm-0.1.40 → beswarm-0.1.42}/MANIFEST.in +0 -0
  9. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/__init__.py +0 -0
  10. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/main.py +0 -0
  11. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/__init__.py +0 -0
  12. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/__init__.py +0 -0
  13. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/log_config.py +0 -0
  14. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/models.py +0 -0
  15. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/request.py +0 -0
  16. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/response.py +0 -0
  17. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/test/test_base_api.py +0 -0
  18. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/test/test_geminimask.py +0 -0
  19. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/test/test_image.py +0 -0
  20. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/test/test_payload.py +0 -0
  21. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/core/utils.py +0 -0
  22. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/__init__.py +0 -0
  23. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/audio.py +0 -0
  24. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/base.py +0 -0
  25. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/claude.py +0 -0
  26. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/duckduckgo.py +0 -0
  27. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/gemini.py +0 -0
  28. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/groq.py +0 -0
  29. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/models/vertex.py +0 -0
  30. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/__init__.py +0 -0
  31. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/arXiv.py +0 -0
  32. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/config.py +0 -0
  33. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/excute_command.py +0 -0
  34. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/get_time.py +0 -0
  35. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/image.py +0 -0
  36. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/list_directory.py +0 -0
  37. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/read_file.py +0 -0
  38. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/registry.py +0 -0
  39. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/run_python.py +0 -0
  40. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/websearch.py +0 -0
  41. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/plugins/write_file.py +0 -0
  42. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/prompt/__init__.py +0 -0
  43. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/prompt/agent.py +0 -0
  44. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/utils/__init__.py +0 -0
  45. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/utils/prompt.py +0 -0
  46. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/src/aient/utils/scripts.py +0 -0
  47. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/chatgpt.py +0 -0
  48. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/claude.py +0 -0
  49. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test.py +0 -0
  50. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_API.py +0 -0
  51. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_Deepbricks.py +0 -0
  52. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_Web_crawler.py +0 -0
  53. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_aiwaves.py +0 -0
  54. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_aiwaves_arxiv.py +0 -0
  55. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_ask_gemini.py +0 -0
  56. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_class.py +0 -0
  57. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_claude.py +0 -0
  58. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_claude_zh_char.py +0 -0
  59. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_ddg_search.py +0 -0
  60. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_download_pdf.py +0 -0
  61. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_gemini.py +0 -0
  62. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_get_token_dict.py +0 -0
  63. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_google_search.py +0 -0
  64. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_jieba.py +0 -0
  65. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_json.py +0 -0
  66. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_logging.py +0 -0
  67. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_ollama.py +0 -0
  68. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_plugin.py +0 -0
  69. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_py_run.py +0 -0
  70. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_requests.py +0 -0
  71. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_search.py +0 -0
  72. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_tikitoken.py +0 -0
  73. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_token.py +0 -0
  74. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_url.py +0 -0
  75. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_whisper.py +0 -0
  76. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_wildcard.py +0 -0
  77. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/aient/test/test_yjh.py +0 -0
  78. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/README.md +0 -0
  79. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
  80. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/c-tags.scm +0 -0
  81. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
  82. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
  83. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
  84. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
  85. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/d-tags.scm +0 -0
  86. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
  87. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
  88. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
  89. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
  90. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
  91. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/go-tags.scm +0 -0
  92. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/java-tags.scm +0 -0
  93. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
  94. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
  95. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
  96. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
  97. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/python-tags.scm +0 -0
  98. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/r-tags.scm +0 -0
  99. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
  100. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
  101. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
  102. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
  103. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
  104. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
  105. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/README.md +0 -0
  106. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/c-tags.scm +0 -0
  107. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
  108. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/cpp-tags.scm +0 -0
  109. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/dart-tags.scm +0 -0
  110. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/elisp-tags.scm +0 -0
  111. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/elixir-tags.scm +0 -0
  112. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/elm-tags.scm +0 -0
  113. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/go-tags.scm +0 -0
  114. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/hcl-tags.scm +0 -0
  115. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/java-tags.scm +0 -0
  116. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/javascript-tags.scm +0 -0
  117. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
  118. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
  119. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/php-tags.scm +0 -0
  120. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/python-tags.scm +0 -0
  121. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/ql-tags.scm +0 -0
  122. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/ruby-tags.scm +0 -0
  123. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/rust-tags.scm +0 -0
  124. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/scala-tags.scm +0 -0
  125. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/queries/tree-sitter-languages/typescript-tags.scm +0 -0
  126. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/UIworker.py +0 -0
  127. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/__init__.py +0 -0
  128. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/edit_file.py +0 -0
  129. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/planner.py +0 -0
  130. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/repomap.py +0 -0
  131. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/search_arxiv.py +0 -0
  132. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/think.py +0 -0
  133. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/tools/worker.py +0 -0
  134. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm/utils.py +0 -0
  135. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm.egg-info/SOURCES.txt +0 -0
  136. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm.egg-info/dependency_links.txt +0 -0
  137. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm.egg-info/requires.txt +0 -0
  138. {beswarm-0.1.40 → beswarm-0.1.42}/beswarm.egg-info/top_level.txt +0 -0
  139. {beswarm-0.1.40 → beswarm-0.1.42}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: beswarm
3
- Version: 0.1.40
3
+ Version: 0.1.42
4
4
  Summary: MAS
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -70,6 +70,7 @@ cd ~/Downloads/GitHub/beswarm && docker run --rm \
70
70
 
71
71
  ```
72
72
  docker run --gpus all -it --rm --entrypoint nvidia-smi yym68686/beswarm
73
+ docker run -it --rm --entrypoint "cat /app/beswarm/aient/src/aient/models/chatgpt.py" yym68686/beswarm
73
74
  ```
74
75
 
75
76
  服务器安装
@@ -80,6 +81,10 @@ pipx ensurepath
80
81
  source ~/.bashrc
81
82
  pipx install nvitop
82
83
  pip install beswarm -i https://pypi.tuna.tsinghua.edu.cn/simple
84
+
85
+ # 升级 从海外官方 pypi 升级
86
+ pip install --upgrade beswarm -i https://pypi.org/simple
87
+ pip install --upgrade beswarm -i https://pypi.tuna.tsinghua.edu.cn/simple
83
88
  ```
84
89
 
85
90
  main.py
@@ -42,6 +42,7 @@ cd ~/Downloads/GitHub/beswarm && docker run --rm \
42
42
 
43
43
  ```
44
44
  docker run --gpus all -it --rm --entrypoint nvidia-smi yym68686/beswarm
45
+ docker run -it --rm --entrypoint "cat /app/beswarm/aient/src/aient/models/chatgpt.py" yym68686/beswarm
45
46
  ```
46
47
 
47
48
  服务器安装
@@ -52,6 +53,10 @@ pipx ensurepath
52
53
  source ~/.bashrc
53
54
  pipx install nvitop
54
55
  pip install beswarm -i https://pypi.tuna.tsinghua.edu.cn/simple
56
+
57
+ # 升级 从海外官方 pypi 升级
58
+ pip install --upgrade beswarm -i https://pypi.org/simple
59
+ pip install --upgrade beswarm -i https://pypi.tuna.tsinghua.edu.cn/simple
55
60
  ```
56
61
 
57
62
  main.py
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
4
4
 
5
5
  setup(
6
6
  name="aient",
7
- version="1.0.96",
7
+ version="1.0.97",
8
8
  description="Aient: The Awakening of Agent.",
9
9
  long_description=Path.open(Path("README.md"), encoding="utf-8").read(),
10
10
  long_description_content_type="text/markdown",
@@ -150,8 +150,12 @@ class chatgpt(BaseLLM):
150
150
  })
151
151
  self.conversation[convo_id].append({"role": role, "tool_call_id": function_call_id, "content": message})
152
152
  else:
153
- self.conversation[convo_id].append({"role": "assistant", "content": convert_functions_to_xml(function_arguments)})
154
- self.conversation[convo_id].append({"role": "user", "content": message})
153
+ last_user_message = self.conversation[convo_id][-1]["content"]
154
+ if last_user_message != message:
155
+ self.conversation[convo_id].append({"role": "assistant", "content": convert_functions_to_xml(function_arguments)})
156
+ self.conversation[convo_id].append({"role": "user", "content": message})
157
+ else:
158
+ self.conversation[convo_id].append({"role": "assistant", "content": "我已经执行过这个工具了,接下来我需要做什么?"})
155
159
 
156
160
  else:
157
161
  print('\033[31m')
@@ -430,6 +434,7 @@ class chatgpt(BaseLLM):
430
434
  response_role = "assistant"
431
435
 
432
436
  if self.use_plugins == True:
437
+ full_response = full_response.replace("<tool_code>", "").replace("</tool_code>", "")
433
438
  function_parameter = parse_function_xml(full_response)
434
439
  if function_parameter:
435
440
  invalid_tools = [tool_dict for tool_dict in function_parameter if tool_dict.get("function_name", "") not in self.plugins.keys()]
@@ -4,7 +4,6 @@ import re
4
4
  import json
5
5
  import time
6
6
  import base64
7
- import pyautogui # 用于桌面屏幕点击
8
7
  import pyperclip # 新增:用于操作剪贴板
9
8
  import platform # 新增:用于检测操作系统
10
9
  from PIL import Image, ImageDraw
@@ -228,6 +227,7 @@ Returns:
228
227
 
229
228
  print("正在截取当前屏幕...")
230
229
  try:
230
+ import pyautogui
231
231
  # 使用 pyautogui 截取屏幕,返回 PIL Image 对象
232
232
  screenshot = pyautogui.screenshot()
233
233
  # img_width, img_height = screenshot.size # 获取截图尺寸
@@ -425,6 +425,7 @@ async def scroll_screen(direction: str = "down"):
425
425
  return error_msg
426
426
 
427
427
  try:
428
+ import pyautogui
428
429
  pyautogui.scroll(actual_scroll_amount)
429
430
  success_msg = f"✅ 屏幕向 {direction} 滑动 {scroll_offset} 成功。"
430
431
  print(success_msg)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: beswarm
3
- Version: 0.1.40
3
+ Version: 0.1.42
4
4
  Summary: MAS
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -70,6 +70,7 @@ cd ~/Downloads/GitHub/beswarm && docker run --rm \
70
70
 
71
71
  ```
72
72
  docker run --gpus all -it --rm --entrypoint nvidia-smi yym68686/beswarm
73
+ docker run -it --rm --entrypoint "cat /app/beswarm/aient/src/aient/models/chatgpt.py" yym68686/beswarm
73
74
  ```
74
75
 
75
76
  服务器安装
@@ -80,6 +81,10 @@ pipx ensurepath
80
81
  source ~/.bashrc
81
82
  pipx install nvitop
82
83
  pip install beswarm -i https://pypi.tuna.tsinghua.edu.cn/simple
84
+
85
+ # 升级 从海外官方 pypi 升级
86
+ pip install --upgrade beswarm -i https://pypi.org/simple
87
+ pip install --upgrade beswarm -i https://pypi.tuna.tsinghua.edu.cn/simple
83
88
  ```
84
89
 
85
90
  main.py
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "beswarm"
3
- version = "0.1.40"
3
+ version = "0.1.42"
4
4
  description = "MAS"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
File without changes
File without changes
File without changes
File without changes
File without changes