From 31729933be27c6656e2045903635c2c83090db76 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Sun, 21 Jun 2026 00:06:37 +0000 Subject: [PATCH] =?UTF-8?q?feat(ai):=20AI=E5=8E=82=E5=95=86=20DooTask?= =?UTF-8?q?=E2=86=92Doo=20AI=EF=BC=88=E6=A0=87=E8=AF=86=E7=AC=A6=20dootask?= =?UTF-8?q?=E2=86=92dooai=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 显示名 ai.js AIBotMap / UserBot.php → Doo AI - vendor key dootask→dooai:Setting.php aiList、AI.php TEXT_MODEL_PRIORITY;bot 邮箱随之变为 ai-dooai@bot.system - bot 头像接入 default_dooai.png(User.php) - 未发版,无迁移文件;已有 bot 用户数据直接更新 Co-Authored-By: Claude Opus 4.8 --- app/Models/Setting.php | 2 +- app/Models/User.php | 2 ++ app/Models/UserBot.php | 2 +- app/Module/AI.php | 2 +- public/images/avatar/default_dooai.png | Bin 0 -> 5378 bytes resources/assets/js/utils/ai.js | 2 +- .../public/images/avatar/default_dooai.png | Bin 0 -> 5378 bytes 7 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 public/images/avatar/default_dooai.png create mode 100644 resources/assets/statics/public/images/avatar/default_dooai.png diff --git a/app/Models/Setting.php b/app/Models/Setting.php index da18339ff..e7d97ce86 100644 --- a/app/Models/Setting.php +++ b/app/Models/Setting.php @@ -81,7 +81,7 @@ class Setting extends AbstractModel $value['claude_key'] = $value['claude_token']; } $array = []; - $aiList = ['openai', 'claude', 'deepseek', 'gemini', 'grok', 'ollama', 'zhipu', 'qianwen', 'wenxin', 'dootask']; + $aiList = ['openai', 'claude', 'deepseek', 'gemini', 'grok', 'ollama', 'zhipu', 'qianwen', 'wenxin', 'dooai']; $fieldList = ['key', 'secret', 'models', 'model', 'base_url', 'agency', 'temperature', 'system']; foreach ($aiList as $aiName) { foreach ($fieldList as $fieldName) { diff --git a/app/Models/User.php b/app/Models/User.php index 29716fc04..a3ce47bfe 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -961,6 +961,8 @@ class User extends AbstractModel return url("images/avatar/default_ollama.png"); case 'ai-zhipu@bot.system': return url("images/avatar/default_zhipu.png"); + case 'ai-dooai@bot.system': + return url("images/avatar/default_dooai.png"); case 'bot-manager@bot.system': return url("images/avatar/default_bot.png"); case 'meeting-alert@bot.system': diff --git a/app/Models/UserBot.php b/app/Models/UserBot.php index c8c22806b..11a09a719 100644 --- a/app/Models/UserBot.php +++ b/app/Models/UserBot.php @@ -164,7 +164,7 @@ class UserBot extends AbstractModel 'ai-zhipu' => '智谱清言', 'ai-qianwen' => '通义千问', 'ai-wenxin' => '文心一言', - 'ai-dootask' => 'DooTask', + 'ai-dooai' => 'Doo AI', 'bot-manager' => '机器人管理', 'meeting-alert' => '会议通知', 'okr-alert' => 'OKR提醒', diff --git a/app/Module/AI.php b/app/Module/AI.php index a33fe310a..d03445b3f 100644 --- a/app/Module/AI.php +++ b/app/Module/AI.php @@ -22,7 +22,7 @@ class AI 'zhipu', 'qianwen', 'wenxin', - 'dootask' + 'dooai' ]; protected const OPENAI_DEFAULT_MODEL = 'gpt-5.1-mini'; diff --git a/public/images/avatar/default_dooai.png b/public/images/avatar/default_dooai.png new file mode 100644 index 0000000000000000000000000000000000000000..3c5640ded1995405053975e24b6f6e4ad3828350 GIT binary patch literal 5378 zcmbtY`8$>0*WSmc&}@(b>Hh=>$-ngKkR+&Bx}nfoNU5u002%?lf$+Ez&jKM z1eP6maa*c$2aK%E?TmIX<(>ckoq)97|M36jcm7N!^U3(#?EbLts}nZM?_+*37Efs}@BU?a2Gu=!G(Nn{;~LDHXJ@%Be$myBnD;21rJ*7e{gKft zrCh4EapZN-rY^eZ$%0! zuyV|lRUb%l)3x$sgd|ZVBKOU;FNan~-s+sAes8T9Tm$`)R=IPK_Hn+L7~^%? zG}ua+(P6V?(u@NU@oiNp!5?DIDg*kB9y*A2j^uZ>3J-(0jsKOjX_d_S`sHm>fzu}6 zid+8Azp_moYhw%rW+Y}>7vN-FfJavcmaHiaFw+>65etaUnlR#X6cBn?0i6{hH~L(K zlkeAoXp#Wp<2EC|64Mg*qs1GXJQET# zOTHj?L-{oii1`R#P;b2tcEc>5}-@h&Tv^P?!mVyk437Go63RxhJxwk6ohav^$; zTP@W`xrf;FGwmi687Oy%k-aYb)wCBq42n0(q{8$EVh*Eix!=+--g}+UIDMjNEv^ik zw{Gb{Q%oU3aAdz(Nfq7!b70$O1oev9;%GX(oy~Y|t*FnUy**^^zHeNep^rznDq_1| zU1LbnjxIub7E>0M--Qa=978kpFnnLs!!`r9?3J<{o-c`0#`jza-8g4F2jjjTqO}Fl z``N|7EX{tMNNiH@v8%&2>o7ENRG01U^u@E@N+I%cVQel|Ex-IPs~)PJk@x?ak3552 z2x?{e=ta%`2QGpp3X)H8oi3R($hh{ks@yHeXFB6oVh$Yk`XE(bY-YC;|L^uMd%kIM zzy?D00|~(&gViWaOq+XbkJBVfx@UW~PIR6ySNjwZx_#<$9#e^16S&>vhF@%*7aeNB zM_k7FcaJSPY=8rLta^{&=J}~z=qgw&!<6_zOf9_i^n-Py#!G0ybZ*qpow0eD#w?@> zSNnE*AO0yj)B+uzJ+4;W`<(MPC*{WI`#o3JpsOqd_5E$=)8)^EpPbs`#qaD28b6N-auaBvg$opnhr{N za8!C~w^@BI|K%Pnbgbz4ZOqCqZbog_dskLGLkwtopR@N=g#o==L-ITy1UwIdj=iAL zlp8(80eZqqa2;!90IlYv$#H?ieByyb3|PqL`;vi0lr`O!b!9eFvEXCbN~<6zAbT^% zk_fcXNUqWFR%kPY6&Tjv<6oQB_p$@lzkE*|RqE2GVS&S~=c?MG+|1n~fIQl;ss9oW z9CF_p&u7j}cwx}5(!B?dDR1j%!a!nd{+%yO1|{ae>HiB$Z@)a5(&TzUS$cf4T&inL z|3{ff;C`cD{(WUPtY!*J-8Go#+s-JODMARp^!X2uPvF-2QGnp1`e-ySN7V%6luEUXG{ zNX!Etb=$r>okNa-0vqVWQ+GoXkhzrd{H%&3YQ0{;N8}+tu8j9~*;gTsL@)diX!12N z0CjVb9gHKF@ZH zOm#fEw$C2A4Y*&n4rVGP2vU{PhCgs3Y!v*&;>wEpMozk!H5vw$fhS@j&2520DwYb# z%~x@J6x9ToS{tkWmgDc!iPos_qOIG_4gIVF#o)LraO!2l#V*SPK3cVNB*a$Ru4Ct} z96sJTQ}$x}YCd?PSbRUemcP!BDuWyss~<@)drP2WOvXvUehx{G4gRv_fT?`1DzQ)A z&8D({xpKg<^Z1~m$$vhBY~b9S{^DM1M&3OoSPELLY1wMMqBOY2T ztdtr}^MEWDsbK>$^uuz`7w#$Uu#-fP#7eY+tKB+=J}#Rrk` zJ0KNY->%d(dT|FNgWDQMLb6BtEmGg)NFdHN;J_&^D~JdMzX~zGDMb(4q1QTozf|W7 z)*(vJJagZ;(T8MV4#?d7@|3A?sB9;ZLNK?~wOE+^hboTXRj;|pwksY${9{4mMVN3Z z#6OE9PIJ(PV%2Egz!0qugbCtd&F0*y31sBtWp@9vfHepM@vapAx*)VB&4Yp~7e}PV zjOZtYeMH@=>e8F*nbvoh z-wcv;HF*^}#Z`co&qS=WbzyNxg>=j@n^0P8H85STEc!7OV-^#c<>lwv?@g7$)?y1@ z*G6kR5Kzu9JyVg8#>$59jEFk`<)%Q#M~O#{THVMbk;CSIy?@UGdSCsuh^?ghV`pAs zI)`Fnu)Wc{J)8te4{s&a96M8vQ7a1JW~2l5-FFzFhmSuErqj z+&4^cIfmS7fYy@Rs%B;6As+q?NCF;8ERxFWIB6z0qFS$FVzmw(#B-+*tb<3d`r~wJ!oI%&HDp;H4k-}8^CV+h^a{Fz_;1XF* z9HsAp^Z4(c;e^SMBn&&W8lg>Pr|uHbAR>`SW^h5>*Rq`L2q3}Bf}S8O;=qP*a!1bqMgzDL%?a(;R68`xJ(f!+1vxi zo_4f92n#Wy9MR^9`1z-C0taEff2&7_&|2T<`$s^{Uepn-H2|}N7Pb7W)F|v3XcPza zwP`$)fOuujk1fmX?wV?AZT8#?4s65*wKRSt3 z8%l~1(bzGG$t96h!fW#}YBcBpaNG*!JV{I_Q?!7k7>o}X{}ZkHoZn)`U~_R*q@`t4 z>l$|iyINc`_@+H}NOFVm7^ru$Qx`=~?z;TQ4?05?EE#QB)}{VC6w?F(_21-ftA_oD zPlxj=uTAebb(57rxWLr21se2m;4`8afg`=b<%Bp4$#3)z}2-qij@-x;mE_}Dqz?CObdH$8_eU{#Gr!k6kF&8ges)qQi$ES$&35PMn6@(T zpFXRS8apKp(>b536;`HX1Pf8dfn{0u->0ilMWNb`Mli8 zgzc1ovv0l*Ul2O8LLj1eU#Louh;H6=I=8qZAhdR<8UsN+EuZb4Jil?5hYXYEU}7s6 z7`gCt>T0d<&ISX3YPu`>@bQSo+jovB;0sLJf<1j9pU59ljZ-lVJEj>dc>&#U`F7Lm zM-lf0AknQF3firN%#Hnalxz$)Ndl0N7Fy6IyfTov@@t@Js*yQ#V1a-b0(X9N^TfM_ zJ`%rP*&)=cSm@{VmxHse?9^A=((5Tt>wR2587}QVjHyhwLAA5B>RMJjBEEg13umP3 zqGCT&yT*JgN84qn7^uYV^oz_Ed7#DU6@4qxLs;;Wg+cjkM zh?ZIiRwkXfejhT89T<9$u&*_R?kfT5<4t&mswnbY(wV7#!h_z9|LkQK{u4>%1H8_x zv7BOhd8Pac>mreV>q2YJ=JM#s3rHP6(&s)Um-uW3%)2WDBCo@lg=PZ2YCMr7rBo#O zJfcTd1XK@m)Vjy6wD@Ra#OD6nE{T1~bd{?(aV~24?Z3{ajO#p46_UaZD4PVJN|ScG z^Ht2et^{_IUqO9&m6EI~M?213pvwu_kT!kr_FQ^bS;8|wnA@=C``?<C5Ww zOCYjLDjZfQom-O3s0^@?1)eXx6exwsxy*=Di!SvdxKnb&Tw;_6c(rvv+w@X;KhFX! zJY&k&V6a|_{VJO=#JH3G{@Mqaej)@7)vT1LMv#F`oR4>l3O=t+93>_HB{4Umc%%Gwmr ziuLBf_aure|9Fk{_pf7_e3U!8PKyquw#+l5s(=ptNL6TwapOY;bppG;L=ziB_)t}yBJ_++>2r=i7aGA)y*#_&|<{`Ob0U$#72h8}vb#GfL^M^Qby zK5nz$>BO948RbyAxn%=J*-#gVDpF0VI}Sz#7L$g$E=jD`TD=U0{71S;b&ga#dPO9Onn8g%I7+A15`-_pHP^ z&0R422cshlxlL~`@GnVg7s|W$%SV{SMnL@{s? z-+sDXkw{mGiAah(d62Rf`%;^J0;z{u;OHWTBKZ@;eUH!#1D_FnYIw5Xf^}I>yQW;P z@m~CGVZKY0${2Spjt?^JyM?NL(e%`MUXK$KKggsUBHK@&h>#SeOh*M-7pA#$5O!vS zh*if@q0->wz2pJoy|~!(S^w(t9jLXA>Xltw0ZY+dr9!fTC!!FM#e6+T%%@=V2}j2{ z(wF^LVLdw$28lXr)!HhS%yf&9wU0K?ZkMNizvrscolcC60=lf?{!CJco7#|t zLg-#5Pux}_^VCT#@*5Vb5oY#Qg&5V$$;SsbnR$Z2be?N(K3i>HlOLhDec$IY&s>dq rnwx(uv38H>qBI^ExGE-wU;}8kigW)@^FnICHj8=qIzy< literal 0 HcmV?d00001 diff --git a/resources/assets/js/utils/ai.js b/resources/assets/js/utils/ai.js index 35621595d..42b17ce75 100644 --- a/resources/assets/js/utils/ai.js +++ b/resources/assets/js/utils/ai.js @@ -13,7 +13,7 @@ const AIBotMap = { zhipu: "智谱清言", qianwen: "通义千问", wenxin: "文心一言", - dootask: "DooTask", + dooai: "Doo AI", } /** diff --git a/resources/assets/statics/public/images/avatar/default_dooai.png b/resources/assets/statics/public/images/avatar/default_dooai.png new file mode 100644 index 0000000000000000000000000000000000000000..3c5640ded1995405053975e24b6f6e4ad3828350 GIT binary patch literal 5378 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 literal 0 HcmV?d00001