beswarm 0.1.88__py3-none-any.whl → 0.1.90__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.
beswarm/aient/setup.py CHANGED
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
4
4
 
5
5
  setup(
6
6
  name="aient",
7
- version="1.1.34",
7
+ version="1.1.35",
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",
@@ -235,6 +235,7 @@ import sys
235
235
  import shlex
236
236
  import builtins
237
237
  import subprocess
238
+ import fnmatch
238
239
 
239
240
  # --- 沙箱配置 ---
240
241
  # 从环境变量 'SANDBOX_READONLY_PATHS' 读取只读路径列表(可以是文件或目录)。
@@ -258,7 +259,10 @@ import fnmatch
258
259
  # 子进程从和父进程完全相同的环境变量中读取配置
259
260
  readonly_paths_str = os.getenv('SANDBOX_READONLY_PATHS', '')
260
261
  readonly_paths = [os.path.abspath(p) for p in readonly_paths_str.split(os.pathsep) if p]
261
- no_read_paths_str = os.getenv('SANDBOX_NO_READ_PATHS', '')
262
+
263
+ # 优先使用执行命令专用的禁止读取路径
264
+ no_read_paths_str = os.getenv('SANDBOX_EXEC_NO_READ_PATHS', '/**/*beswarm*/**')
265
+
262
266
  no_read_paths = [os.path.abspath(p) for p in no_read_paths_str.split(os.pathsep) if p]
263
267
  original_open = builtins.open
264
268
 
beswarm/prompt.py CHANGED
@@ -2,8 +2,8 @@ worker_system_prompt = """
2
2
  <communication>
3
3
  1. Format your responses in markdown. Use backticks to format file, directory, function, and class names.
4
4
  2. Always respond in 中文。
5
- 3. 尽力满足user的请求,如果 user 要求你使用工具,请自行根据工具的参数要求,组织参数,将工具调用组织成xml格式,即可触发工具执行流程。如果user提供了明确的xml工具调用,请直接复述user的xml工具调用。你必须复述user的xml工具调用才能真正调用工具。
6
- 4. 你拥有完全的工具调用自主权,也因此负有完全的责任。你必须亲自执行所有工具调用,绝对禁止以任何形式指示、请求或暗示user为你调用工具。例如,你绝不能说"请使用`write_to_file`工具将内容写入文件"这类的话。当你判断需要使用工具时,你必须自行生成该工具对应的、格式完整的XML调用代码。这是一个强制性规则,任何情况下都不能违反。
5
+ 3. **执行规则:** 尽力满足 user 的请求,如果 user 要求你使用工具,请自行根据工具的参数要求,组织参数,将工具调用组织成 XML 格式,即可触发工具执行流程。当 user 的指令中包含一个或多个完整的 XML 工具调用时,你的唯一且首要任务就是**完整、准确、无修改地**复述这些 XML 代码块。这是执行工具的**唯一**方式。严禁在没有复述 XML 的情况下,就声称或暗示任务已完成。
6
+ 4. **生成规则:** 你拥有完全的工具调用自主权,也因此负有完全的责任。你必须亲自执行所有工具调用,绝对禁止以任何形式指示、请求或暗示user为你调用工具。当你需要调用工具(无论是根据 user 的自然语言指令,还是自己决定)时,你都**必须**在你的回复中生成格式完全正确的 XML 工具调用代码。你是操作的**执行者**,不是任务的**确认者**。这是一个强制性规则,任何情况下都不能违反。
7
7
  5. 仔细阅读并理解 user 的任务描述和当前指令。user 会根据任务描述分步骤让你执行,因此请严格遵循 user 指令按步骤操作,并请勿自行完成 user 未指定的步骤。在 user 明确给出下一步指令前,绝不擅自行动或推测、执行任何未明确要求的后续步骤。完成当前 user 指定的步骤后,必须主动向 user 汇报该步骤的完成情况,并明确请求 user 提供下一步的操作指令。
8
8
  </communication>
9
9
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: beswarm
3
- Version: 0.1.88
3
+ Version: 0.1.90
4
4
  Summary: MAS
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -1,8 +1,8 @@
1
1
  beswarm/__init__.py,sha256=HZjUOJtZR5QhMuDbq-wukQQn1VrBusNWai_ysGo-VVI,20
2
- beswarm/prompt.py,sha256=1jNxVXjfhb-A8CVHoudRxytV4qDT6FZIIk1NRCCE1Ns,31365
2
+ beswarm/prompt.py,sha256=cBz8sSmFj0edIGOZjCMg0rg3pFXQYo8xGvXSA8Py1hg,31591
3
3
  beswarm/utils.py,sha256=cOYwuONpNG_dkSYIvdEqQOxRUdIy0Bh9CTYkvKKskdw,2816
4
4
  beswarm/aient/main.py,sha256=SiYAIgQlLJqYusnTVEJOx1WNkSJKMImhgn5aWjfroxg,3814
5
- beswarm/aient/setup.py,sha256=NJ0hlKbFBw5PK_tZYBvhIIrBUzmgGiAQzJ07Eu3CKdg,487
5
+ beswarm/aient/setup.py,sha256=IUr9oCEhGFNVvz7v8J9tedwE_JK6Hlf8XpnENoq2K2s,487
6
6
  beswarm/aient/src/aient/__init__.py,sha256=SRfF7oDVlOOAi6nGKiJIUK6B_arqYLO9iSMp-2IZZps,21
7
7
  beswarm/aient/src/aient/core/__init__.py,sha256=NxjebTlku35S4Dzr16rdSqSTWUvvwEeACe8KvHJnjPg,34
8
8
  beswarm/aient/src/aient/core/log_config.py,sha256=kz2_yJv1p-o3lUQOwA3qh-LSc3wMHv13iCQclw44W9c,274
@@ -39,7 +39,7 @@ beswarm/aient/src/aient/plugins/websearch.py,sha256=FsUxM9GL4AAjmYJ8TS2jSqv4qfCA
39
39
  beswarm/aient/src/aient/plugins/write_file.py,sha256=7spYxloI_aUbeANEQK-oXrGPoBqSfsD7sdfMAWlNxhU,3656
40
40
  beswarm/aient/src/aient/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
41
  beswarm/aient/src/aient/utils/prompt.py,sha256=UcSzKkFE4-h_1b6NofI6xgk3GoleqALRKY8VBaXLjmI,11311
42
- beswarm/aient/src/aient/utils/scripts.py,sha256=FUPnJIMRzXQLW6nGdx4MO72iUEk68PyZBUHg5fNZPmw,40852
42
+ beswarm/aient/src/aient/utils/scripts.py,sha256=_43DEeoaiNVSA7ew1UUmp-gIV6XXe6rQPc2HTRuTzkw,40944
43
43
  beswarm/aient/test/chatgpt.py,sha256=Hvl7FuDt1c74N5TVBmhErOPvJbJJzA7FNp5VoZM4u30,4957
44
44
  beswarm/aient/test/claude.py,sha256=IyB4qI1eJLwlSfDNSnt2FhbQWYyBighHUjJxEXc3osQ,1095
45
45
  beswarm/aient/test/test.py,sha256=rldnoLQdtRR8IKFSIzTti7eIK2MpPMoi9gL5qD8_K44,29
@@ -129,7 +129,7 @@ beswarm/tools/search_arxiv.py,sha256=GpuIOYX8T0iRC-X-hmuR9AUJVn15WWZq864DaoC7BUc
129
129
  beswarm/tools/search_web.py,sha256=B24amOnGHnmdV_6S8bw8O2PdhZRRIDtJjg-wXcfP7dQ,11859
130
130
  beswarm/tools/think.py,sha256=WLw-7jNIsnS6n8MMSYUin_f-BGLENFmnKM2LISEp0co,1760
131
131
  beswarm/tools/worker.py,sha256=VOulEZBEc5nF2RBR9aLYs0vT7WBD-r2mlWH5ueEo4hM,16007
132
- beswarm-0.1.88.dist-info/METADATA,sha256=qzPOL8McdAQ-iL748wzyb0xaq_-38645_1PwZ9pQiik,3553
133
- beswarm-0.1.88.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
134
- beswarm-0.1.88.dist-info/top_level.txt,sha256=pJw4O87wvt5882smuSO6DfByJz7FJ8SxxT8h9fHCmpo,8
135
- beswarm-0.1.88.dist-info/RECORD,,
132
+ beswarm-0.1.90.dist-info/METADATA,sha256=WEB-N3PsCLucCDD2h9y8Zc5N4RVzoZpuV_pm9sJtC5E,3553
133
+ beswarm-0.1.90.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
134
+ beswarm-0.1.90.dist-info/top_level.txt,sha256=pJw4O87wvt5882smuSO6DfByJz7FJ8SxxT8h9fHCmpo,8
135
+ beswarm-0.1.90.dist-info/RECORD,,