openbot 0.1.20 → 0.1.23

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.
Files changed (40) hide show
  1. package/README.md +1 -1
  2. package/dist/agents/browser-agent.js +31 -0
  3. package/dist/agents/os-agent.js +31 -0
  4. package/dist/cli.js +13 -3
  5. package/dist/handlers/init.js +14 -2
  6. package/dist/handlers/session-change.js +21 -0
  7. package/dist/handlers/tab-change.js +14 -0
  8. package/dist/models.js +53 -0
  9. package/dist/open-bot.js +166 -0
  10. package/dist/plugins/agent/index.js +81 -0
  11. package/dist/plugins/brain/identity.js +76 -0
  12. package/dist/plugins/brain/index.js +269 -0
  13. package/dist/plugins/brain/memory.js +120 -0
  14. package/dist/plugins/brain/prompt.js +64 -0
  15. package/dist/plugins/brain/types.js +60 -0
  16. package/dist/plugins/brain/ui.js +7 -0
  17. package/dist/plugins/browser/index.js +629 -0
  18. package/dist/plugins/browser/ui.js +13 -0
  19. package/dist/plugins/file-system/index.js +166 -0
  20. package/dist/plugins/file-system/ui.js +6 -0
  21. package/dist/plugins/llm/index.js +81 -0
  22. package/dist/plugins/meta-agent/index.js +570 -0
  23. package/dist/plugins/meta-agent/ui.js +11 -0
  24. package/dist/plugins/shell/index.js +95 -0
  25. package/dist/plugins/shell/ui.js +6 -0
  26. package/dist/plugins/skills/index.js +275 -0
  27. package/dist/plugins/skills/types.js +50 -0
  28. package/dist/plugins/skills/ui.js +12 -0
  29. package/dist/registry/agent-registry.js +35 -0
  30. package/dist/registry/index.js +3 -0
  31. package/dist/registry/plugin-registry.js +27 -0
  32. package/dist/registry/yaml-agent-loader.js +100 -0
  33. package/dist/server.js +30 -31
  34. package/dist/ui/header.js +4 -7
  35. package/dist/ui/layout.js +7 -7
  36. package/dist/ui/navigation.js +4 -2
  37. package/dist/ui/sidebar.js +42 -11
  38. package/dist/ui/thread.js +10 -8
  39. package/package.json +12 -13
  40. package/dist/agent.js +0 -110
@@ -1,5 +1,28 @@
1
1
  import { ui } from "@melony/ui-kit";
2
2
  import { navigationUI } from "./navigation.js";
