From 4f1d6f2f8ad44f498a5229dfba421bf2ae00b4c0 Mon Sep 17 00:00:00 2001 From: 2lipan Date: Wed, 4 Mar 2026 16:17:28 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=96=B0=E5=A2=9EExcel=E6=96=87=E4=BB=B6?= =?UTF-8?q?=EF=BC=8C=E5=AE=9E=E7=8E=B0=E6=95=B0=E6=8D=AE=E5=86=99=E5=85=A5?= =?UTF-8?q?=E5=92=8C=E4=B8=8B=E8=BD=BD=E6=96=87=E4=BB=B6=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...205\245excel\346\226\207\344\273\266.tool" | Bin 0 -> 4853 bytes tools/tool_data_to_excel/README.md | 62 ++++++++++++++++++ tools/tool_data_to_excel/data.yaml | 5 ++ tools/tool_data_to_excel/logo.png | Bin 0 -> 31458 bytes 4 files changed, 67 insertions(+) create mode 100644 "tools/tool_data_to_excel/1.0.0/\346\225\260\346\215\256\345\206\231\345\205\245excel\346\226\207\344\273\266.tool" create mode 100644 tools/tool_data_to_excel/README.md create mode 100644 tools/tool_data_to_excel/data.yaml create mode 100644 tools/tool_data_to_excel/logo.png diff --git "a/tools/tool_data_to_excel/1.0.0/\346\225\260\346\215\256\345\206\231\345\205\245excel\346\226\207\344\273\266.tool" "b/tools/tool_data_to_excel/1.0.0/\346\225\260\346\215\256\345\206\231\345\205\245excel\346\226\207\344\273\266.tool" new file mode 100644 index 0000000000000000000000000000000000000000..78ee68971c6cd7454b0f90200488775ac42b8d3d GIT binary patch literal 4853 zcmb7I|8Eq>6%WD2*hC7d)S{}YIy#cxUAf!)>ht-^r7{F0i#ViUlvb8?+S{G;ZoRjA z-JSK9Se8hrsR4sX6M~$Q6jVY{oA9kDabk>r?T`H%TJPEZ$^Sy%o02YmxiG_XnRbxH7ZC@ zMn!EFUJ>|rwD|XyebZv5?Fo(!-PD+$-(RG+`9JKB^G7<~QZ+R~+s zm6d;=eNT$g938dzRZovutvN0uF8!@fJ?8aPT&GH$8ntWFQx=iEZ#(XI*>T3V_bMKn zwy4)&I_}skMg}Z%%&t&XQ!yW+S6JPa1K$)q=u8WrorwIW%mfbl>;un?|+iJEST7>;Yc1JkNjF{FXts2ggoTVPYTVdK_fG0IBgbej9NNJfxj1lpqn$3dkrOo6%=iH>sfppKKCBF*0}qN&TqgLCz3kAwN^ z!MzneMsqB`YL_NWof+u$k#sUfcK(Y=PysVW_yE*`+J2R~Dx;BYqGBW^Q7E;Ny}Ajo z_Dsk2Ml{2XiY&)r>Hy14e_=H}Vuji>Kp_;S_F3b7p~mxN*z%bBEZB&t9RdXpwIB4NIwaJ10I zMGh5-q;oM+KbRa$4Ms?)deyWOYRybIo|izqnPwI4S2Mf;?-P8iJn0zt6B@9(XWo$a8#Gqa{-h6-a3K*w9-iPYs;ehu3Zv{WM!Mi^jYI}iqEu6v0RlYcMg-4@7&IDHEFhXSKwu&) z(1L^TCt=$hk2<y z5-lw5`I<&OFNOdsewRG?KUy@vE+w@f+RW4+5Md>ereSYxphwygrsgCHCf#B9bvaxZ zS=e)SM=9cHxZkvEK7(veEuHV-KpusEq;cx)XdOde$7AvO!{y-9OY0y1jvwZNJMWD^ za^g{oDMw5Txd?xuDy=&1v`kvbWHJ?+McMFlpua@58^g9SHFjb85?!6D>#EbDzDHz0 zIR-FIUD`a{?=!s;rX|y*@{I0t{fz^_zmGdzp5|6pj2{B6OQtBO8b5-fIg{~YXmz)X zH+}+?c5xgPDDLWI9FF38T1Y_>O5B6_#2&-ub47N`gL|967L>ocK(yM+rfq(kJ3Cdz zT)gIR`@p-qs!mzd9%BYHPW)q`8#dEcdl!oI3}-Sv>9~5_GOMP%82QlC$zcN(c=k51 zE}ET|TBdj#1fQJ66Zg|gfUK=2 z9}|PIS|O3J98I+h*l!B?WIidjd;%w4kmDJ6*ZTg>qWGje0^==Q@#`UI@rKk9#`n}* zr{4TMfRs1G_p& zkzoD-ZlN&4U&VzHM#0ks$Q&D^u4r{Ys>dqa2cg82tHL&0nowZ}5F9_1PS7Eo#g##+ zm@KVXj;|}4UC8J2=|pv0Fn<-3>_#svB?lGX=!3FL=4$NeN4rJ@ zZj8fFe|i1GyY>06An^bfBy=DN&$o|4|NOUeg^PS{(`Px*INov_x9tI`%C|emc!RHE zNIK*dIp}#VFiwJ+ZDu!q3GG*X_>>Xv&t-el`QCD-qUjkmlhJflE$jJQFYV7{`};Au z8K*t%0M*WE(P~xD<;vlwCLjBx6D7@cm}>%$dR0n`~`g zNr1K+E)b$?KfHbp|Ja$I2?CTD$N#)8n!CI*RQ54ityyr%5)-`%q?aIdjC(beA72G8 zenH8n%h^giscUMyuaZi|^L@E|oa%k>`6QQ5rS+^}?XJM}xJ~c>XDB9{QY-BD96fV- z_~ej~+e}cX;yw+I;P|-$&ZVLo;s!qLBs1}3b~u$O^yUh^DJ7TAWHQ-9$$TN16m0wa u8f;(B9GER+vxQ8*lIu%n@_o&Lm|EaDC0<<<@Hqr-A)@u-L>el7S@{pyOj%z5 literal 0 HcmV?d00001 diff --git a/tools/tool_data_to_excel/README.md b/tools/tool_data_to_excel/README.md new file mode 100644 index 0000000..ec62b45 --- /dev/null +++ b/tools/tool_data_to_excel/README.md @@ -0,0 +1,62 @@ +# 数据写入 EXCEL 工具 + +支持将数据写入 EXCEL 文件并提供下载链接。 + +## 1 参数说明 + +### 1.1 安装依赖 +进到 maxkb 容器里,安装 requests 库即可 + +```linux +pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple +pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple +``` + +### 1.2 启动参数 + +| 参数名 | 类型 | 说明 | +| ---------------- | ---- | ------------| +| `base_url` | str | MaxKB 地址 | +| `api_key` | str | 用户的api-key| + +### 1.3 输入参数 + +| 参数名 | 类型 | 说明 | +| -------------- | ---- | ------------------------- | +| `data_list` | array | 要写入excel的数据 | +| `headers` | array | excel的表头 | +| `sheet_name` | str | sheet页名称 | +| `excel_name` | str | excel文件名称 | + +#### 填写示例: + +`headers`: excel的表头,如'["状态", "记忆","内容","标签","更新时间","响应","错误信息"]' + +`data_list`: 要写入excel的数据,如 +``` +[ + { + "status": "未完成", + "memory": "test_0001", + "content": "我是AI智能体", + "tags": "AI,智能体", + "update_time": "20260304", + "response": "AI真牛", + "error_msg": "无" + } +] +``` + +`sheet_name`:sheet 页名称,如"记录状态信息表" + +`excel_name`:excel 文件名称,如 "test" 或者 "test.xlsx" + +## 2 响应 + +返回包含下载链接的 HTML 字符串,如 + +``` + + 文件名.xlsx + +``` diff --git a/tools/tool_data_to_excel/data.yaml b/tools/tool_data_to_excel/data.yaml new file mode 100644 index 0000000..7309d3d --- /dev/null +++ b/tools/tool_data_to_excel/data.yaml @@ -0,0 +1,5 @@ +name: 数据写入 EXCEL +tags: + - 内容处理 +title: 支持将数据写入 EXCEL 文件并提供下载链接。 +description: 支持将数据写入 EXCEL 文件并提供下载链接。 \ No newline at end of file diff --git a/tools/tool_data_to_excel/logo.png b/tools/tool_data_to_excel/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3417fc46370a0ad03800b52b347e0b92b2f53cf1 GIT binary patch literal 31458 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

