aient 1.1.7__py3-none-any.whl → 1.1.8__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.
- aient/plugins/write_file.py +39 -2
- {aient-1.1.7.dist-info → aient-1.1.8.dist-info}/METADATA +1 -1
- {aient-1.1.7.dist-info → aient-1.1.8.dist-info}/RECORD +6 -6
- {aient-1.1.7.dist-info → aient-1.1.8.dist-info}/WHEEL +0 -0
- {aient-1.1.7.dist-info → aient-1.1.8.dist-info}/licenses/LICENSE +0 -0
- {aient-1.1.7.dist-info → aient-1.1.8.dist-info}/top_level.txt +0 -0
aient/plugins/write_file.py
CHANGED
@@ -1,6 +1,19 @@
|
|
1
1
|
from .registry import register_tool
|
2
2
|
|
3
3
|
import os
|
4
|
+
import html
|
5
|
+
|
6
|
+
def unescape_html(input_string: str) -> str:
|
7
|
+
"""
|
8
|
+
将字符串中的 HTML 实体(例如 &)转换回其原始字符(例如 &)。
|
9
|
+
|
10
|
+
Args:
|
11
|
+
input_string: 包含 HTML 实体的输入字符串。
|
12
|
+
|
13
|
+
Returns:
|
14
|
+
转换后的字符串。
|
15
|
+
"""
|
16
|
+
return html.unescape(input_string)
|
4
17
|
|
5
18
|
@register_tool()
|
6
19
|
def write_to_file(path, content, mode='w'):
|
@@ -49,6 +62,30 @@ Example: Requesting to write to frontend-config.json
|
|
49
62
|
|
50
63
|
# 写入文件
|
51
64
|
with open(path, mode, encoding='utf-8') as file:
|
52
|
-
file.write(content)
|
65
|
+
file.write(unescape_html(content))
|
53
66
|
|
54
|
-
return f"已成功写入文件:{path}"
|
67
|
+
return f"已成功写入文件:{path}"
|
68
|
+
|
69
|
+
|
70
|
+
if __name__ == "__main__":
|
71
|
+
text = """
|
72
|
+
<!DOCTYPE html>
|
73
|
+
<html lang="zh-CN">
|
74
|
+
<head>
|
75
|
+
<meta charset="UTF-8">
|
76
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
77
|
+
<title>Continuous Thought Machines (CTM) 原理解读</title>
|
78
|
+
<script>MathJax={chtml:{fontURL:'https://cdn.jsdelivr.net/npm/mathjax@3/es5/output/chtml/fonts/woff-v2'}}</script>
|
79
|
+
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js" id="MathJax-script" async></script>
|
80
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/viz.js" defer></script>
|
81
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/viz.js/2.1.2/full.render.js" defer></script>
|
82
|
+
<script src="https://unpkg.com/@panzoom/panzoom@4.5.1/dist/panzoom.min.js" defer></script>
|
83
|
+
<link href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism-okaidia.min.css" rel="stylesheet"/>
|
84
|
+
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Fira+Code:wght@400;500&display=swap" rel="stylesheet">
|
85
|
+
<link href="https://fonts.googleapis.com/icon?family=Material+Icons+Outlined" rel="stylesheet">
|
86
|
+
<style>
|
87
|
+
"""
|
88
|
+
with open("test.txt", "r", encoding="utf-8") as file:
|
89
|
+
content = file.read()
|
90
|
+
print(write_to_file("test.txt", content))
|
91
|
+
# python -m beswarm.aient.src.aient.plugins.write_file
|
@@ -31,14 +31,14 @@ aient/plugins/read_file.py,sha256=-RRmaj-rSl8y--5VKnxCsZ1YQHe75OhnqvsDRLJyujM,84
|
|
31
31
|
aient/plugins/registry.py,sha256=YknzhieU_8nQ3oKlUSSWDB4X7t2Jx0JnqT2Jd9Xsvfk,3574
|
32
32
|
aient/plugins/run_python.py,sha256=dgcUwBunMuDkaSKR5bToudVzSdrXVewktDDFUz_iIOQ,4589
|
33
33
|
aient/plugins/websearch.py,sha256=I4tYU7CGLdyG6Hd3yK19V-PoG5IbFI9FEEVggyrshRg,15227
|
34
|
-
aient/plugins/write_file.py,sha256=
|
34
|
+
aient/plugins/write_file.py,sha256=YRvQKMvV-5lwohxlvwt9hjfxz2dRJP85AJWAMUIqbBY,3804
|
35
35
|
aient/prompt/__init__.py,sha256=GBtn6-JDT8KHFCcuPpfSNE_aGddg5p4FEyMCy4BfwGs,20
|
36
36
|
aient/prompt/agent.py,sha256=6f5ZB66Rb8y0iQScHMRhvXZ1qMM3YsKpCBPCTAAw2rg,24917
|
37
37
|
aient/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
38
38
|
aient/utils/prompt.py,sha256=UcSzKkFE4-h_1b6NofI6xgk3GoleqALRKY8VBaXLjmI,11311
|
39
39
|
aient/utils/scripts.py,sha256=NXmTxcZqHoRv3S13isLsv7kvqktXnA5ej7uMsxCJUe0,26656
|
40
|
-
aient-1.1.
|
41
|
-
aient-1.1.
|
42
|
-
aient-1.1.
|
43
|
-
aient-1.1.
|
44
|
-
aient-1.1.
|
40
|
+
aient-1.1.8.dist-info/licenses/LICENSE,sha256=XNdbcWldt0yaNXXWB_Bakoqnxb3OVhUft4MgMA_71ds,1051
|
41
|
+
aient-1.1.8.dist-info/METADATA,sha256=vKhyqOW5DHgaoPPSdFa9Pmbp1YWNYRkaSjQ0DiWwIQE,4967
|
42
|
+
aient-1.1.8.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
|
43
|
+
aient-1.1.8.dist-info/top_level.txt,sha256=3oXzrP5sAVvyyqabpeq8A2_vfMtY554r4bVE-OHBrZk,6
|
44
|
+
aient-1.1.8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|