3
+ const logoSvg = `<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="260" height="260">
4
+ <path d="M0 0 C0.89759033 -0.01460266 1.79518066 -0.02920532 2.7199707 -0.04425049 C11.01037703 -0.17033998 19.30175636 -0.2390039 27.59292126 -0.29209328 C33.16698704 -0.32787163 38.73961159 -0.38120355 44.31298828 -0.47753906 C49.69594234 -0.57031296 55.07762026 -0.61900696 60.46132851 -0.63648605 C62.51356782 -0.6505911 64.56576156 -0.68025535 66.61754417 -0.72578812 C82.66208713 -1.06442538 82.66208713 -1.06442538 86.93647766 2.10276794 C88.53395295 4.44581078 89.50433516 6.58950505 90.44458008 9.25634766 C91.09531494 10.3253833 91.7460498 11.39441895 92.41650391 12.49584961 C93.27538208 13.98024536 93.27538208 13.98024536 94.15161133 15.49462891 C94.81257813 16.63125977 95.47354492 17.76789063 96.15454102 18.93896484 C96.49706909 19.53044312 96.83959717 20.12192139 97.19250488 20.73132324 C104.24808365 32.90970041 111.46932052 44.97959395 118.82275391 56.98022461 C120.70875742 60.06514337 122.57748789 63.15996365 124.44458008 66.25634766 C125.23251953 67.51608398 125.23251953 67.51608398 126.03637695 68.80126953 C128.83958576 73.46017898 130.50280738 76.70065431 129.44458008 82.25634766 C127.63244608 86.43466862 125.43857047 90.35920689 123.19458008 94.31884766 C122.22424745 96.07410371 121.25392137 97.82936351 120.28431702 99.58502197 C119.30159715 101.35902139 118.31233897 103.12921701 117.32104492 104.8984375 C114.680638 109.62341237 112.09372416 114.3768072 109.50708008 119.13134766 C109.03069092 120.00235107 108.55430176 120.87335449 108.06347656 121.77075195 C104.24534936 128.75562314 100.48750768 135.77204658 96.73825073 142.79400635 C89.38043056 156.57226896 81.85987743 170.22294243 73.94458008 183.68994141 C72.64847985 185.90748789 71.38448221 188.13899531 70.13208008 190.38134766 C68.44458008 193.25634766 68.44458008 193.25634766 66.44458008 195.25634766 C63.56958008 195.63134766 63.56958008 195.63134766 60.44458008 195.25634766 C55.97298555 191.77421234 53.49405445 186.57590992 50.69458008 181.75634766 C46.66014138 174.88945475 42.52994738 168.22776813 37.87036133 161.76416016 C36.1757552 158.78351048 35.71189615 156.67668934 35.44458008 153.25634766 C36.44506836 150.4230957 36.44506836 150.4230957 38.01489258 147.51806641 C38.86567383 145.91608398 38.86567383 145.91608398 39.73364258 144.28173828 C40.33950195 143.18023437 40.94536133 142.07873047 41.56958008 140.94384766 C42.44356445 139.30899414 42.44356445 139.30899414 43.33520508 137.64111328 C47.90975365 129.11255469 47.90975365 129.11255469 50.06079102 125.66894531 C52.89742349 121.25347814 52.89742349 121.25347814 53.05395508 116.17431641 C51.054138 112.54843448 48.95462155 109.0380301 46.69458008 105.56884766 C45.79546431 104.15343703 44.89833228 102.73676435 44.00317383 101.31884766 C43.34937744 100.284375 43.34937744 100.284375 42.68237305 99.22900391 C40.99210243 96.5352393 39.34739178 93.82289333 37.75708008 91.06884766 C37.27883789 90.25029297 36.8005957 89.43173828 36.30786133 88.58837891 C35.2373295 85.69648977 35.48377151 84.15828215 36.44458008 81.25634766 C38.44458008 79.25634766 38.44458008 79.25634766 42.26416016 79.06445312 C43.91421393 79.0769711 45.56422007 79.09721049 47.21411133 79.12353516 C49.00773283 79.12272835 50.80135428 79.12006567 52.5949707 79.11572266 C55.42658496 79.11768684 58.25613798 79.13133238 61.08740234 79.17724609 C63.81838812 79.21634532 66.54549315 79.20515595 69.27661133 79.18603516 C70.11948196 79.21172577 70.9623526 79.23741638 71.83076477 79.2638855 C74.27299528 79.22401879 76.14717071 79.09329572 78.44458008 78.25634766 C80.70932796 75.86349542 82.03289687 73.21116086 83.44458008 70.25634766 C84.02570557 69.30590576 84.60683105 68.35546387 85.20556641 67.3762207 C86.89623643 64.569472 88.57788786 61.75747742 90.25708008 58.94384766 C90.85456055 57.95578125 91.45204102 56.96771484 92.06762695 55.94970703 C92.6315918 55.00289062 93.19555664 54.05607422 93.77661133 53.08056641 C94.54581909 51.7979895 94.54581909 51.7979895 95.33056641 50.48950195 C96.6677759 48.22486165 96.6677759 48.22486165 96.44458008 45.25634766 C95.82981937 45.2539593 95.21505867 45.25157095 94.58166885 45.24911022 C79.62554916 45.18998305 64.66959581 45.11444775 49.71365738 45.02063274 C42.48107612 44.9756605 35.24854425 44.93624922 28.01586914 44.90991211 C21.71211567 44.88694349 15.40851834 44.85355841 9.10488868 44.8076461 C5.76686345 44.78369796 2.42913708 44.76653347 -0.90898895 44.75873375 C-4.63479252 44.74914451 -8.36002849 44.72114621 -12.08569336 44.6887207 C-13.74725464 44.69087334 -13.74725464 44.69087334 -15.44238281 44.69306946 C-16.45757996 44.68053131 -17.4727771 44.66799316 -18.51873779 44.65507507 C-19.39997189 44.65046611 -20.28120598 44.64585714 -21.18914413 44.64110851 C-24.07178516 44.17238571 -25.45798966 43.26457772 -27.55541992 41.25634766 C-28.56226401 35.77618932 -26.21321331 31.91917969 -23.65307617 27.26806641 C-23.25591904 26.52426224 -22.8587619 25.78045807 -22.4495697 25.01411438 C-21.18387987 22.65094781 -19.90101854 20.2975986 -18.61791992 17.94384766 C-17.75809722 16.34222348 -16.89936104 14.74001551 -16.04174805 13.13720703 C-9.044389 0.11133028 -9.044389 0.11133028 0 0 Z " fill="#FBFBFB" transform="translate(117.555419921875,54.74365234375)"/>
5
+ <path d="M0 0 C5.19820634 1.82154072 6.96378984 5.94175816 9.71484375 10.5234375 C10.85148724 12.35811954 11.98820542 14.19275532 13.125 16.02734375 C13.66527832 16.91309082 14.20555664 17.79883789 14.76220703 18.71142578 C16.02692338 20.74565051 17.3308095 22.71927116 18.7109375 24.67578125 C19.35160156 25.59488281 19.99226563 26.51398437 20.65234375 27.4609375 C21.19632812 28.22019531 21.7403125 28.97945312 22.30078125 29.76171875 C23.70042108 33.18243848 23.36429211 35.72403027 22.27734375 39.1484375 C20.59640624 42.98532779 18.64464999 46.65297175 16.65234375 50.3359375 C15.84180542 51.86915649 15.84180542 51.86915649 15.01489258 53.43334961 C11.67895763 59.70151399 8.20612149 65.82028656 4.2890625 71.74609375 C2.92022251 74.99642809 3.44658511 76.73533313 4.27734375 80.1484375 C5.82567239 83.19308902 5.82567239 83.19308902 7.83984375 86.2109375 C8.19119385 86.76531494 8.54254395 87.31969238 8.90454102 87.89086914 C10.01947816 89.64956301 11.14667993 91.39981907 12.27734375 93.1484375 C13.76802212 95.45383334 15.2452131 97.76708208 16.71484375 100.0859375 C17.37355469 101.10558594 18.03226562 102.12523438 18.7109375 103.17578125 C20.36604878 106.31677797 21.16381574 108.5994531 21.27734375 112.1484375 C20.02403259 113.80091858 20.02403259 113.80091858 18.27734375 115.1484375 C15.31609948 115.43164784 12.55461157 115.54163168 9.59375 115.51953125 C7.84439908 115.53691257 6.09505016 115.55449697 4.34570312 115.57226562 C1.5893994 115.58234397 -1.1667743 115.58593341 -3.9230957 115.58422852 C-6.58454202 115.58779709 -9.24498249 115.61513357 -11.90625 115.64453125 C-12.72927109 115.63634872 -13.55229218 115.6281662 -14.4002533 115.61973572 C-19.06202154 115.67105282 -19.06202154 115.67105282 -23.08300781 117.86132812 C-26.12516379 122.10476428 -28.54955376 126.62598866 -31.03515625 131.2109375 C-31.59783203 132.21705078 -32.16050781 133.22316406 -32.74023438 134.25976562 C-33.26681641 135.22462891 -33.79339844 136.18949219 -34.3359375 137.18359375 C-34.81844971 138.064104 -35.30096191 138.94461426 -35.7980957 139.85180664 C-37.04996347 142.24590273 -37.04996347 142.24590273 -35.72265625 145.1484375 C-35.12758868 145.15174765 -34.53252111 145.15505779 -33.9194212 145.15846825 C-19.44770729 145.23964841 -4.97609316 145.33172441 9.49547291 145.43596458 C16.49378582 145.48611071 23.4920869 145.53255333 30.49047852 145.5703125 C37.24026888 145.60674072 43.98991574 145.65344299 50.73959923 145.70650101 C53.31885225 145.72507937 55.89813272 145.74017449 58.47742653 145.75178146 C62.0811952 145.76858495 65.68466874 145.79760596 69.28833008 145.82958984 C70.89917984 145.83283012 70.89917984 145.83283012 72.54257202 145.83613586 C73.52273788 145.84729935 74.50290375 145.85846283 75.51277161 145.8699646 C76.36543012 145.87549536 77.21808863 145.88102612 78.09658527 145.88672447 C80.27734375 146.1484375 80.27734375 146.1484375 83.27734375 148.1484375 C83.99180528 153.77167511 82.46875447 157.69525417 79.84765625 162.54296875 C79.49726288 163.21639816 79.14686951 163.88982758 78.78585815 164.58366394 C78.04764019 165.99636136 77.30265428 167.4055408 76.55126953 168.8112793 C75.4000389 170.96524991 74.26869381 173.12874541 73.140625 175.29492188 C72.41909196 176.66986085 71.69647335 178.04423081 70.97265625 179.41796875 C70.4631694 180.38667656 70.4631694 180.38667656 69.94338989 181.37495422 C68.56432304 183.9501912 67.35536681 186.07041444 65.27734375 188.1484375 C62.58851726 188.35743515 60.0018278 188.44208623 57.31103516 188.43896484 C56.48811478 188.44568207 55.6651944 188.45239929 54.81733704 188.45932007 C52.08779924 188.47837011 49.35850645 188.48222787 46.62890625 188.484375 C44.73562518 188.49079844 42.84234511 188.49752645 40.94906616 188.50454712 C36.97611184 188.51653768 33.00324458 188.52022616 29.03027344 188.51904297 C23.93665771 188.51883976 18.84359985 188.54613543 13.75011635 188.58058739 C9.83820019 188.6028149 5.92641911 188.60688177 2.01444626 188.60582352 C0.13654026 188.60818599 -1.74136911 188.61704572 -3.6192131 188.63248825 C-6.24572638 188.65206316 -8.87102619 188.64634394 -11.49755859 188.63427734 C-12.27484818 188.64551636 -13.05213776 188.65675537 -13.85298157 188.66833496 C-17.39284833 188.62696496 -19.32779843 188.45801316 -22.15536499 186.2411499 C-23.6592045 184.23316091 -24.97043024 182.27771167 -26.17578125 180.078125 C-26.62203857 179.27713379 -27.0682959 178.47614258 -27.52807617 177.65087891 C-28.0047876 176.78382324 -28.48149902 175.91676758 -28.97265625 175.0234375 C-33.75689665 166.48106725 -38.75516785 158.09714944 -43.91015625 149.7734375 C-44.59400391 148.6687915 -45.27785156 147.56414551 -45.98242188 146.42602539 C-47.30039614 144.29771385 -48.61858344 142.16953422 -49.93701172 140.04150391 C-53.59492563 134.1150232 -57.18818216 128.14935981 -60.72265625 122.1484375 C-61.09197266 121.57657715 -61.46128906 121.0047168 -61.84179688 120.41552734 C-64.34176372 116.41054543 -65.55883926 113.82992467 -64.72265625 109.1484375 C-63.23043182 105.53720743 -61.4041197 102.13938943 -59.53515625 98.7109375 C-58.72691406 97.19608765 -58.72691406 97.19608765 -57.90234375 95.65063477 C-53.06640982 86.64259097 -48.0263996 77.74974409 -42.96484375 68.8671875 C-36.44582258 57.40689742 -29.97006583 45.89308772 -24.22265625 34.0234375 C-7.7475676 0.42239249 -7.7475676 0.42239249 0 0 Z " fill="#FDFDFD" transform="translate(76.72265625,21.8515625)"/>
6
+ <path d="M0 0 C0.39714706 0.48705382 0.79429413 0.97410765 1.20347595 1.47592068 C3.51902851 3.4403173 4.73458661 3.37813679 7.74438477 3.38526917 C8.72021515 3.39491699 9.69604553 3.40456482 10.70144653 3.414505 C12.30522659 3.40763924 12.30522659 3.40763924 13.94140625 3.40063477 C15.63195633 3.41110336 15.63195633 3.41110336 17.35665894 3.42178345 C21.09201452 3.44182267 24.82709534 3.44126022 28.5625 3.44140625 C31.15178173 3.45317043 33.74105666 3.46653227 36.33032227 3.48143005 C43.85397921 3.52140059 51.3775828 3.54101378 58.90132141 3.55760193 C69.12732034 3.58146822 79.35318672 3.62100186 89.57907104 3.67487907 C93.4030871 3.69125885 97.22697851 3.6949906 101.05102539 3.69789124 C103.38688373 3.70766424 105.72274009 3.71792698 108.05859375 3.72875977 C109.12778046 3.72620682 110.19696716 3.72365387 111.29855347 3.72102356 C112.76229904 3.73126556 112.76229904 3.73126556 114.25561523 3.74171448 C115.52875832 3.74416593 115.52875832 3.74416593 116.82762146 3.74666691 C119 4 119 4 122 6 C122.62836858 11.39479411 121.50839121 14.81264649 119.0078125 19.5546875 C118.70181122 20.14170441 118.39580994 20.72872131 118.08053589 21.33352661 C117.43656574 22.56216816 116.78575012 23.78724412 116.12841797 25.00878906 C115.1205218 26.8833288 114.13496707 28.76835985 113.15234375 30.65625 C108.3101806 39.8449097 108.3101806 39.8449097 106 41 C106.60024853 37.08426106 107.80307972 34.13080445 109.6875 30.65625 C110.22117187 29.65722656 110.75484375 28.65820312 111.3046875 27.62890625 C112.43489583 25.54296875 113.56510417 23.45703125 114.6953125 21.37109375 C115.22898437 20.37207031 115.76265625 19.37304688 116.3125 18.34375 C116.80363281 17.43818359 117.29476562 16.53261719 117.80078125 15.59960938 C118.98882756 13.02421909 119.65998173 10.81131051 120 8 C118.4058127 6.4058127 116.7506216 6.87199807 114.54081726 6.86869812 C113.09598465 6.86268585 113.09598465 6.86268585 111.6219635 6.85655212 C110.55650803 6.85708084 109.49105255 6.85760956 108.39331055 6.8581543 C107.27792908 6.85467987 106.16254761 6.85120544 105.0133667 6.84762573 C102.5819162 6.84025274 100.1504589 6.83491563 97.71899986 6.83133507 C93.87419991 6.8241955 90.02952952 6.80854805 86.18476868 6.78999329 C75.24990707 6.73740388 64.31511309 6.68909638 53.38012695 6.67407227 C46.70042407 6.66480025 40.02109077 6.63473029 33.34150124 6.59275246 C30.79098769 6.5804096 28.24042854 6.57532715 25.68988609 6.57755089 C22.12452896 6.57989441 18.56010449 6.55780757 14.99487305 6.5300293 C13.93549026 6.53663071 12.87610748 6.54323212 11.78462219 6.55003357 C4.6456023 6.45843273 4.6456023 6.45843273 1.31282043 4.09187317 C0 2 0 2 0 0 Z " fill="#CECECF" transform="translate(38,164)"/>
7
+ <path d="M0 0 C30.69 0 61.38 0 93 0 C93.495 1.485 93.495 1.485 94 3 C63.31 3 32.62 3 1 3 C0.67 3.66 0.34 4.32 0 5 C-0.66 5 -1.32 5 -2 5 C-1.34 3.35 -0.68 1.7 0 0 Z " fill="#EEEFF0" transform="translate(109,55)"/>
8
+ <path d="M0 0 C0.49447128 0.16233124 0.98894257 0.32466248 1.49839783 0.49191284 C5.00206468 1.20352405 8.46635626 1.13891189 12.02563477 1.12939453 C12.83094635 1.13114685 13.63625793 1.13289917 14.4659729 1.13470459 C17.12447268 1.13910129 19.7829058 1.13619306 22.44140625 1.1328125 C24.28938306 1.1334861 26.13735979 1.1344566 27.9853363 1.13571167 C31.85636235 1.13718563 35.72736531 1.13504351 39.59838867 1.13037109 C44.56403977 1.12467 49.52963686 1.12795713 54.49528599 1.13394356 C58.31020008 1.13755389 62.12510132 1.13640847 65.94001579 1.13381577 C67.77128035 1.13314801 69.60254607 1.13396964 71.43380928 1.13629532 C73.99049096 1.13882999 76.54708465 1.13496987 79.10375977 1.12939453 C80.2423217 1.13243088 80.2423217 1.13243088 81.40388489 1.13552856 C84.54157363 1.12282941 86.99991659 1.0000278 90 0 C89.34 1.32 88.68 2.64 88 4 C76.96922906 4.06944194 65.93850993 4.12278172 54.90756512 4.15543652 C49.78571044 4.17110742 44.66400507 4.19237168 39.54223633 4.22631836 C34.60151002 4.258861 29.66092751 4.27684228 24.72010231 4.28463173 C22.83299304 4.29018441 20.94589183 4.30102716 19.05884361 4.31719017 C16.42015816 4.33889682 13.78207059 4.34196978 11.14331055 4.34057617 C9.96727013 4.35675491 9.96727013 4.35675491 8.76747131 4.3732605 C3.47222534 4.34290218 3.47222534 4.34290218 0.99104309 2.54121399 C0 1 0 1 0 0 Z " fill="#DCDDDD" transform="translate(54,206)"/>
9
+ <path d="M0 0 C1 3 1 3 1.33984375 5.80859375 C2.1102283 9.53287884 3.50234999 11.87350066 5.5625 15.0625 C5.9138501 15.61687744 6.2652002 16.17125488 6.62719727 16.74243164 C7.74213441 18.50112551 8.86933618 20.25138157 10 22 C11.49067837 24.30539584 12.96786935 26.61864458 14.4375 28.9375 C15.09621094 29.95714844 15.75492188 30.97679688 16.43359375 32.02734375 C18.08870503 35.16834047 18.88647199 37.4510156 19 41 C17.74668884 42.65049744 17.74668884 42.65049744 16 44 C13.03959651 44.30748922 10.27885167 44.4409904 7.31640625 44.44140625 C6.46449203 44.45461411 5.61257782 44.46782196 4.73484802 44.48143005 C2.01069893 44.52235051 -0.71311297 44.54399944 -3.4375 44.5625 C-6.15821296 44.58630053 -8.8786088 44.61445809 -11.59913635 44.65428162 C-13.29184437 44.67859665 -14.98472012 44.69348936 -16.67759705 44.69789124 C-22.13806073 44.75988192 -22.13806073 44.75988192 -27 47 C-25.125 43.125 -25.125 43.125 -24 42 C-21.04470496 41.83970312 -18.11017543 41.74042672 -15.15234375 41.68359375 C-14.2659169 41.66281265 -13.37949005 41.64203156 -12.46620178 41.62062073 C-9.623383 41.555026 -6.78046883 41.49619448 -3.9375 41.4375 C-2.01496394 41.3943242 -0.09243766 41.35071022 1.83007812 41.30664062 C6.55328668 41.19933457 11.27659153 41.09809549 16 41 C15.41513467 36.32583509 15.00217219 33.34627914 12.0625 29.625 C8.62972217 24.96674198 5.50653343 20.19002442 2.5 15.25 C2.04246338 14.52893066 1.58492676 13.80786133 1.11352539 13.06494141 C-0.99722783 9.5544597 -2.03305512 7.73051813 -1.84375 3.546875 C-1 1 -1 1 0 0 Z " fill="#E9E9E9" transform="translate(79,93)"/>
10
+ <path d="M0 0 C1 3 1 3 1.33984375 5.80859375 C2.1102283 9.53287884 3.50234999 11.87350066 5.5625 15.0625 C5.9138501 15.61687744 6.2652002 16.17125488 6.62719727 16.74243164 C7.74213441 18.50112551 8.86933618 20.25138157 10 22 C11.49067837 24.30539584 12.96786935 26.61864458 14.4375 28.9375 C15.09621094 29.95714844 15.75492188 30.97679688 16.43359375 32.02734375 C18.05183434 35.0983689 18.63683935 37.56787612 19 41 C18.34 41 17.68 41 17 41 C16.44119141 39.31583984 16.44119141 39.31583984 15.87109375 37.59765625 C13.93531729 32.43974864 11.07056445 28.02837058 8.0625 23.4375 C-2.04569496 7.82250926 -2.04569496 7.82250926 -1.8125 3.625 C-1 1 -1 1 0 0 Z " fill="#E5E5E6" transform="translate(79,93)"/>
11
+ <path d="M0 0 C0.66 0 1.32 0 2 0 C1.34 1.32 0.68 2.64 0 4 C-9.24 4 -18.48 4 -28 4 C-27.67 3.34 -27.34 2.68 -27 2 C-26.21761963 1.97494385 -25.43523926 1.9498877 -24.62915039 1.92407227 C-21.10675051 1.80850212 -17.5846444 1.68560051 -14.0625 1.5625 C-12.83080078 1.52318359 -11.59910156 1.48386719 -10.33007812 1.44335938 C-8.5753418 1.38051758 -8.5753418 1.38051758 -6.78515625 1.31640625 C-5.70113525 1.27974854 -4.61711426 1.24309082 -3.50024414 1.20532227 C-1.060737 1.27635735 -1.060737 1.27635735 0 0 Z " fill="#D9DADA" transform="translate(142,206)"/>
12
+ <path d="M0 0 C0.66 0 1.32 0 2 0 C3.296875 1.8359375 3.296875 1.8359375 4.75 4.375 C6.38221585 7.2082043 8.01360098 10.02150221 9.76171875 12.78515625 C10.31472656 13.66042969 10.86773437 14.53570312 11.4375 15.4375 C11.95183594 16.24058594 12.46617187 17.04367188 12.99609375 17.87109375 C14 20 14 20 13 23 C10.82982022 19.35624684 8.66444711 15.70966089 6.5 12.0625 C5.87996094 11.02158203 5.25992188 9.98066406 4.62109375 8.90820312 C4.03457031 7.91884766 3.44804687 6.92949219 2.84375 5.91015625 C2.29912109 4.99371338 1.75449219 4.07727051 1.19335938 3.13305664 C0 1 0 1 0 0 Z " fill="#D6D6D6" transform="translate(158,149)"/>
13
+ <path d="M0 0 C3.39217965 1.13072655 3.57145349 1.48480916 5.19140625 4.45703125 C5.77245117 5.50793945 5.77245117 5.50793945 6.36523438 6.58007812 C6.95788086 7.68512695 6.95788086 7.68512695 7.5625 8.8125 C7.96146484 9.53759766 8.36042969 10.26269531 8.77148438 11.00976562 C10.57989004 14.30957764 12.32966274 17.62796863 14 21 C10.38876071 19.79625357 10.12667668 18.9987917 8.30078125 15.78125 C7.81416016 14.93175781 7.32753906 14.08226562 6.82617188 13.20703125 C6.32666016 12.31371094 5.82714844 11.42039063 5.3125 10.5 C4.80138672 9.60667969 4.29027344 8.71335938 3.76367188 7.79296875 C0 1.17011223 0 1.17011223 0 0 Z " fill="#DADADA" transform="translate(41,184)"/>
14
+ <path d="M0 0 C2.94350444 3.60130791 5.68271192 7.28849015 8.3125 11.125 C9.03050781 12.15882812 9.74851562 13.19265625 10.48828125 14.2578125 C10.98714844 15.16273437 11.48601562 16.06765625 12 17 C11.67 17.99 11.34 18.98 11 20 C9.26935314 17.540148 7.54291285 15.07760102 5.82421875 12.609375 C4.77673047 11.11104059 3.72147443 9.61793034 2.64453125 8.140625 C0.41517654 5.01791877 0 4.02676792 0 0 Z " fill="#CFCFCF" transform="translate(85,32)"/>
15
+ <path d="M0 0 C4.6494678 5.36477054 10 11.73362916 10 19 C9.34 19 8.68 19 8 19 C7.608125 17.845 7.21625 16.69 6.8125 15.5 C5.34993366 11.54122669 3.37335185 8.23027275 0.98828125 4.76171875 C0 3 0 3 0 0 Z " fill="#D2D3D3" transform="translate(88,115)"/>
16
+ <path d="M0 0 C4.95 0 9.9 0 15 0 C14.67 0.66 14.34 1.32 14 2 C10.63576389 2.3979204 7.29009676 2.50912623 3.90625 2.65625 C2.9471875 2.7696875 1.988125 2.883125 1 3 C0.67 3.66 0.34 4.32 0 5 C-0.66 5 -1.32 5 -2 5 C-1.34 3.35 -0.68 1.7 0 0 Z " fill="#E9EAEA" transform="translate(109,55)"/>
17
+ <path d="M0 0 C0.33 0.66 0.66 1.32 1 2 C-0.24282012 4.45038293 -1.52882339 6.773325 -2.9375 9.125 C-3.32357422 9.78371094 -3.70964844 10.44242188 -4.10742188 11.12109375 C-5.06446578 12.751613 -6.03132815 14.37636184 -7 16 C-7.33 15.01 -7.66 14.02 -8 13 C-6.76585956 10.65717548 -5.50753507 8.51707416 -4.0625 6.3125 C-3.67642578 5.70599609 -3.29035156 5.09949219 -2.89257812 4.47460938 C-1.93753581 2.97719735 -0.96993914 1.48780599 0 0 Z " fill="#D8D8D9" transform="translate(66,33)"/>
18
+ <path d="M0 0 C0.66 0 1.32 0 2 0 C1.34 1.32 0.68 2.64 0 4 C-3.3 4 -6.6 4 -10 4 C-10 3.34 -10 2.68 -10 2 C-9.04287109 1.90912109 -9.04287109 1.90912109 -8.06640625 1.81640625 C-6.82697266 1.69072266 -6.82697266 1.69072266 -5.5625 1.5625 C-4.73878906 1.48128906 -3.91507813 1.40007812 -3.06640625 1.31640625 C-1.01337975 1.21069185 -1.01337975 1.21069185 0 0 Z " fill="#D0D0D0" transform="translate(142,206)"/>
19
+ <path d="M0 0 C0.66 0 1.32 0 2 0 C0 4 -2 8 -4 12 C-4.66 12 -5.32 12 -6 12 C-4.43358249 7.69235185 -2.31663844 3.93828536 0 0 Z " fill="#D0D0D0" transform="translate(56,50)"/>
20
+ <path d="M0 0 C0.66 0 1.32 0 2 0 C0.43358249 4.30764815 -1.68336156 8.06171464 -4 12 C-4.66 11.67 -5.32 11.34 -6 11 C-4.02 7.37 -2.04 3.74 0 0 Z " fill="#DDDDDE" transform="translate(49,63)"/>
21
+ <path d="M0 0 C0.66 0 1.32 0 2 0 C3.2890625 1.6796875 3.2890625 1.6796875 4.625 3.875 C5.29402344 4.95394531 5.29402344 4.95394531 5.9765625 6.0546875 C7 8 7 8 7 10 C6.34 10 5.68 10 5 10 C3.35 6.7 1.7 3.4 0 0 Z " fill="#E0E0E1" transform="translate(158,149)"/>
22
+ <path d="M0 0 C3.52834378 0.60041144 3.90567885 0.87685849 6.25 3.9375 C8 7 8 7 8 9 C7.34 9 6.68 9 6 9 C4.4921875 7.03125 4.4921875 7.03125 2.875 4.5 C2.33617188 3.6646875 1.79734375 2.829375 1.2421875 1.96875 C0.83226563 1.3190625 0.42234375 0.669375 0 0 Z " fill="#CFCFCF" transform="translate(77,23)"/>
23
+ <path d="M0 0 C2.0245738 1.93254772 3.42105792 3.63158688 5 6 C4.625 8.1875 4.625 8.1875 4 10 C0 3.375 0 3.375 0 0 Z " fill="#DEDEDE" transform="translate(83,107)"/>
24
+ <path d="M0 0 C3.16115776 1.36983503 3.9927092 1.9890638 6 5 C5.67 5.99 5.34 6.98 5 8 C4.16382818 6.8562364 3.33113541 5.70992861 2.5 4.5625 C2.0359375 3.92441406 1.571875 3.28632812 1.09375 2.62890625 C0 1 0 1 0 0 Z " fill="#E1E3E2" transform="translate(91,44)"/>
25
+ </svg>`;
3
26
  export const sidebarUI = ({ sessions, sessionId }) => ui.box({
4
27
  width: 280,
5
28
  height: "full",
@@ -7,17 +30,19 @@ export const sidebarUI = ({ sessions, sessionId }) => ui.box({
7
30
  background: "muted/20",
8
31
  }, [
9
32
  ui.col({ width: "full", height: "full" }, [
10
- ui.box({ padding: "xs" }, [
11
- ui.row({ justify: "between", align: "center", width: "full" }, [
12
- ui.button({
13
- label: "OpenBot",
14
- variant: "ghost",
15
- size: "sm",
33
+ ui.box({ padding: "xs", width: "full" }, [
34
+ ui.box({ padding: "xs" }, [
35
+ ui.listItem({
36
+ padding: "xs",
16
37
  onClickAction: {
17
38
  type: "client:navigate",
18
- data: { path: "/" },
39
+ data: { path: "/" }
19
40
  },
20
- }),
41
+ background: "transparent",
42
+ }, [
43
+ ui.image(`data:image/svg+xml,${encodeURIComponent(logoSvg)}`, "OpenBot Logo", { height: 20 }),
44
+ ui.text("OpenBot", { className: "logo" }),
45
+ ]),
21
46
  ]),
22
47
  ]),
23
48
  ui.col({ width: "full", gap: "sm", padding: "sm" }, [
@@ -34,8 +59,11 @@ export const sidebarUI = ({ sessions, sessionId }) => ui.box({
34
59
  type: "client:navigate",
35
60
  data: { path: `/?sessionId=${session.id}` },
36
61
  },
37
- background: session.id === sessionId ? "muted" : "transparent",
38
- }, [ui.text(session.id.slice(0, 10), { size: "sm" })]))
62
+ background: session.id === sessionId ? "muted" : undefined,
63
+ }, [
64
+ ui.icon("MessageCircleIcon", { size: "sm" }),
65
+ ui.text(session.id.slice(0, 10), { size: "sm" })
66
+ ]))
39
67
  ]),
40
68
  ]),
41
69
  ui.spacer({ size: "xs" }),
@@ -50,7 +78,10 @@ export const sidebarUI = ({ sessions, sessionId }) => ui.box({
50
78
  type: "client:navigate",
51
79
  data: { path: "/?tab=settings" },
52
80
  },
53
- }, [ui.text("Settings", { size: "sm" })]),
81
+ }, [
82
+ ui.icon("SettingsIcon", { size: "sm" }),
83
+ ui.text("Settings", { size: "sm" })
84
+ ]),
54
85
  ]),