-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 N002ovPDHLkV1oZUi*x`0 literal 0 HcmV?d00001 From 89542aef0efca924a2fc1ed7f349b9e2424a6933 Mon Sep 17 00:00:00 2001 From: 2lipan Date: Tue, 24 Mar 2026 17:06:44 +0800 Subject: [PATCH 2/2] Mem0 --- ...\345\277\206\346\216\245\345\217\243.tool" | Bin 0 -> 4111 bytes tools/tool_mem0/README.md | 104 ++++++++++++++++++ tools/tool_mem0/data.yaml | 5 + tools/tool_mem0/logo.png | Bin 0 -> 8944 bytes 4 files changed, 109 insertions(+) create mode 100644 "tools/tool_mem0/1.0.0/\350\256\260\345\277\206\346\216\245\345\217\243.tool" create mode 100644 tools/tool_mem0/README.md create mode 100644 tools/tool_mem0/data.yaml create mode 100644 tools/tool_mem0/logo.png diff --git "a/tools/tool_mem0/1.0.0/\350\256\260\345\277\206\346\216\245\345\217\243.tool" "b/tools/tool_mem0/1.0.0/\350\256\260\345\277\206\346\216\245\345\217\243.tool" new file mode 100644 index 0000000000000000000000000000000000000000..3c66304c468f987f90d1f5c51433d27284938e3f GIT binary patch literal 4111 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 WsZ=k*)Bhwa00mi9NVT-tr~d+0^EEpF literal 0 HcmV?d00001