beswarm 0.2.41__tar.gz → 0.2.43__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.
Potentially problematic release.
This version of beswarm might be problematic. Click here for more details.
- {beswarm-0.2.41 → beswarm-0.2.43}/PKG-INFO +1 -1
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/agents/planact.py +3 -1
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/prompt.py +1 -1
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/subtasks.py +56 -15
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm.egg-info/PKG-INFO +1 -1
- {beswarm-0.2.41 → beswarm-0.2.43}/pyproject.toml +1 -1
- {beswarm-0.2.41 → beswarm-0.2.43}/MANIFEST.in +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/README.md +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/agents/chatgroup.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/main.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/setup.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/log_config.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/models.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/request.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/response.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/test/test_base_api.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/test/test_geminimask.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/test/test_image.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/test/test_payload.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/core/utils.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/audio.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/base.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/chatgpt.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/claude.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/duckduckgo.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/gemini.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/groq.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/models/vertex.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/arXiv.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/config.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/excute_command.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/get_time.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/image.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/list_directory.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/read_file.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/read_image.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/readonly.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/registry.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/run_python.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/websearch.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/plugins/write_file.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/utils/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/utils/prompt.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/src/aient/utils/scripts.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/chatgpt.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/claude.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_API.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_Deepbricks.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_Web_crawler.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_aiwaves.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_aiwaves_arxiv.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_ask_gemini.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_class.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_claude.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_claude_zh_char.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_ddg_search.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_download_pdf.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_gemini.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_get_token_dict.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_google_search.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_jieba.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_json.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_logging.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_ollama.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_plugin.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_py_run.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_requests.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_search.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_tikitoken.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_token.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_url.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_whisper.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_wildcard.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/aient/test/test_yjh.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/bemcp/bemcp/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/bemcp/bemcp/decorator.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/bemcp/bemcp/main.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/bemcp/bemcp/utils.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/bemcp/test/client.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/bemcp/test/server.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/broker.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/core.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/README.md +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/c-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/d-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/go-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/java-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/python-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/r-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/README.md +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/c-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/cpp-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/dart-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/elisp-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/elixir-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/elm-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/go-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/hcl-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/java-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/javascript-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/php-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/python-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/ql-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/ruby-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/rust-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/scala-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-languages/typescript-tags.scm +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/taskmanager.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/__init__.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/click.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/completion.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/edit_file.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/planner.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/repomap.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/request_input.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/screenshot.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/search_arxiv.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/search_web.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/worker.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/tools/write_csv.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm/utils.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm.egg-info/SOURCES.txt +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm.egg-info/dependency_links.txt +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm.egg-info/requires.txt +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/beswarm.egg-info/top_level.txt +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/setup.cfg +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/test/test_TaskManager.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/test/test_broker.py +0 -0
- {beswarm-0.2.41 → beswarm-0.2.43}/test/test_new_TaskManager.py +0 -0
|
@@ -124,10 +124,10 @@ class InstructionAgent(BaseAgent):
|
|
|
124
124
|
|
|
125
125
|
self.broker.publish({"status": "new_message", "result": "\n🤖 指令智能体:\n" + raw_response}, self.status_topic)
|
|
126
126
|
|
|
127
|
-
self.last_instruction = raw_response
|
|
128
127
|
instruction = extract_xml_content(raw_response, "instructions")
|
|
129
128
|
if instruction:
|
|
130
129
|
if len(message["conversation"]) == 1:
|
|
130
|
+
instruction = re.sub(r'^<task_complete>([\D\d\s]+)<\/task_complete>$', '', instruction, flags=re.MULTILINE)
|
|
131
131
|
instruction = (
|
|
132
132
|
"任务描述:\n"
|
|
133
133
|
f"<goal>{self.goal}</goal>\n\n"
|
|
@@ -145,9 +145,11 @@ class InstructionAgent(BaseAgent):
|
|
|
145
145
|
f"{instruction}"
|
|
146
146
|
)
|
|
147
147
|
self.broker.publish({"instruction": instruction, "conversation": message["conversation"]}, self.publish_topic)
|
|
148
|
+
self.last_instruction = None
|
|
148
149
|
else:
|
|
149
150
|
self.logger.error("\n❌ 指令智能体生成的指令不符合要求,正在重新生成。")
|
|
150
151
|
self.broker.publish(message, self.error_topic)
|
|
152
|
+
self.last_instruction = raw_response
|
|
151
153
|
|
|
152
154
|
|
|
153
155
|
class WorkerAgent(BaseAgent):
|
|
@@ -106,7 +106,7 @@ instruction_system_prompt = """
|
|
|
106
106
|
所有回复必须使用中文。
|
|
107
107
|
运行工作智能体的系统信息:{os_version}
|
|
108
108
|
你的工作目录为:{workspace_path},请在指令中使用绝对路径。所有操作必须基于工作目录。
|
|
109
|
-
|
|
109
|
+
除了任务目标里面明确提到的目录,禁止在工作目录之外进行任何操作。你当前运行目录不一定就是工作目录。禁止默认你当前就在工作目录。
|
|
110
110
|
|
|
111
111
|
当前时间:{current_time}
|
|
112
112
|
|
|
@@ -67,27 +67,68 @@ def get_all_tasks_status():
|
|
|
67
67
|
return task_manager.tasks_cache
|
|
68
68
|
|
|
69
69
|
@register_tool()
|
|
70
|
-
async def get_task_result():
|
|
70
|
+
async def get_task_result(reduce: bool = False):
|
|
71
71
|
"""
|
|
72
|
-
|
|
72
|
+
等待并获取子任务的执行结果。
|
|
73
|
+
|
|
74
|
+
如果 `reduce` 为 `False`(默认),此工具会等待并返回任何一个子任务完成的结果。
|
|
75
|
+
一旦有任务完成,它会立即获取并返回该任务的结果。如果调用时没有任务完成,它会阻塞并等待。
|
|
76
|
+
|
|
77
|
+
如果 `reduce` 为 `True`,此工具会进入“规约”模式,等待 **所有** 正在运行或待处理的子任务都执行完毕后,
|
|
78
|
+
才将所有任务的结果汇总并返回。这在子任务之间无依赖、可以完全并行执行的场景下非常有用,
|
|
79
|
+
可以避免为了获取每个任务的结果而进行多次轮询,从而节省token。
|
|
80
|
+
|
|
81
|
+
警告:当子任务之间存在依赖关系,或者需要根据一个任务的结果来决定下一步操作时,**禁止** 使用 `reduce=True`。
|
|
82
|
+
|
|
83
|
+
Args:
|
|
84
|
+
reduce (bool, optional): 是否启用规约模式。默认为 `False`。
|
|
73
85
|
|
|
74
86
|
Returns:
|
|
75
|
-
str:
|
|
87
|
+
str:
|
|
88
|
+
- 当 `reduce=False` 时,返回单个子任务的执行结果。
|
|
89
|
+
- 当 `reduce=True` 时,返回一个包含所有任务最终状态和结果的汇总字符串。
|
|
76
90
|
"""
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
91
|
+
def get_running_tasks_count():
|
|
92
|
+
return len([
|
|
93
|
+
task_id for task_id, task in task_manager.tasks_cache.items()
|
|
94
|
+
if task_id != "root_path" and task.get("status") in ["PENDING", "RUNNING"]
|
|
95
|
+
])
|
|
81
96
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
f"Task ID: {task_id}\n",
|
|
85
|
-
f"Status: {status.value}\n",
|
|
86
|
-
f"Result: {result}\n\n",
|
|
87
|
-
f"There are {len(unfinished_tasks)} unfinished tasks, unfinished task ids: {unfinished_tasks[:5]} ..." if unfinished_tasks else "All tasks are finished.",
|
|
88
|
-
])
|
|
97
|
+
if get_running_tasks_count() == 0:
|
|
98
|
+
return "All tasks are finished."
|
|
89
99
|
|
|
90
|
-
|
|
100
|
+
if not reduce:
|
|
101
|
+
# 默认行为:获取下一个完成的任务结果
|
|
102
|
+
task_id, status, result = await task_manager.get_next_result()
|
|
103
|
+
|
|
104
|
+
unfinished_tasks = [tid for tid, task in task_manager.tasks_cache.items() if tid != "root_path" and task.get("status") not in ["DONE", "ERROR"]]
|
|
105
|
+
text = "".join([
|
|
106
|
+
f"Task ID: {task_id}\n",
|
|
107
|
+
f"Status: {status.value}\n",
|
|
108
|
+
f"Result: {result}\n\n",
|
|
109
|
+
f"There are {len(unfinished_tasks)} unfinished tasks, unfinished task ids: {unfinished_tasks[:5]} ..." if unfinished_tasks else "All tasks are finished.",
|
|
110
|
+
])
|
|
111
|
+
return text
|
|
112
|
+
else:
|
|
113
|
+
# 规约模式:等待所有任务完成
|
|
114
|
+
while get_running_tasks_count() > 0:
|
|
115
|
+
await task_manager.get_next_result()
|
|
116
|
+
|
|
117
|
+
# 收集所有任务的结果
|
|
118
|
+
all_results = []
|
|
119
|
+
for task_id, task in task_manager.tasks_cache.items():
|
|
120
|
+
if task_id == "root_path":
|
|
121
|
+
continue
|
|
122
|
+
|
|
123
|
+
status = task.get('status', 'UNKNOWN')
|
|
124
|
+
result = task.get('result', 'No result available')
|
|
125
|
+
all_results.append(
|
|
126
|
+
f"Task ID: {task_id}\nStatus: {status}\nResult: {result}"
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
summary = f"All {len(all_results)} subtasks have been completed.\n\n"
|
|
130
|
+
summary += "\n\n".join(all_results)
|
|
131
|
+
return summary
|
|
91
132
|
|
|
92
133
|
import os
|
|
93
134
|
import csv
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/arduino-tags.scm
RENAMED
|
File without changes
|
|
File without changes
|
{beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/chatito-tags.scm
RENAMED
|
File without changes
|
{beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/commonlisp-tags.scm
RENAMED
|
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
|
{beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/javascript-tags.scm
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/properties-tags.scm
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{beswarm-0.2.41 → beswarm-0.2.43}/beswarm/queries/tree-sitter-language-pack/solidity-tags.scm
RENAMED
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|