55
86
  ]),
56
87
  ]),
package/dist/ui/thread.js CHANGED
@@ -4,11 +4,13 @@ export const threadUI = ui.box({
4
4
  height: "full",
5
5
  }, [ui.thread({
6
6
  placeholder: "Ask me anything about your system or projects...",
7
- welcomeTitle: "OpenBot",
8
- welcomeMessage: "Hey there! I'm your trusty system sidekick with superpowers over your files and terminal. Let's make some magic happen!",
9
- suggestions: [
10
- "What is in my current directory?",
11
- "Check system status",
12
- "Who am I?",
13
- ]
14
- })]);
7
+ }, [
8
+ ui.heading("Hey there!"),
9
+ ui.text("I'm your trusty system sidekick with superpowers over your files and terminal. Let's make some magic happen!", { size: "sm", color: "mutedForeground" }),
10
+ ui.col({ gap: "sm" }, [
11
+ ui.button({ onClickAction: { type: "user:text", data: { content: "What is in my current directory?" } }, label: "What is in my current directory?", size: "sm", variant: "outline" }),
12
+ ui.button({ onClickAction: { type: "user:text", data: { content: "Check system status" } }, label: "Check system status", size: "sm", variant: "outline" }),
13
+ ui.button({ onClickAction: { type: "user:text", data: { content: "Who am I?" } }, label: "Who am I?", size: "sm", variant: "outline" }),
14
+ ui.button({ onClickAction: { type: "user:text", data: { content: "Who are you?" } }, label: "Who are you?", size: "sm", variant: "outline" }),
15
+ ]),
16
+ ])]);
package/package.json CHANGED
@@ -1,38 +1,37 @@
1
1
  {
2
2
  "name": "openbot",
3
- "version": "0.1.20",
3
+ "version": "0.1.23",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "bin": {
7
- "openbot": "./dist/cli.js",
8
- "openbot-server": "./dist/server.js"
7
+ "openbot": "./dist/cli.js"
9
8
  },
10
9
  "dependencies": {
11
10
  "@ai-sdk/anthropic": "^3.0.33",
12
11
  "@ai-sdk/openai": "^3.0.13",
12
+ "@melony/ui-kit": "^0.1.4",
13
13
  "@types/cors": "^2.8.19",
14
+ "ai": "^6.0.42",
14
15
  "commander": "^14.0.2",
15
16
  "cors": "^2.8.6",
16
17
  "dotenv": "^16.4.5",
17
18
  "express": "^4.19.2",
18
- "zod": "^4.3.5",
19
- "@melony/plugin-ai-sdk": "0.1.5",
20
- "@melony/plugin-file-system": "0.1.3",
21
- "@melony/plugin-browser": "0.1.5",
22
- "@melony/plugin-shell": "0.1.2",
23
- "melony": "0.2.7",
24
- "@melony/ui-kit": "0.1.3",
25
- "@melony/plugin-meta-agent": "0.1.3"
19
+ "gray-matter": "^4.0.3",
20
+ "js-yaml": "^4.1.1",
21
+ "melony": "^0.2.8",
22
+ "playwright": "^1.45.0",
23
+ "zod": "^4.3.5"
26
24
  },
27
25
  "devDependencies": {
28
26
  "@types/express": "^4.17.21",
27
+ "@types/js-yaml": "^4.0.9",
29
28
  "@types/node": "^20.10.1",
30
29
  "tsx": "^4.21.0",
31
30
  "typescript": "^5.9.3"
32
31
  },
33
32
  "scripts": {
34
- "dev": "tsx watch src/server.ts",
33
+ "dev": "tsx watch src/cli.ts server",
35
34
  "build": "tsc",
36
- "start": "node dist/server.js"
35
+ "start": "node dist/cli.js server"
37
36
  }
38
37
  }
