beswarm 0.2.15__tar.gz → 0.2.17__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.
- {beswarm-0.2.15 → beswarm-0.2.17}/PKG-INFO +1 -1
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/setup.py +1 -1
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/request.py +6 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/chatgpt.py +3 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/worker.py +18 -22
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm.egg-info/PKG-INFO +1 -1
- {beswarm-0.2.15 → beswarm-0.2.17}/pyproject.toml +1 -1
- {beswarm-0.2.15 → beswarm-0.2.17}/MANIFEST.in +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/README.md +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/main.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/log_config.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/models.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/response.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/test/test_base_api.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/test/test_geminimask.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/test/test_image.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/test/test_payload.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/core/utils.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/audio.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/base.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/claude.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/duckduckgo.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/gemini.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/groq.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/models/vertex.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/arXiv.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/config.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/excute_command.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/get_time.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/image.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/list_directory.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/read_file.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/read_image.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/readonly.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/registry.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/run_python.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/websearch.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/plugins/write_file.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/utils/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/utils/prompt.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/src/aient/utils/scripts.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/chatgpt.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/claude.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_API.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_Deepbricks.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_Web_crawler.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_aiwaves.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_aiwaves_arxiv.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_ask_gemini.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_class.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_claude.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_claude_zh_char.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_ddg_search.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_download_pdf.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_gemini.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_get_token_dict.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_google_search.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_jieba.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_json.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_logging.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_ollama.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_plugin.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_py_run.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_requests.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_search.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_tikitoken.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_token.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_url.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_whisper.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_wildcard.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/aient/test/test_yjh.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/bemcp/bemcp/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/bemcp/bemcp/decorator.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/bemcp/bemcp/main.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/bemcp/bemcp/utils.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/bemcp/test/client.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/bemcp/test/server.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/prompt.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/README.md +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/arduino-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/c-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/chatito-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/commonlisp-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/cpp-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/csharp-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/d-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/dart-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/elisp-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/elixir-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/elm-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/gleam-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/go-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/java-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/javascript-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/lua-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/pony-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/properties-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/python-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/r-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/racket-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/ruby-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/rust-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/solidity-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/swift-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/udev-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/README.md +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/c-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/c_sharp-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/cpp-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/dart-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/elisp-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/elixir-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/elm-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/go-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/hcl-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/java-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/javascript-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/kotlin-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/ocaml-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/php-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/python-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/ql-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/ruby-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/rust-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/scala-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-languages/typescript-tags.scm +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/__init__.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/click.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/edit_file.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/planner.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/repomap.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/request_input.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/screenshot.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/search_arxiv.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/tools/search_web.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm/utils.py +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm.egg-info/SOURCES.txt +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm.egg-info/dependency_links.txt +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm.egg-info/requires.txt +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/beswarm.egg-info/top_level.txt +0 -0
- {beswarm-0.2.15 → beswarm-0.2.17}/setup.cfg +0 -0
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
|
|
4
4
|
|
5
5
|
setup(
|
6
6
|
name="aient",
|
7
|
-
version="1.1.
|
7
|
+
version="1.1.44",
|
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",
|
@@ -182,9 +182,15 @@ async def get_gemini_payload(request, engine, provider, api_key=None):
|
|
182
182
|
processed_tools = []
|
183
183
|
for tool in value:
|
184
184
|
function_def = tool["function"]
|
185
|
+
# gemini不支持parameters里面的additionalProperties字段,需要删除
|
186
|
+
if safe_get(function_def, "parameters", "additionalProperties", default=None) is not None:
|
187
|
+
del function_def["parameters"]["additionalProperties"]
|
188
|
+
|
185
189
|
# 处理 parameters.properties 中的 default 字段
|
186
190
|
if safe_get(function_def, "parameters", "properties", default=None):
|
187
191
|
for prop_value in function_def["parameters"]["properties"].values():
|
192
|
+
if "additionalProperties" in prop_value:
|
193
|
+
del prop_value["additionalProperties"]
|
188
194
|
if "default" in prop_value:
|
189
195
|
# 将 default 值添加到 description 中
|
190
196
|
default_value = prop_value["default"]
|
@@ -570,6 +570,9 @@ class chatgpt(BaseLLM):
|
|
570
570
|
elif tool_name == "read_image" and "<tool_error>" not in tool_response:
|
571
571
|
tool_info["base64_image"] = tool_response
|
572
572
|
all_responses.append(f"[{tool_name}({tool_args}) Result]:\n\nRead image successfully!")
|
573
|
+
elif tool_response.startswith("data:image/") and ";base64," in tool_response and "<tool_error>" not in tool_response:
|
574
|
+
tool_info["base64_image"] = tool_response
|
575
|
+
all_responses.append(f"[{tool_name}({tool_args}) Result]:\n\nRead image successfully!")
|
573
576
|
else:
|
574
577
|
all_responses.append(f"[{tool_name}({tool_args}) Result]:\n\n{tool_response}")
|
575
578
|
|
@@ -46,9 +46,15 @@ async def worker(goal, tools, work_dir, cache_messages=None):
|
|
46
46
|
Returns:
|
47
47
|
str: 当任务成功完成时,返回字符串 "任务已完成"。
|
48
48
|
"""
|
49
|
+
cache_dir = Path(work_dir) / ".beswarm"
|
50
|
+
cache_dir.mkdir(exist_ok=True)
|
51
|
+
cache_file = cache_dir / "work_agent_conversation_history.json"
|
52
|
+
if not cache_file.exists():
|
53
|
+
cache_file.write_text("[]", encoding="utf-8")
|
54
|
+
|
49
55
|
DEBUG = os.getenv("DEBUG", "false").lower() in ("true", "1", "t", "yes")
|
50
56
|
if DEBUG:
|
51
|
-
log_file = open(
|
57
|
+
log_file = open(cache_dir / "history.log", "a", encoding="utf-8")
|
52
58
|
log_file.write(f"========== {datetime.now().strftime('%Y-%m-%d %H:%M:%S')} ==========\n")
|
53
59
|
original_stdout = sys.stdout
|
54
60
|
original_stderr = sys.stderr
|
@@ -94,11 +100,7 @@ async def worker(goal, tools, work_dir, cache_messages=None):
|
|
94
100
|
}
|
95
101
|
if cache_messages:
|
96
102
|
if isinstance(cache_messages, bool) and cache_messages == True:
|
97
|
-
cache_messages =
|
98
|
-
cache_file_path = Path(work_dir) / ".beswarm" / "work_agent_conversation_history.json"
|
99
|
-
if cache_file_path.exists():
|
100
|
-
with cache_file_path.open("r", encoding="utf-8") as f:
|
101
|
-
cache_messages = json.load(f)
|
103
|
+
cache_messages = json.loads(cache_file.read_text(encoding="utf-8"))
|
102
104
|
if cache_messages and isinstance(cache_messages, list) and len(cache_messages) > 1:
|
103
105
|
old_goal = extract_xml_content(cache_messages[1]["content"], "goal")
|
104
106
|
if old_goal.strip() != goal.strip():
|
@@ -144,11 +146,7 @@ async def worker(goal, tools, work_dir, cache_messages=None):
|
|
144
146
|
instruction_agent = chatgpt(**instruction_agent_config)
|
145
147
|
conversation_history = copy.deepcopy(work_agent.conversation["default"])
|
146
148
|
|
147
|
-
|
148
|
-
os.makedirs(cache_dir, exist_ok=True)
|
149
|
-
cache_file = os.path.join(cache_dir, "work_agent_conversation_history.json")
|
150
|
-
with open(cache_file, "w", encoding="utf-8") as f:
|
151
|
-
f.write(json.dumps(conversation_history, ensure_ascii=False, indent=4))
|
149
|
+
cache_file.write_text(json.dumps(conversation_history, ensure_ascii=False, indent=4), encoding="utf-8")
|
152
150
|
|
153
151
|
work_agent_system_prompt = conversation_history.pop(0)
|
154
152
|
if conversation_history:
|
@@ -248,9 +246,15 @@ async def worker(goal, tools, work_dir, cache_messages=None):
|
|
248
246
|
return "任务已完成"
|
249
247
|
|
250
248
|
async def worker_gen(goal, tools, work_dir, cache_messages=None):
|
249
|
+
cache_dir = Path(work_dir) / ".beswarm"
|
250
|
+
cache_dir.mkdir(exist_ok=True)
|
251
|
+
cache_file = cache_dir / "work_agent_conversation_history.json"
|
252
|
+
if not cache_file.exists():
|
253
|
+
cache_file.write_text("[]", encoding="utf-8")
|
254
|
+
|
251
255
|
DEBUG = os.getenv("DEBUG", "false").lower() in ("true", "1", "t", "yes")
|
252
256
|
if DEBUG:
|
253
|
-
log_file = open(
|
257
|
+
log_file = open(cache_dir / "history.log", "a", encoding="utf-8")
|
254
258
|
log_file.write(f"========== {datetime.now().strftime('%Y-%m-%d %H:%M:%S')} ==========\n")
|
255
259
|
original_stdout = sys.stdout
|
256
260
|
original_stderr = sys.stderr
|
@@ -296,11 +300,7 @@ async def worker_gen(goal, tools, work_dir, cache_messages=None):
|
|
296
300
|
}
|
297
301
|
if cache_messages:
|
298
302
|
if isinstance(cache_messages, bool) and cache_messages == True:
|
299
|
-
cache_messages =
|
300
|
-
cache_file_path = Path(work_dir) / ".beswarm" / "work_agent_conversation_history.json"
|
301
|
-
if cache_file_path.exists():
|
302
|
-
with cache_file_path.open("r", encoding="utf-8") as f:
|
303
|
-
cache_messages = json.load(f)
|
303
|
+
cache_messages = json.loads(cache_file.read_text(encoding="utf-8"))
|
304
304
|
if cache_messages and isinstance(cache_messages, list) and len(cache_messages) > 1:
|
305
305
|
old_goal = extract_xml_content(cache_messages[1]["content"], "goal")
|
306
306
|
if old_goal.strip() != goal.strip():
|
@@ -346,11 +346,7 @@ async def worker_gen(goal, tools, work_dir, cache_messages=None):
|
|
346
346
|
instruction_agent = chatgpt(**instruction_agent_config)
|
347
347
|
conversation_history = copy.deepcopy(work_agent.conversation["default"])
|
348
348
|
|
349
|
-
|
350
|
-
os.makedirs(cache_dir, exist_ok=True)
|
351
|
-
cache_file = os.path.join(cache_dir, "work_agent_conversation_history.json")
|
352
|
-
with open(cache_file, "w", encoding="utf-8") as f:
|
353
|
-
f.write(json.dumps(conversation_history, ensure_ascii=False, indent=4))
|
349
|
+
cache_file.write_text(json.dumps(conversation_history, ensure_ascii=False, indent=4), encoding="utf-8")
|
354
350
|
|
355
351
|
work_agent_system_prompt = conversation_history.pop(0)
|
356
352
|
if conversation_history:
|
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.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/arduino-tags.scm
RENAMED
File without changes
|
File without changes
|
{beswarm-0.2.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/chatito-tags.scm
RENAMED
File without changes
|
{beswarm-0.2.15 → beswarm-0.2.17}/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.15 → beswarm-0.2.17}/beswarm/queries/tree-sitter-language-pack/javascript-tags.scm
RENAMED
File without changes
|
File without changes
|
File without changes
|
{beswarm-0.2.15 → beswarm-0.2.17}/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.15 → beswarm-0.2.17}/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
|