package/dist/agent.js DELETED
@@ -1,110 +0,0 @@
1
- import { melony } from "melony";
2
- import { shellPlugin, shellToolDefinitions } from "@melony/plugin-shell";
3
- import { shellUIPlugin } from "@melony/plugin-shell/ui";
4
- import { browserPlugin, browserToolDefinitions } from "@melony/plugin-browser";
5
- import { browserUIPlugin } from "@melony/plugin-browser/ui";
6
- import { fileSystemPlugin, fileSystemToolDefinitions } from "@melony/plugin-file-system";
7
- import { fileSystemUIPlugin } from "@melony/plugin-file-system/ui";
8
- import { metaAgentPlugin, metaAgentToolDefinitions, buildSystemPrompt } from "@melony/plugin-meta-agent";
9
- import { metaAgentUIPlugin } from "@melony/plugin-meta-agent/ui";
10
- import { aiSDKPlugin } from "@melony/plugin-ai-sdk";
11
- import { openai } from "@ai-sdk/openai";
12
- import { anthropic } from "@ai-sdk/anthropic";
13
- import { initHandler } from "./handlers/init.js";
14
- import { loadConfig, resolvePath, DEFAULT_BASE_DIR } from "./config.js";
15
- import path from "node:path";
16
- /**
17
- * Parse model string to extract provider and model ID
18
- * Supports formats: "provider:model", "provider/model", or just "model" (defaults to openai)
19
- */
20
- function parseModelString(modelString) {
21
- // Check for provider:model format
22
- if (modelString.includes(":")) {
23
- const [provider, modelId] = modelString.split(":");
24
- if (provider === "openai" || provider === "anthropic") {
25
- return { provider, modelId };
26
- }
27
- }
28
- // Check for provider/model format
29
- if (modelString.includes("/")) {
30
- const [provider, modelId] = modelString.split("/");
31
- if (provider === "openai" || provider === "anthropic") {
32
- return { provider, modelId };
33
- }
34
- }
35
- // Auto-detect provider based on model name
36
- if (modelString.startsWith("claude") || modelString.startsWith("claude-")) {
37
- return { provider: "anthropic", modelId: modelString };
38
- }
39
- // Default to OpenAI
40
- return { provider: "openai", modelId: modelString };
41
- }
42
- /**
43
- * Create the OpenBot meta-agent
44
- * This bot has self-modification capabilities, skill management, and persistent identity
45
- */
46
- export async function createOpenBot(options) {
47
- const config = loadConfig();
48
- const openaiKey = options?.openaiApiKey || config.openaiApiKey || process.env.OPENAI_API_KEY;
49
- const anthropicKey = options?.anthropicApiKey || config.anthropicApiKey || process.env.ANTHROPIC_API_KEY;
50
- if (openaiKey) {
51
- process.env.OPENAI_API_KEY = openaiKey;
52
- }
53
- if (anthropicKey) {
54
- process.env.ANTHROPIC_API_KEY = anthropicKey;
55
- }
56
- const baseDir = config.baseDir || DEFAULT_BASE_DIR;
57
- const resolvedBaseDir = resolvePath(baseDir);
58
- // Parse model configuration
59
- const { provider, modelId } = parseModelString(config.model || "gpt-4o-mini");
60
- // Tool definitions shared by both providers
61
- const toolDefinitions = {
62
- ...shellToolDefinitions,
63
- ...browserToolDefinitions,
64
- ...fileSystemToolDefinitions,
65
- ...metaAgentToolDefinitions,
66
- };
67
- // Create the appropriate LLM plugin based on provider
68
- let model;
69
- if (provider === "anthropic") {
70
- if (!anthropicKey) {
71
- console.warn("Warning: Anthropic model selected but ANTHROPIC_API_KEY is not set");
72
- }
73
- model = anthropic(modelId);
74
- }
75
- else {
76
- if (!openaiKey) {
77
- console.warn("Warning: OpenAI model selected but OPENAI_API_KEY is not set");
78
- }
79
- model = openai(modelId);
80
- }
81
- const llmPlugin = aiSDKPlugin({
82
- model: model,
83
- system: (context) => buildSystemPrompt(resolvedBaseDir, context),
84
- toolDefinitions,
85
- });
86
- // Use a dedicated directory for the agent's browser data to avoid conflicts with your main Chrome.
87
- // Using the root Chrome directory causes conflicts and can log you out of your main browser.
88
- const userDataDir = path.join(resolvedBaseDir, "browser-data");
89
- return melony()
90
- .use(shellPlugin({ cwd: process.cwd() }))
91
- .use(shellUIPlugin())
92
- .use(browserPlugin({
93
- headless: true, // Set to false once to log in manually if needed
94
- userDataDir: userDataDir,
95
- channel: 'chrome',
96
- model: model
97
- }))
98
- .use(browserUIPlugin())
99
- .use(fileSystemPlugin({
100
- baseDir: "/", // Global access
101
- }))
102
- .use(fileSystemUIPlugin())
103
- .use(metaAgentPlugin({
104
- baseDir: resolvedBaseDir,
105
- allowSoulModification: false, // Protect core values
106
- }))
107
- .use(metaAgentUIPlugin())
108
- .use(llmPlugin)
109
- .on("init", initHandler);
110
- }