@auto-ai/agent 2.1.212 → 2.1.214
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.
- package/dist/safe-a/404/index.html +1 -1
- package/dist/safe-a/404.html +1 -1
- package/dist/safe-a/_next/static/{AY06zpWQV0yfK_fQwZZ5t → 8K8MheZHG-fXZxruG2Nc8}/_buildManifest.js +1 -1
- package/dist/safe-a/_next/static/chunks/{ab522ef4566e28db.js → 01766c1e2fdff227.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{aa34ec2d74f7775c.js → 04c9439163b67552.js} +1 -1
- package/dist/safe-a/_next/static/chunks/05e1926dc5c477b7.js +1 -0
- package/dist/safe-a/_next/static/chunks/{e7d6284971d07422.js → 06b923aa1177f43f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9924bd3807982f9c.js → 092c97532613af2a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/0b5e5b964346a287.js +1 -0
- package/dist/safe-a/_next/static/chunks/0b639ff4f1971d14.js +1 -0
- package/dist/safe-a/_next/static/chunks/{7cd0d9159e722599.js → 0b69dba7f1e63f30.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{af07509fa7bac8c4.js → 0ce6504fc10ce408.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e07906d264057e7b.js → 0e1e7d5f7a375308.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{00b0744649a5e608.js → 0e8139882ad093d2.js} +1 -1
- package/dist/safe-a/_next/static/chunks/0ea5a62c3f30dc56.js +1 -0
- package/dist/safe-a/_next/static/chunks/0f1810e4c6b0dd0c.js +1 -0
- package/dist/safe-a/_next/static/chunks/{70b95d96e33a5d63.js → 0fa097a572705cfa.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{faf267ae8eaabb78.js → 0fb0d030e8dee231.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ed4322c3137a7cbf.js → 0fd3876e0d9e8acc.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{c43009f5a3f83289.js → 106955e3cc6a6843.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{3f18c3fa64301e74.js → 1078bc1642db53ad.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{a0256e00bbdc334c.js → 108a0b77418f1d31.js} +1 -1
- package/dist/safe-a/_next/static/chunks/1289fc2bb1119e18.js +1 -0
- package/dist/safe-a/_next/static/chunks/{967dfe61a543e533.js → 13b54d70a1ee1de7.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{54a2df4508a1c311.js → 13f94fc3dda88c90.js} +1 -1
- package/dist/safe-a/_next/static/chunks/155374df9f6b4b9a.js +1 -0
- package/dist/safe-a/_next/static/chunks/{12932eb7d288b09b.js → 16ea1d3cf6db8a53.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{23f50ba74d421ab3.js → 170f7361bd4d33e2.js} +1 -1
- package/dist/safe-a/_next/static/chunks/17722e3ac4e00587.js +1 -0
- package/dist/safe-a/_next/static/chunks/{c0960892f67b4256.js → 179a5dac78ab2cb9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{966730983f55a7c6.js → 1818d7a661948f6b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/18977fe8f51209aa.js +1 -0
- package/dist/safe-a/_next/static/chunks/{57e13ec897ff78d6.js → 19584f955475ce91.js} +1 -1
- package/dist/safe-a/_next/static/chunks/1974f51c298bce94.js +1 -0
- package/dist/safe-a/_next/static/chunks/{948dc342d4746ffc.js → 19c1491e85e22b3b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{a8696c4a576878ae.js → 19ca17e5015c42a3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{03039556684e9812.js → 1a4b553856a8ffdf.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{93588b2335ca95de.js → 1b55c29b8cad4a50.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{878dd96f8fcd6bd4.js → 1bb28f71c19fa824.js} +1 -1
- package/dist/safe-a/_next/static/chunks/1bfa645704d9149a.js +1 -0
- package/dist/safe-a/_next/static/chunks/{fd3f75ac79c1d04e.js → 1c9321874fea5f0d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{8b1990cf2eb41663.js → 1d3e7886be9f671c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{d2bba4dbd6e24f7e.js → 1e17456ccebc9cd2.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{2bd512c6acf9ee9b.js → 1e43922998a0ed2f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{d653880800910810.js → 1fec17d16aff9eed.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{a39dba23f5098cde.js → 2046937bffedf074.js} +1 -1
- package/dist/safe-a/_next/static/chunks/219a3413675ba6f1.js +1 -0
- package/dist/safe-a/_next/static/chunks/{8cee526b3846c40b.js → 2326118ef1328bc5.js} +1 -1
- package/dist/safe-a/_next/static/chunks/236775e4ec4f8a94.js +1 -0
- package/dist/safe-a/_next/static/chunks/{afab34a5bb437673.js → 242529c986baeb00.js} +1 -1
- package/dist/safe-a/_next/static/chunks/27069b3f310e0a86.js +1 -0
- package/dist/safe-a/_next/static/chunks/{dfd8167d74bbaa3a.js → 270d7571d2eea071.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{591fe54d06e0a33e.js → 27c407347ce26b78.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{03af20498d43b518.js → 27ff2e69b2fd19e5.js} +1 -1
- package/dist/safe-a/_next/static/chunks/291c07da1c127dc1.js +1 -0
- package/dist/safe-a/_next/static/chunks/29676075a0390867.js +1 -0
- package/dist/safe-a/_next/static/chunks/{2be2d49054d4606c.js → 2c6d585a97629311.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{1409701c73ffe517.js → 2df3e464b6247e75.js} +1 -1
- package/dist/safe-a/_next/static/chunks/2e574acbf68e77ff.js +1 -0
- package/dist/safe-a/_next/static/chunks/2e57b45e52bb735e.js +1 -0
- package/dist/safe-a/_next/static/chunks/{c537d051140acc61.js → 2ec6d7ddb4c04987.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{dee1daaeed29e5a2.js → 2f7d30e66e995b02.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{66247e9b3cf471f5.js → 2fab2306850ac97b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9721e6d173bcda17.js → 2fcc6298b6dd7a82.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ccbe0fe39b523768.js → 303d9c2a2c956f25.js} +1 -1
- package/dist/safe-a/_next/static/chunks/32a7ca0a75a897da.js +1 -0
- package/dist/safe-a/_next/static/chunks/{06e2cd3fae94aae8.js → 32b4d63e10d31351.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{4f55f5dfceddc1fe.js → 32b9bdd82a961878.js} +1 -1
- package/dist/safe-a/_next/static/chunks/3509a66e019ceae3.js +1 -0
- package/dist/safe-a/_next/static/chunks/{ae7e9c73a1d653fd.js → 3520f1af0a1b7f66.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{7b6898a7f9df6495.js → 354aaa2e36b75b81.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e4776ea06fa1720a.js → 3590c4a4f40cdb5d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{2ccdfcf9ecfa2ea8.js → 35f1637c2feb232d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{94d40dcd515ca4ad.js → 37bbbf907196a5bf.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{7ed753f2db91bc38.js → 37cfaa4963ac51f3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{29a317486c4ab7d7.js → 3934bd57f459566e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{a3af4dcdb725b47f.js → 3a947667fddbdd53.js} +1 -1
- package/dist/safe-a/_next/static/chunks/3aac5736e5781b46.js +1 -0
- package/dist/safe-a/_next/static/chunks/{f7d33f46dfbddf65.js → 3ae23df392f9bed8.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{65ee07c4b6209141.js → 3ae4e2529aa621fb.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{30f37e8e02339538.js → 3b2bb9f17546ee3e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{02339beb679bec8d.js → 3bcd531d40d6c019.js} +1 -1
- package/dist/safe-a/_next/static/chunks/3c695d1c2efbc749.js +1 -0
- package/dist/safe-a/_next/static/chunks/3d8e9a96a69193d4.js +1 -0
- package/dist/safe-a/_next/static/chunks/3dcb1dcf23e7ab9c.js +1 -0
- package/dist/safe-a/_next/static/chunks/3e2ea3a7fe64826d.js +1 -0
- package/dist/safe-a/_next/static/chunks/{472047ea96adfca5.js → 3e9c98df7d56e9b2.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{3da255bcf22e013d.js → 3ec05a61e93547d3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/3f6fe8a1903009ea.js +1 -0
- package/dist/safe-a/_next/static/chunks/3fb4674edcb2d726.js +1 -0
- package/dist/safe-a/_next/static/chunks/{c013a3a3b1574b7d.js → 3fd03b9ed21b30fc.js} +1 -1
- package/dist/safe-a/_next/static/chunks/40268f8e3ff0314e.js +1 -0
- package/dist/safe-a/_next/static/chunks/40a2fb9cf3a7e6fd.js +1 -0
- package/dist/safe-a/_next/static/chunks/{dabd2cc5e900d556.js → 40cc0252b2f1d855.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{19a47cfc8ca4c0a7.js → 413a7be096275d7f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e6c441f81a8ea81c.js → 44cbf68ad086a6a3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{435e18828af1d066.js → 459d401d9f9e5b9f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/45ab9a1f693d609c.js +1 -0
- package/dist/safe-a/_next/static/chunks/{9db0d8129d6b7b5e.js → 481a2858f7df907d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{de208f3610c12b2c.js → 49df9708d6328c4a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ad22e1613386ba8d.js → 4a340ea4ac145216.js} +1 -1
- package/dist/safe-a/_next/static/chunks/4a426c156537f974.js +1 -0
- package/dist/safe-a/_next/static/chunks/4be4ca8f1ec9c171.js +1 -0
- package/dist/safe-a/_next/static/chunks/4be779bcbd94352d.js +1 -0
- package/dist/safe-a/_next/static/chunks/4c33a1cc6db74105.js +1 -0
- package/dist/safe-a/_next/static/chunks/4d129d4e15c8c424.js +1 -0
- package/dist/safe-a/_next/static/chunks/{c84ea2dc8d3281e6.js → 4df298f5b420f474.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{dfe4d8ffc37b96da.js → 4dfbfdff43b8479b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/5069ee4aa806b0ea.js +1 -0
- package/dist/safe-a/_next/static/chunks/519049cd74a40910.js +1 -0
- package/dist/safe-a/_next/static/chunks/522518d740397639.js +1 -0
- package/dist/safe-a/_next/static/chunks/52e2164e45febae6.js +1 -0
- package/dist/safe-a/_next/static/chunks/{f8757d2c1a969081.js → 534b5acf573aa491.js} +1 -1
- package/dist/safe-a/_next/static/chunks/538cc02e54714b23.js +1 -0
- package/dist/safe-a/_next/static/chunks/{97d506a00590396c.js → 53be52c43a14557c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/54c43751bf4c4da2.js +1 -0
- package/dist/safe-a/_next/static/chunks/{0c19efa935cdd816.js → 55087cc98e6237f1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{5c2a7e118fa66960.js → 55f8de91b4803778.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{569dda34679bca70.js → 560ca23f77c0e819.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{7c2d68248d759f50.js → 5798600d2ea8a3e8.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{6e145bea7acc82b4.js → 57bb853857f3de83.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{65963496d7fa49bc.js → 588e6975a7bd6671.js} +1 -1
- package/dist/safe-a/_next/static/chunks/58dfdb6e018c4a57.js +1 -0
- package/dist/safe-a/_next/static/chunks/{648649ebbc7565b9.js → 5a0b630678282d4f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{1f90e84b5a4dad81.js → 5a3e355216280144.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{63f33483697b26ca.js → 5a4c198fd41e8ec4.js} +1 -1
- package/dist/safe-a/_next/static/chunks/5b916c9dc09e323c.js +1 -0
- package/dist/safe-a/_next/static/chunks/5ccd5a6ac9c2f980.js +1 -0
- package/dist/safe-a/_next/static/chunks/{eb248f97f593a288.js → 5d5333084191fb10.js} +1 -1
- package/dist/safe-a/_next/static/chunks/5d79b7f202080232.js +1 -0
- package/dist/safe-a/_next/static/chunks/{a367a4ab4b91ce6b.js → 5ea79c109cbe8a86.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{daaffc256846db90.js → 5ee72092303043ef.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9583c5cc3861200c.js → 5fc8a5235ddfa787.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{8c97e3b556b32001.js → 61ce261738313b8a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{503bbec2e3179a3c.js → 62d925bcc8518b6f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/63ec034afca4b5d6.js +1 -0
- package/dist/safe-a/_next/static/chunks/{547eb82208058c71.js → 644aa76620718c98.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{6d0bf0ac1fdb7eab.js → 648b653b36802fdc.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{1d737ed6e08d2466.js → 6522643341a0921c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{829196dbf7eddb51.js → 65fb49c8a7f59842.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e878ffaf394e2c30.js → 65fe0975412ff703.js} +1 -1
- package/dist/safe-a/_next/static/chunks/6677c64fd587e78c.js +1 -0
- package/dist/safe-a/_next/static/chunks/{ea136b1a439307e8.js → 66b30159915524db.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{cf99b249b986e2bd.js → 66ed07a735eac6e3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/6785757cc05fec19.js +1 -0
- package/dist/safe-a/_next/static/chunks/{8aafb8ec5208a445.js → 67c9db5577080125.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ada2807c297fe674.js → 68bd2bd64624e20d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{774e554c11c8759a.js → 692e7ee14236fefb.js} +1 -1
- package/dist/safe-a/_next/static/chunks/696e3ddd135b85b4.js +1 -0
- package/dist/safe-a/_next/static/chunks/{dcdc329f64f1a7a8.js → 69cfdbc51cf2d3c3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{1aaf9fb00fb53ef9.js → 6ae709c575c74979.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{dfbd9d8a4137edd6.js → 6b652524b5ffdd9e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{645741ee91707763.js → 6b7c3c962a14dc29.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ec24f7a0593636d9.js → 6bc7c57f119ad4f6.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{2c0b2fd9fb2fea66.js → 6c3b2d0be1c633b6.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{29cf9e89be8a7f75.js → 6cc2f7f962cdd082.js} +1 -1
- package/dist/safe-a/_next/static/chunks/6d1f15f3eb86ea37.js +1 -0
- package/dist/safe-a/_next/static/chunks/{3e45de4a81d1f7a6.js → 6d4209e94b1aafe6.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{c43f94053172eb84.js → 6f3afa83656eab67.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{b4d570502774dffb.js → 6f4460bd0b8a57af.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ec048ffab26ebcd6.js → 6fe835d41fdbd638.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{6349c7cf3b394b81.js → 70459a2a4c45653e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{c5fd875d1d9fd6c4.js → 7137c7537c459c31.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{740732a162598c49.js → 715c085d7c10eeda.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{42d0ae4192d72f8e.js → 71668b2d16d048d8.js} +1 -1
- package/dist/safe-a/_next/static/chunks/71d3a80bc9d53b07.js +1 -0
- package/dist/safe-a/_next/static/chunks/{5c076874caf0532e.js → 71e3a90489469c28.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{d0d06ea64246c2e0.js → 72a56bd75075fd83.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{957b35b92a00be9d.js → 72ef1696f44fcf61.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{5076e29ddf662e81.js → 736441266ceb14e2.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{0f93a62e5e2db48b.js → 73cbf0064096e28c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/7491dc26b3b05de9.js +1 -0
- package/dist/safe-a/_next/static/chunks/{ae1404fdd6ec935a.js → 751de74a23cc9036.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e632e1b120215697.js → 756b6c2e620386ff.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{5ca0c9bb26daf732.js → 75a396e1752cd59d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/764c541428e1c6eb.js +1 -0
- package/dist/safe-a/_next/static/chunks/{e7f1683dcd85bf06.js → 79128afded6e01d9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/7988d5ea63356e10.js +1 -0
- package/dist/safe-a/_next/static/chunks/{cd733da27bed8af2.js → 7aa69fd5d97b7146.js} +1 -1
- package/dist/safe-a/_next/static/chunks/7b9c09d0ce43f1c2.js +1 -0
- package/dist/safe-a/_next/static/chunks/{9ae8f05f80dedfa4.js → 7d3bf918bccde738.js} +1 -1
- package/dist/safe-a/_next/static/chunks/7dbb8abebf50d816.js +1 -0
- package/dist/safe-a/_next/static/chunks/{fd9b8164ea743aa0.js → 7dd32128bdee61f7.js} +1 -1
- package/dist/safe-a/_next/static/chunks/7ef348801eff6590.js +1 -0
- package/dist/safe-a/_next/static/chunks/{2f35f32799fb08ac.js → 7f6e82ac63db5eff.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{738c808ddc82ea44.js → 7fd45fb9cf0995f3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/82614b5de9f78114.js +1 -0
- package/dist/safe-a/_next/static/chunks/{a12eeb7c77a7506f.js → 84185f4bb07ccbd7.js} +1 -1
- package/dist/safe-a/_next/static/chunks/85fc05549f7f100c.js +1 -0
- package/dist/safe-a/_next/static/chunks/{b0638abf4a6eb85f.js → 87e12ecbe9521f9b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{86c0a63bf95598a3.js → 88a999988f915988.js} +1 -1
- package/dist/safe-a/_next/static/chunks/88bc97899d2ce4e5.js +1 -0
- package/dist/safe-a/_next/static/chunks/8989a60219113c80.js +1 -0
- package/dist/safe-a/_next/static/chunks/{8e33e395e6224908.js → 8bdc142fad5847ed.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{6818b9385873d081.js → 8deb0392842e5a01.js} +1 -1
- package/dist/safe-a/_next/static/chunks/8e5b2f279f1a9975.js +1 -0
- package/dist/safe-a/_next/static/chunks/{99ce8e2a747001a9.js → 8f038ff914c4b0df.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{eaa820432740042a.js → 8f5be275907dd98c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{0518cc63903bebac.js → 9037530b0f1d5783.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{b4db35dceb9577e1.js → 9078ad91aa20dca0.js} +1 -1
- package/dist/safe-a/_next/static/chunks/91e0df5a4c9d0bcd.js +1 -0
- package/dist/safe-a/_next/static/chunks/92c3617a4e22a464.js +1 -0
- package/dist/safe-a/_next/static/chunks/{eb34cdf40f4c4d62.js → 932d3fcc2596e8d5.js} +1 -1
- package/dist/safe-a/_next/static/chunks/937e26e6e01d9ec9.js +1 -0
- package/dist/safe-a/_next/static/chunks/93bfaf233e66b48c.js +1 -0
- package/dist/safe-a/_next/static/chunks/{3422b2c2f9bdf0e0.js → 94029062f236cadc.js} +1 -1
- package/dist/safe-a/_next/static/chunks/94e88cfda11697d2.js +1 -0
- package/dist/safe-a/_next/static/chunks/{55e32e78e4db3889.js → 95c4d26e469d1d8f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{b717d3610f87602f.js → 96026b5eb5d2566b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ede1765e6899133a.js → 962a27e9c634b823.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{093669121f3b7aa1.js → 966fb5830ce1029c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{aa8c7d3d99a14fdb.js → 9724567275720686.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{aff6654f4fbc26b0.js → 98e243fb5992a71c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{fddfcced721d9669.js → 9a7b2a483b109c0a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/9b3df6b20a9625d5.js +1 -0
- package/dist/safe-a/_next/static/chunks/9c6c00fa68012026.js +1 -0
- package/dist/safe-a/_next/static/chunks/{46568a8bad984d09.js → 9cb28a1dacb7ea6d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/9ccf7a8bca1730bf.js +1 -0
- package/dist/safe-a/_next/static/chunks/{c2e5be103cef6113.js → 9e96c84b86d1bbf3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{38dcdbfb8c6966a9.js → 9f0ee4783140adf1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/9fefea69ec034a63.js +1 -0
- package/dist/safe-a/_next/static/chunks/{d9bf3f0f6088ac8c.js → a1b9abf15c0f7655.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{65159d9aa3ecc0c9.js → a37aa474433d29e3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/a437ab944fe911da.js +1 -0
- package/dist/safe-a/_next/static/chunks/a4776dc3e00e5ab0.js +1 -0
- package/dist/safe-a/_next/static/chunks/{2331e2a388a9bd50.js → a5df6158856685f1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{8d76667bd2633e46.js → a6737fc58619eae5.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{217c50478c5ea4d7.js → a6a98f9278704b6a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{6ecccb36549d3028.js → a7277c96f3669bea.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9b0ac8da8e1c0d7e.js → a9fed5c43d754a96.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{6e663a2e3562125c.js → aa0a4c596151b22b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{f7ad257814e6e947.js → aa867a1fa8b105e1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/abdf99ba76e0f571.js +1 -0
- package/dist/safe-a/_next/static/chunks/ad4ba491cf12423f.js +5 -0
- package/dist/safe-a/_next/static/chunks/{f40b91cb7cc58cf2.js → ad50a7d15cd9d9d8.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{0708a65cc3ecf56b.js → af7b0bd1b40ad066.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9e9339584dbc8172.js → b24e3802454a5567.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e1416a0b2152bdbf.js → b29a85c3dae2bb9c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/b30ee3cb6af32088.js +1 -0
- package/dist/safe-a/_next/static/chunks/b30f1da4e57f459a.js +1 -0
- package/dist/safe-a/_next/static/chunks/{129875fd1b096964.js → b360c9fc22dbf831.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ddc8a591c8943264.js → b3e79c76be269ccc.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{82aea21a16d00076.js → b429be4e16fa1e00.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e66819cb4afcfe87.js → b61ec36c9bbca3e0.js} +1 -1
- package/dist/safe-a/_next/static/chunks/b62abd0d2ca9f56f.js +1 -0
- package/dist/safe-a/_next/static/chunks/{405cd8dd7faa6eaf.js → b65565677c3e8c0a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{37f3ea0b3cf40bca.js → b66afb4b0be97af8.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{d53ff6336a32e4c5.js → b69f987a60b05db3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9d65a2db77bf6c63.js → b78822282754a47c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/b92c67520afabac2.js +1 -0
- package/dist/safe-a/_next/static/chunks/baed816b83bbd5b5.js +1 -0
- package/dist/safe-a/_next/static/chunks/{38e76abda882c1a8.js → bbaef90b0ce43019.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{43392297dd43555d.js → bbcf9daa108b22fb.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{f05af2c706c87fb5.js → bc7bda699a7ccda1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{f0a3b313fc0fcace.js → bd1f33816fa01c16.js} +1 -1
- package/dist/safe-a/_next/static/chunks/bd2dcf98c9b362f6.js +1 -0
- package/dist/safe-a/_next/static/chunks/{cb8a82631d87b798.js → bd984c5404403e7d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{6fc97877fbcf3403.js → bf2262100cea8c64.js} +1 -1
- package/dist/safe-a/_next/static/chunks/bf2c1c402dbcccdf.js +1 -0
- package/dist/safe-a/_next/static/chunks/bfc6ee42cec583d5.js +1 -0
- package/dist/safe-a/_next/static/chunks/{c5932397b84e3c27.js → c15069059c9d1f53.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9de7a5feb6be8bc3.js → c1615032cbbf5b56.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{4c87634b39751c56.js → c2546d2b493dd907.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{82cdf7e6dbe7070d.js → c3669d468d3f2b3a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/c3b49937059d3d70.js +1 -0
- package/dist/safe-a/_next/static/chunks/{5a43f7cd89a42167.js → c5b5aba98d38ef23.js} +1 -1
- package/dist/safe-a/_next/static/chunks/c5be27a596acfa18.js +1 -0
- package/dist/safe-a/_next/static/chunks/{6e4e92cbcf961542.js → c6cc32860b96278f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{997894582876b3bb.js → c725524ea13a50ab.js} +1 -1
- package/dist/safe-a/_next/static/chunks/c8942bee3aebddae.js +1 -0
- package/dist/safe-a/_next/static/chunks/{fc3c1b765cc5906d.js → c8e45be36912e439.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{5e4225518ccc365e.js → c933951b3113492f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/c9813626ba898586.js +1 -0
- package/dist/safe-a/_next/static/chunks/ca2725c2b45709c1.js +1 -0
- package/dist/safe-a/_next/static/chunks/{47098fcba8e98974.js → caf4049dc563940e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/cafadd69e03e6c4b.js +1 -0
- package/dist/safe-a/_next/static/chunks/{57bc9169370081d7.js → cba2741f84ef36ed.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{47d485f30e419da8.js → cccecf726769787f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{261bf96e2331ea0a.js → cd0e7e3cc303b4e4.js} +1 -1
- package/dist/safe-a/_next/static/chunks/cd4556cbed1f8957.js +1 -0
- package/dist/safe-a/_next/static/chunks/{2f104b4be1990722.js → cd5eec7d305aa041.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{3f74431cdf49e5e1.js → cfd9aff2dcf3adb9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{564507763428bfb0.js → d09636e7bcf60ad1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{dd59d0e313916320.js → d2d432a9facf4278.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{fdf535baa39c0e26.js → d2e37b6d5ff62bcb.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{fe840e6cda1c115e.js → d33a24782888b869.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{7f611b9b215dfcef.js → d33e49aabd798892.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{7d7ef3758ed7347b.js → d3990c1e87ef3e23.js} +1 -1
- package/dist/safe-a/_next/static/chunks/d433c87b0bc69cda.js +1 -0
- package/dist/safe-a/_next/static/chunks/{9a63abc493c1c840.js → d47cd27ac08f5429.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{0e68cace7cf0464c.js → d599ef4d0f84a93d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{18570009118a0e76.js → d5e3d29f769997cc.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{7e5b28d162f1ea9d.js → d69b21102305d19e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{b92da682bccc569b.js → d715e874b8ee8540.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{1a91a01fbaf01e7e.js → d729414ff836cd53.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{333630802bd6f1a6.js → d82740475fc07e98.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9bedfcbe8f9ff43f.js → d842d30dcb0f50a9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{502779251884e330.js → d8af8dadd0889c71.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{50c602f1b79d61a7.js → d9b92ed2d544fca5.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{d147ab3cf51edc42.js → da346aeed70dd39a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/da9d2b7d381c1953.js +1 -0
- package/dist/safe-a/_next/static/chunks/dbbd673619a7f82f.js +1 -0
- package/dist/safe-a/_next/static/chunks/dc0bc471de951daf.js +1 -0
- package/dist/safe-a/_next/static/chunks/{9d8fff267f5576eb.js → dc2186b66132ca97.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{d3fc1847f85d724b.js → de0ee516f6a1aa07.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{473249ae7830085a.js → e04bace22e04d63c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9b94620a86d2a1c2.js → e0c76ff7114dc8dc.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{dc7f280eee64d574.js → e11d4fd8de65621d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{ec7ee73b22712e55.js → e1999bcadd3448e5.js} +1 -1
- package/dist/safe-a/_next/static/chunks/e2833182a81cd867.js +1 -0
- package/dist/safe-a/_next/static/chunks/{232cc01daaf29e5d.js → e3fe320ec1b8f889.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{50cbc92b0512838a.js → e4973ad5c183f17a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{c8b301b059ee1946.js → e5275dcacbabc3e3.js} +1 -1
- package/dist/safe-a/_next/static/chunks/e60ef129113f6e24.js +1 -0
- package/dist/safe-a/_next/static/chunks/{8ebfebffa66b3ca7.js → e61019aedfdf554e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/e6324292aef80338.js +1 -0
- package/dist/safe-a/_next/static/chunks/{e89655c05e6b5b1f.js → e7003dbd5d8cb2d1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{0d7d0d2beb29f175.js → e7bcbeb465fa49cf.js} +1 -1
- package/dist/safe-a/_next/static/chunks/e7f1a043618e43cf.js +1 -0
- package/dist/safe-a/_next/static/chunks/e8105dbb23b8e514.js +1 -0
- package/dist/safe-a/_next/static/chunks/{06a64fef342a5832.js → e96518d9cb5cbe1e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e7731336476789d7.js → ea12d36cdfbaafa9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{05ac495e860ba7c2.js → ea2a84258a02d5c5.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{b9b23fa418eacd67.js → ea36a5ae7c6ce34f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{fbb5b0d1f5b25465.js → eb2d81df9fe374a8.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{30c0274cb379ab0d.js → eb9ae8e95cac1197.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{abf043c7dd51a07b.js → ebb0ee69f6a7883e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{d84ed83f568f41c6.js → ebcbb5070eb8e29f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/ebcd85ff4a1db0dc.js +5 -0
- package/dist/safe-a/_next/static/chunks/{5ad5a5ee1cc648ae.js → ee79511740d19885.js} +1 -1
- package/dist/safe-a/_next/static/chunks/eed0c3ef6a5c3706.js +1 -0
- package/dist/safe-a/_next/static/chunks/{404f44571be80b78.js → ef51763a796dde8b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{025f9752d60b79ce.js → f0cb9b2226c53ef9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{c5b0f8f27c2db9f1.js → f0d9f0621f8ec46d.js} +1 -1
- package/dist/safe-a/_next/static/chunks/f12f45a558c3fed2.js +1 -0
- package/dist/safe-a/_next/static/chunks/{868f60fa1a2ff26b.js → f1e5e295d4db5c0f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{3b0acee8a8035ee7.js → f1f911d553a62027.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{36897fabf62bf445.js → f235a8df2f905e6a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{27b3d30516d46fc8.js → f36595b9995a49a9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/f42a71992d139302.js +1 -0
- package/dist/safe-a/_next/static/chunks/{dd03bb14e8e590f0.js → f42d74f288f2229c.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{f39ec71d70b31fe1.js → f461a75ec3b0e4e9.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{9f7b593a28b4dbe4.js → f50fd84e477dbaeb.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{4c19e1ee54dac526.js → f659a364f48244ea.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{7c4b1ab5c0f1b167.js → f813c3d77459119f.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{cac08e0e891f58d2.js → f9cb4b70f67c86d8.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{2854919e0953bd0d.js → fa39b9f8bced4bcd.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{4df5dd4e3c591164.js → fa5b61b8e7219fe6.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{1386362cdfd92116.js → facb82117d49a6e1.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{e1626e173f56ae31.js → fb05f79f5e4b514e.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{18e062f9f23f27c0.js → fb0f4d868b87961b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{3d9ee9c4bc8e29b2.js → fb2f1266493dd820.js} +1 -1
- package/dist/safe-a/_next/static/chunks/fc2efa33a196ee45.js +1 -0
- package/dist/safe-a/_next/static/chunks/{a4ab363af889263f.js → fd3d43eb8557ee49.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{8ead3da37182ce4c.js → fdfce6fa0b958336.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{04ed04c00511a337.js → ff12eca45020947a.js} +1 -1
- package/dist/safe-a/_next/static/chunks/ff6860dcd793aa23.js +1 -0
- package/dist/safe-a/_next/static/chunks/{turbopack-25307b1915d537a0.js → turbopack-3d84668fefd38b4b.js} +1 -1
- package/dist/safe-a/_next/static/chunks/{turbopack-fd95f1c0ef78a441.js → turbopack-63952675b1d69124.js} +1 -1
- package/dist/safe-a/_next/static/chunks/turbopack-8b41433c9a94981f.js +3 -0
- package/dist/safe-a/index.html +2 -2
- package/dist/safe-a/index.txt +18 -18
- package/dist/safe-a/manage/about/index.html +2 -2
- package/dist/safe-a/manage/about/index.txt +15 -15
- package/dist/safe-a/manage/env/index.html +2 -2
- package/dist/safe-a/manage/env/index.txt +17 -17
- package/dist/safe-a/manage/geelib/index.html +2 -2
- package/dist/safe-a/manage/geelib/index.txt +17 -17
- package/dist/safe-a/manage/general/index.html +2 -2
- package/dist/safe-a/manage/general/index.txt +15 -15
- package/dist/safe-a/manage/git/index.html +2 -2
- package/dist/safe-a/manage/git/index.txt +17 -17
- package/dist/safe-a/manage/im/index.html +2 -2
- package/dist/safe-a/manage/im/index.txt +17 -17
- package/dist/safe-a/manage/index.html +2 -2
- package/dist/safe-a/manage/index.txt +12 -12
- package/dist/safe-a/manage/library/index.html +2 -2
- package/dist/safe-a/manage/library/index.txt +15 -15
- package/dist/safe-a/manage/mcp/index.html +2 -2
- package/dist/safe-a/manage/mcp/index.txt +15 -15
- package/dist/safe-a/manage/permissions/index.html +2 -2
- package/dist/safe-a/manage/permissions/index.txt +15 -15
- package/dist/safe-a/manage/skills/index.html +2 -2
- package/dist/safe-a/manage/skills/index.txt +15 -15
- package/dist/safe-a/manage/task/index.html +2 -2
- package/dist/safe-a/manage/task/index.txt +15 -15
- package/dist/safe-a/manage/teams/index.html +2 -2
- package/dist/safe-a/manage/teams/index.txt +15 -15
- package/dist/safe-a/manage/tools/index.html +2 -2
- package/dist/safe-a/manage/tools/index.txt +15 -15
- package/dist/ws-test/ws-test.css +0 -4
- package/dist/ws-test/ws-test.html +0 -21
- package/dist/ws-test/ws-test.js +72 -297
- package/mcps-runtime/claude-geelib-channel/server/index.mjs +0 -5
- package/mcps-runtime/claude-tuitui-channel/server/index.mjs +6 -0
- package/mcps-runtime/claude-ws-channel/server/gateway.bundle.mjs +1135 -4542
- package/package.json +6 -6
- package/.env.example +0 -7
- package/dist/safe-a/_next/static/chunks/00f91b7d88f62204.js +0 -1
- package/dist/safe-a/_next/static/chunks/03d9139a7df67167.js +0 -1
- package/dist/safe-a/_next/static/chunks/0699439b4e026cf9.js +0 -5
- package/dist/safe-a/_next/static/chunks/0d0a0fd8bc7c5154.js +0 -1
- package/dist/safe-a/_next/static/chunks/1116b1064a071974.js +0 -1
- package/dist/safe-a/_next/static/chunks/16ee3f2be4586638.js +0 -1
- package/dist/safe-a/_next/static/chunks/19023abd5e1bf1d1.js +0 -1
- package/dist/safe-a/_next/static/chunks/1a900b3c5a00d59b.js +0 -1
- package/dist/safe-a/_next/static/chunks/1b739dfdbcce05bd.js +0 -1
- package/dist/safe-a/_next/static/chunks/1d0273aae0bc102c.js +0 -1
- package/dist/safe-a/_next/static/chunks/1df41f8d439107ef.js +0 -1
- package/dist/safe-a/_next/static/chunks/1faaa282be969b14.js +0 -1
- package/dist/safe-a/_next/static/chunks/27d9a47efb23fd17.js +0 -1
- package/dist/safe-a/_next/static/chunks/29105a13d179d5b2.js +0 -1
- package/dist/safe-a/_next/static/chunks/29403b19d94e37bb.js +0 -1
- package/dist/safe-a/_next/static/chunks/29f39316c32518a2.js +0 -1
- package/dist/safe-a/_next/static/chunks/2a07e0d1ef712b41.js +0 -1
- package/dist/safe-a/_next/static/chunks/2b38c2b26760e4cb.js +0 -1
- package/dist/safe-a/_next/static/chunks/2bb180b50bafe979.js +0 -1
- package/dist/safe-a/_next/static/chunks/2ce249001ad95013.js +0 -1
- package/dist/safe-a/_next/static/chunks/33e878df066811db.js +0 -1
- package/dist/safe-a/_next/static/chunks/37615c61dd14fc8d.js +0 -1
- package/dist/safe-a/_next/static/chunks/37e4ac5f3654a688.js +0 -1
- package/dist/safe-a/_next/static/chunks/38d88de54642e44e.js +0 -1
- package/dist/safe-a/_next/static/chunks/38decd5cd3fe2525.js +0 -1
- package/dist/safe-a/_next/static/chunks/39fc6ad79e44f4df.js +0 -1
- package/dist/safe-a/_next/static/chunks/3ecc6705303560ea.js +0 -1
- package/dist/safe-a/_next/static/chunks/3fe95be4b92470e2.js +0 -1
- package/dist/safe-a/_next/static/chunks/4064e59727cba9b0.js +0 -1
- package/dist/safe-a/_next/static/chunks/44e9e0394b7b6f31.js +0 -1
- package/dist/safe-a/_next/static/chunks/4ae2c56fab8c060d.js +0 -1
- package/dist/safe-a/_next/static/chunks/4ca36e3fb45c2e71.js +0 -1
- package/dist/safe-a/_next/static/chunks/4cd41b402679f77d.js +0 -1
- package/dist/safe-a/_next/static/chunks/50f270f87470ca73.js +0 -1
- package/dist/safe-a/_next/static/chunks/5385bf74559eeabd.js +0 -1
- package/dist/safe-a/_next/static/chunks/54169c1554845574.js +0 -1
- package/dist/safe-a/_next/static/chunks/592e7a6b713dc645.js +0 -1
- package/dist/safe-a/_next/static/chunks/599abea9ac64aaf1.js +0 -1
- package/dist/safe-a/_next/static/chunks/5ae21c9105c6abb4.js +0 -1
- package/dist/safe-a/_next/static/chunks/5b4c1faefda9575b.js +0 -1
- package/dist/safe-a/_next/static/chunks/68255bcd6345edfd.js +0 -1
- package/dist/safe-a/_next/static/chunks/68f27d4f860d8f88.js +0 -1
- package/dist/safe-a/_next/static/chunks/6960a33147147a27.js +0 -1
- package/dist/safe-a/_next/static/chunks/6a199e5f9da2ec4e.js +0 -1
- package/dist/safe-a/_next/static/chunks/6f6140cbad7cdeea.js +0 -1
- package/dist/safe-a/_next/static/chunks/6faa53698dc67904.js +0 -1
- package/dist/safe-a/_next/static/chunks/727dc45d24782155.js +0 -1
- package/dist/safe-a/_next/static/chunks/74d8d2b653f61b70.js +0 -1
- package/dist/safe-a/_next/static/chunks/7562ab6463e9fc3f.js +0 -1
- package/dist/safe-a/_next/static/chunks/784ee151431c6634.js +0 -1
- package/dist/safe-a/_next/static/chunks/7afa34c1dc058648.js +0 -1
- package/dist/safe-a/_next/static/chunks/7b34873e2b22211d.js +0 -1
- package/dist/safe-a/_next/static/chunks/7bd04dff1e0d3a01.js +0 -1
- package/dist/safe-a/_next/static/chunks/7cadf95d4932deec.js +0 -1
- package/dist/safe-a/_next/static/chunks/7ccd9e31b61da21f.js +0 -1
- package/dist/safe-a/_next/static/chunks/7e2887a3269dfc01.js +0 -1
- package/dist/safe-a/_next/static/chunks/7f167fb0dbc03180.js +0 -1
- package/dist/safe-a/_next/static/chunks/80bd106b26a076af.js +0 -1
- package/dist/safe-a/_next/static/chunks/826c64c8601264b1.js +0 -1
- package/dist/safe-a/_next/static/chunks/8465e859bae24fbd.js +0 -1
- package/dist/safe-a/_next/static/chunks/846fd48826ed3d89.js +0 -1
- package/dist/safe-a/_next/static/chunks/84e8e1e50a6b3ab7.js +0 -1
- package/dist/safe-a/_next/static/chunks/87b0002602934525.js +0 -1
- package/dist/safe-a/_next/static/chunks/882686dd3b63f9d1.js +0 -1
- package/dist/safe-a/_next/static/chunks/88e4cdcdeff36154.js +0 -1
- package/dist/safe-a/_next/static/chunks/8c8b1e40b00409f5.js +0 -1
- package/dist/safe-a/_next/static/chunks/913de10eeb8a88d9.js +0 -1
- package/dist/safe-a/_next/static/chunks/92c1de3b7b8ff353.js +0 -1
- package/dist/safe-a/_next/static/chunks/996147dc11d8e745.js +0 -1
- package/dist/safe-a/_next/static/chunks/9971428081f87b2e.js +0 -1
- package/dist/safe-a/_next/static/chunks/9a5e8d11c09774ed.js +0 -1
- package/dist/safe-a/_next/static/chunks/9f8b67e210121299.js +0 -1
- package/dist/safe-a/_next/static/chunks/a333240ca95e9cf9.js +0 -1
- package/dist/safe-a/_next/static/chunks/a4b35c64097aeb05.js +0 -1
- package/dist/safe-a/_next/static/chunks/a6fda6a41633eb93.js +0 -1
- package/dist/safe-a/_next/static/chunks/a86fedb173944e90.js +0 -1
- package/dist/safe-a/_next/static/chunks/a9a12415c8875ad5.js +0 -1
- package/dist/safe-a/_next/static/chunks/ab91b57996557cd5.js +0 -1
- package/dist/safe-a/_next/static/chunks/ac0062f74360e8a1.js +0 -1
- package/dist/safe-a/_next/static/chunks/b0f0f19c125de544.js +0 -1
- package/dist/safe-a/_next/static/chunks/b31fde4b83862330.js +0 -1
- package/dist/safe-a/_next/static/chunks/b594aa86704b6429.js +0 -1
- package/dist/safe-a/_next/static/chunks/b744b1f1595cffb6.js +0 -1
- package/dist/safe-a/_next/static/chunks/b882523826ac1c83.js +0 -1
- package/dist/safe-a/_next/static/chunks/c2a354d059dc2745.js +0 -1
- package/dist/safe-a/_next/static/chunks/c3bcc6eb84ed7d30.js +0 -1
- package/dist/safe-a/_next/static/chunks/c6bad34be1aacd05.js +0 -5
- package/dist/safe-a/_next/static/chunks/c7ce2c0e40c62b6b.js +0 -1
- package/dist/safe-a/_next/static/chunks/c9527036b1a95d19.js +0 -1
- package/dist/safe-a/_next/static/chunks/ca31fc9ca02421c7.js +0 -1
- package/dist/safe-a/_next/static/chunks/d2644966a8736893.js +0 -1
- package/dist/safe-a/_next/static/chunks/d2b5664aa6eb613c.js +0 -1
- package/dist/safe-a/_next/static/chunks/d3072ff0f4d0f613.js +0 -1
- package/dist/safe-a/_next/static/chunks/d78975cda9119543.js +0 -1
- package/dist/safe-a/_next/static/chunks/dbf36b536a6c59ef.js +0 -1
- package/dist/safe-a/_next/static/chunks/e0b6375c01566831.js +0 -1
- package/dist/safe-a/_next/static/chunks/e79d1db952916e66.js +0 -1
- package/dist/safe-a/_next/static/chunks/e814d6bb4f565a59.js +0 -1
- package/dist/safe-a/_next/static/chunks/ece085cc915ab5e5.js +0 -1
- package/dist/safe-a/_next/static/chunks/f15c8b2639bebe0f.js +0 -1
- package/dist/safe-a/_next/static/chunks/f42445d9866f6b16.js +0 -1
- package/dist/safe-a/_next/static/chunks/fa0cb747819a4b88.js +0 -1
- package/dist/safe-a/_next/static/chunks/fb7bf2e8cee9c72f.js +0 -1
- package/dist/safe-a/_next/static/chunks/fe4fddbf85e1554b.js +0 -1
- package/dist/safe-a/_next/static/chunks/ff9ec21502a3b775.js +0 -1
- package/dist/safe-a/_next/static/chunks/turbopack-c8295da8707d94de.js +0 -3
- /package/dist/safe-a/_next/static/{AY06zpWQV0yfK_fQwZZ5t → 8K8MheZHG-fXZxruG2Nc8}/_clientMiddlewareManifest.json +0 -0
- /package/dist/safe-a/_next/static/{AY06zpWQV0yfK_fQwZZ5t → 8K8MheZHG-fXZxruG2Nc8}/_ssgManifest.js +0 -0
package/dist/ws-test/ws-test.js
CHANGED
|
@@ -84,11 +84,6 @@
|
|
|
84
84
|
const permissionDialogTitle = $('permissionDialogTitle')
|
|
85
85
|
const permissionDialogDesc = $('permissionDialogDesc')
|
|
86
86
|
const permissionDialogInput = $('permissionDialogInput')
|
|
87
|
-
const apiErrorDialog = $('apiErrorDialog')
|
|
88
|
-
const apiErrorDialogBackdrop = $('apiErrorDialogBackdrop')
|
|
89
|
-
const apiErrorDialogDesc = $('apiErrorDialogDesc')
|
|
90
|
-
const btnApiErrorOk = $('btnApiErrorOk')
|
|
91
|
-
const btnApiErrorDialogClose = $('btnApiErrorDialogClose')
|
|
92
87
|
const btnPermissionDialogClose = $('btnPermissionDialogClose')
|
|
93
88
|
const btnPermissionDeny = $('btnPermissionDeny')
|
|
94
89
|
const btnPermissionAllow = $('btnPermissionAllow')
|
|
@@ -116,7 +111,6 @@
|
|
|
116
111
|
const scheduleTasksWrap = $('scheduleTasksWrap')
|
|
117
112
|
const scheduleRunsWrap = $('scheduleRunsWrap')
|
|
118
113
|
const scheduleTaskTableBody = $('scheduleTaskTableBody')
|
|
119
|
-
const scheduleTasksPager = $('scheduleTasksPager')
|
|
120
114
|
const scheduleManageEmpty = $('scheduleManageEmpty')
|
|
121
115
|
const btnScheduleRunsBack = $('btnScheduleRunsBack')
|
|
122
116
|
const scheduleRunsTitle = $('scheduleRunsTitle')
|
|
@@ -167,12 +161,6 @@
|
|
|
167
161
|
let sessionRuntimePollTimer = null
|
|
168
162
|
/** 当前附着 session 的 turn 是否进行中(由 query.progress 驱动) */
|
|
169
163
|
let sessionTurnActive = false
|
|
170
|
-
/** 当前 turn 是否已处理过 api_error 终态,避免重复弹窗与 abort */
|
|
171
|
-
let apiErrorHandledForTurn = false
|
|
172
|
-
/** 当前 turn 是否处于 api_error 重试中 */
|
|
173
|
-
let apiErrorRetryingForTurn = false
|
|
174
|
-
/** 最近一次 api_error 的可读文案,供重试耗尽后弹窗展示 */
|
|
175
|
-
let lastApiErrorText = ''
|
|
176
164
|
const pendingPromptsBarEl = $('pendingPromptsBar')
|
|
177
165
|
const pendingPromptsListEl = $('pendingPromptsList')
|
|
178
166
|
let pendingPromptsCache = []
|
|
@@ -364,6 +352,8 @@
|
|
|
364
352
|
const LLM_MODEL_KEY = 'LLM_MODEL'
|
|
365
353
|
const LLM_PROVIDER_ID_KEY = 'LLM_PROVIDER_ID'
|
|
366
354
|
const WS_ALLOW_TOOL_ASK_KEY = 'WS_ALLOW_TOOL_ASK'
|
|
355
|
+
const TUITUI_CHANNEL_SESSION_KEY = 'TUITUI_CHANNEL_SESSION'
|
|
356
|
+
const TUITUI_CHANNEL_SESSION_ALLOWED = new Set(['0', '1'])
|
|
367
357
|
const WS_PERMISSION_MODE_ALLOWED = new Set([
|
|
368
358
|
'acceptEdits',
|
|
369
359
|
'plan',
|
|
@@ -587,19 +577,50 @@
|
|
|
587
577
|
label.setAttribute('for', 'agentEnvField_' + field.key)
|
|
588
578
|
label.textContent = field.label
|
|
589
579
|
const inputId = 'agentEnvField_' + field.key
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
580
|
+
let input
|
|
581
|
+
if (field.key === TUITUI_CHANNEL_SESSION_KEY) {
|
|
582
|
+
/**
|
|
583
|
+
* 业务逻辑:推推常驻会话开关仅允许 0/1,与主进程 reconcileChannelPairSessions 读取一致。
|
|
584
|
+
*/
|
|
585
|
+
const select = document.createElement('select')
|
|
586
|
+
select.id = inputId
|
|
587
|
+
select.className = 'agent-env-kv-input'
|
|
588
|
+
const channelSessionOptions = [
|
|
589
|
+
{ value: '0', label: '禁用' },
|
|
590
|
+
{ value: '1', label: '启用' },
|
|
591
|
+
]
|
|
592
|
+
for (let k = 0; k < channelSessionOptions.length; k++) {
|
|
593
|
+
const option = document.createElement('option')
|
|
594
|
+
option.value = channelSessionOptions[k].value
|
|
595
|
+
option.textContent = channelSessionOptions[k].label
|
|
596
|
+
select.appendChild(option)
|
|
597
|
+
}
|
|
598
|
+
const currentChannelSession =
|
|
599
|
+
typeof agentEnvFieldValues[field.key] === 'string'
|
|
600
|
+
? agentEnvFieldValues[field.key].trim()
|
|
601
|
+
: ''
|
|
602
|
+
select.value = TUITUI_CHANNEL_SESSION_ALLOWED.has(currentChannelSession)
|
|
603
|
+
? currentChannelSession
|
|
604
|
+
: '0'
|
|
605
|
+
select.addEventListener('change', function () {
|
|
606
|
+
agentEnvFieldValues[field.key] = select.value
|
|
607
|
+
})
|
|
608
|
+
input = select
|
|
609
|
+
} else {
|
|
610
|
+
const textInput = document.createElement('input')
|
|
611
|
+
textInput.id = inputId
|
|
612
|
+
textInput.type = 'text'
|
|
613
|
+
textInput.spellcheck = false
|
|
614
|
+
textInput.className = 'agent-env-kv-input'
|
|
615
|
+
textInput.placeholder = field.placeholder || ''
|
|
616
|
+
textInput.value = typeof agentEnvFieldValues[field.key] === 'string'
|
|
617
|
+
? agentEnvFieldValues[field.key]
|
|
618
|
+
: ''
|
|
619
|
+
textInput.addEventListener('input', function () {
|
|
620
|
+
agentEnvFieldValues[field.key] = textInput.value
|
|
621
|
+
})
|
|
622
|
+
input = textInput
|
|
623
|
+
}
|
|
603
624
|
row.appendChild(label)
|
|
604
625
|
row.appendChild(input)
|
|
605
626
|
section.appendChild(row)
|
|
@@ -1533,10 +1554,6 @@
|
|
|
1533
1554
|
return extractMessageBody(m).trim()
|
|
1534
1555
|
}
|
|
1535
1556
|
if (m.type === 'system') {
|
|
1536
|
-
if (m.subtype === 'api_error') {
|
|
1537
|
-
const apiText = extractApiErrorText(m)
|
|
1538
|
-
if (apiText) return apiText
|
|
1539
|
-
}
|
|
1540
1557
|
if (typeof m.content === 'string') return m.content.trim()
|
|
1541
1558
|
try {
|
|
1542
1559
|
return JSON.stringify(m).slice(0, 800).trim()
|
|
@@ -1634,14 +1651,10 @@
|
|
|
1634
1651
|
div.appendChild(md)
|
|
1635
1652
|
container.appendChild(div)
|
|
1636
1653
|
} else if (t === 'system') {
|
|
1637
|
-
|
|
1654
|
+
const raw =
|
|
1638
1655
|
typeof m.content === 'string'
|
|
1639
1656
|
? m.content
|
|
1640
1657
|
: JSON.stringify(m).slice(0, 800)
|
|
1641
|
-
if (m.subtype === 'api_error') {
|
|
1642
|
-
const apiText = extractApiErrorText(m)
|
|
1643
|
-
if (apiText) raw = apiText
|
|
1644
|
-
}
|
|
1645
1658
|
if (!raw.trim()) continue
|
|
1646
1659
|
const div = document.createElement('div')
|
|
1647
1660
|
div.className = 'chat-msg chat-msg-system'
|
|
@@ -1985,151 +1998,6 @@
|
|
|
1985
1998
|
permissionDialogBackdrop.addEventListener('click', () => respondToPermission('deny'))
|
|
1986
1999
|
}
|
|
1987
2000
|
|
|
1988
|
-
/**
|
|
1989
|
-
* 从 system api_error 消息中提取可读错误文案。
|
|
1990
|
-
* 上游 APIError 常嵌套多层 error 字段,需逐层下探并尝试解析 JSON 内 message。
|
|
1991
|
-
*/
|
|
1992
|
-
function extractApiErrorText(msg) {
|
|
1993
|
-
if (!msg || msg.type !== 'system' || msg.subtype !== 'api_error') return ''
|
|
1994
|
-
const root = msg.error
|
|
1995
|
-
if (!root || typeof root !== 'object') return 'LLM API 请求失败'
|
|
1996
|
-
|
|
1997
|
-
let text = ''
|
|
1998
|
-
const candidates = [
|
|
1999
|
-
root.message,
|
|
2000
|
-
root.error && root.error.message,
|
|
2001
|
-
root.error && root.error.error && root.error.error.message,
|
|
2002
|
-
root.error && root.error.error && root.error.error.error && root.error.error.error.message,
|
|
2003
|
-
]
|
|
2004
|
-
for (let i = 0; i < candidates.length; i++) {
|
|
2005
|
-
if (typeof candidates[i] === 'string' && candidates[i].trim()) {
|
|
2006
|
-
text = candidates[i].trim()
|
|
2007
|
-
break
|
|
2008
|
-
}
|
|
2009
|
-
}
|
|
2010
|
-
if (!text) text = 'LLM API 请求失败'
|
|
2011
|
-
|
|
2012
|
-
const jsonMatch = text.match(/\{[\s\S]*\}$/)
|
|
2013
|
-
if (jsonMatch) {
|
|
2014
|
-
try {
|
|
2015
|
-
const parsed = JSON.parse(jsonMatch[0])
|
|
2016
|
-
const inner = parsed.error || parsed
|
|
2017
|
-
if (inner && typeof inner.message === 'string' && inner.message.trim()) {
|
|
2018
|
-
const code = inner.code != null ? '(' + inner.code + ')' : ''
|
|
2019
|
-
text = inner.message.trim() + code
|
|
2020
|
-
}
|
|
2021
|
-
} catch (_err) {
|
|
2022
|
-
/* 非 JSON 后缀则保留原始 message */
|
|
2023
|
-
}
|
|
2024
|
-
}
|
|
2025
|
-
|
|
2026
|
-
const attempt = Number.isFinite(msg.retryAttempt) ? msg.retryAttempt : null
|
|
2027
|
-
const max = Number.isFinite(msg.maxRetries) ? msg.maxRetries : null
|
|
2028
|
-
if (attempt != null && max != null) {
|
|
2029
|
-
text += ' [重试 ' + attempt + '/' + max + ']'
|
|
2030
|
-
}
|
|
2031
|
-
if (typeof root.status === 'number') {
|
|
2032
|
-
text = 'HTTP ' + root.status + ': ' + text
|
|
2033
|
-
}
|
|
2034
|
-
return text
|
|
2035
|
-
}
|
|
2036
|
-
|
|
2037
|
-
function hideApiErrorDialog() {
|
|
2038
|
-
if (!apiErrorDialog) return
|
|
2039
|
-
apiErrorDialog.classList.remove('is-open')
|
|
2040
|
-
apiErrorDialog.setAttribute('aria-hidden', 'true')
|
|
2041
|
-
}
|
|
2042
|
-
|
|
2043
|
-
function showApiErrorDialog(message) {
|
|
2044
|
-
if (!apiErrorDialog || !apiErrorDialogDesc) return
|
|
2045
|
-
apiErrorDialogDesc.textContent =
|
|
2046
|
-
typeof message === 'string' && message.trim() ? message.trim() : 'LLM API 请求失败'
|
|
2047
|
-
apiErrorDialog.classList.add('is-open')
|
|
2048
|
-
apiErrorDialog.setAttribute('aria-hidden', 'false')
|
|
2049
|
-
}
|
|
2050
|
-
|
|
2051
|
-
/** 向服务端发送 abort,终止当前 query 与子进程 turn */
|
|
2052
|
-
function abortCurrentSessionTurn() {
|
|
2053
|
-
if (!socket || socket.readyState !== WebSocket.OPEN) return
|
|
2054
|
-
const payload = { type: 'abort' }
|
|
2055
|
-
socket.send(JSON.stringify(payload))
|
|
2056
|
-
logLine('→', payload)
|
|
2057
|
-
}
|
|
2058
|
-
|
|
2059
|
-
function resetApiErrorTurnState() {
|
|
2060
|
-
apiErrorHandledForTurn = false
|
|
2061
|
-
apiErrorRetryingForTurn = false
|
|
2062
|
-
lastApiErrorText = ''
|
|
2063
|
-
}
|
|
2064
|
-
|
|
2065
|
-
/**
|
|
2066
|
-
* api 重试全部耗尽:弹窗、abort、清除 calling。
|
|
2067
|
-
* 由 session.error 或 turn.terminal failed 触发,不在首次 api_error 时 fail-fast。
|
|
2068
|
-
*/
|
|
2069
|
-
function finalizeApiErrorTurn(errText) {
|
|
2070
|
-
if (apiErrorHandledForTurn) return
|
|
2071
|
-
apiErrorHandledForTurn = true
|
|
2072
|
-
apiErrorRetryingForTurn = false
|
|
2073
|
-
sessionTurnActive = false
|
|
2074
|
-
showApiErrorDialog(errText || 'LLM API 请求失败')
|
|
2075
|
-
abortCurrentSessionTurn()
|
|
2076
|
-
setStatus('API 错误', 'err')
|
|
2077
|
-
kickSessionRuntimePoll()
|
|
2078
|
-
if (window.__lastSessions) {
|
|
2079
|
-
renderSessionList(window.__lastSessions)
|
|
2080
|
-
}
|
|
2081
|
-
void loadSessions({ silent: true })
|
|
2082
|
-
}
|
|
2083
|
-
|
|
2084
|
-
/**
|
|
2085
|
-
* 主 run 收到 api_error:重试期间仅更新状态栏,全部重试耗尽后再弹窗终止。
|
|
2086
|
-
*/
|
|
2087
|
-
function handleApiErrorFromSystemMessage(msg, runId) {
|
|
2088
|
-
if (runId !== 'main') return
|
|
2089
|
-
if (apiErrorHandledForTurn) return
|
|
2090
|
-
if (!msg || msg.type !== 'system' || msg.subtype !== 'api_error') return
|
|
2091
|
-
|
|
2092
|
-
const retryAttempt = Number.isFinite(msg.retryAttempt) ? msg.retryAttempt : 0
|
|
2093
|
-
const maxRetries = Number.isFinite(msg.maxRetries) ? msg.maxRetries : 10
|
|
2094
|
-
lastApiErrorText = extractApiErrorText(msg)
|
|
2095
|
-
apiErrorRetryingForTurn = true
|
|
2096
|
-
setStatus('API 错误,重试 ' + retryAttempt + '/' + maxRetries + '…', 'err')
|
|
2097
|
-
kickSessionRuntimePoll()
|
|
2098
|
-
if (window.__lastSessions) {
|
|
2099
|
-
renderSessionList(window.__lastSessions)
|
|
2100
|
-
}
|
|
2101
|
-
void loadSessions({ silent: true })
|
|
2102
|
-
}
|
|
2103
|
-
|
|
2104
|
-
/**
|
|
2105
|
-
* session.error:若处于 api 重试链,表示重试已耗尽,走终态弹窗;否则仅更新状态。
|
|
2106
|
-
*/
|
|
2107
|
-
function handleSessionErrorPayload(payload) {
|
|
2108
|
-
if (apiErrorHandledForTurn) return
|
|
2109
|
-
if (apiErrorRetryingForTurn) {
|
|
2110
|
-
const errMsg =
|
|
2111
|
-
lastApiErrorText ||
|
|
2112
|
-
(payload && typeof payload.message === 'string' ? payload.message.trim() : '')
|
|
2113
|
-
finalizeApiErrorTurn(errMsg || 'LLM API 请求失败')
|
|
2114
|
-
return
|
|
2115
|
-
}
|
|
2116
|
-
const errMsg =
|
|
2117
|
-
payload && typeof payload.message === 'string' && payload.message.trim()
|
|
2118
|
-
? payload.message.trim()
|
|
2119
|
-
: 'unknown'
|
|
2120
|
-
setStatus('错误: ' + errMsg, 'err')
|
|
2121
|
-
}
|
|
2122
|
-
|
|
2123
|
-
if (btnApiErrorOk) {
|
|
2124
|
-
btnApiErrorOk.addEventListener('click', hideApiErrorDialog)
|
|
2125
|
-
}
|
|
2126
|
-
if (btnApiErrorDialogClose) {
|
|
2127
|
-
btnApiErrorDialogClose.addEventListener('click', hideApiErrorDialog)
|
|
2128
|
-
}
|
|
2129
|
-
if (apiErrorDialogBackdrop) {
|
|
2130
|
-
apiErrorDialogBackdrop.addEventListener('click', hideApiErrorDialog)
|
|
2131
|
-
}
|
|
2132
|
-
|
|
2133
2001
|
/** 解析并应用 WS v3 下行信封(protocolVersion === 3);旧名 applyEnvelopeV2 易误解,保留行为不变。 */
|
|
2134
2002
|
function applyWsEnvelopeV3(data) {
|
|
2135
2003
|
if (!data || typeof data !== 'object') return false
|
|
@@ -2148,11 +2016,6 @@
|
|
|
2148
2016
|
if (type === 'conversation.delta') {
|
|
2149
2017
|
const action = typeof payload.action === 'string' ? payload.action : ''
|
|
2150
2018
|
const index = Number.isInteger(payload.index) ? payload.index : -1
|
|
2151
|
-
const deltaContextPct = parseContextUsagePercent(payload.contextUsage)
|
|
2152
|
-
if (typeof deltaContextPct === 'number') {
|
|
2153
|
-
currentSessionContextPercent = deltaContextPct
|
|
2154
|
-
updatePromptSessionInfo()
|
|
2155
|
-
}
|
|
2156
2019
|
const msg = payload.message
|
|
2157
2020
|
const sourceAgent = resolveEnvelopeSourceAgent(runId, payload, data.agent_name)
|
|
2158
2021
|
const runBuffer = ensureRunBuffer(runId)
|
|
@@ -2176,9 +2039,6 @@
|
|
|
2176
2039
|
refreshSessionTitleFromChat(sessionIdInput.value.trim())
|
|
2177
2040
|
}
|
|
2178
2041
|
requestRenderChat()
|
|
2179
|
-
if (msg && msg.type === 'system' && msg.subtype === 'api_error') {
|
|
2180
|
-
handleApiErrorFromSystemMessage(msg, runId)
|
|
2181
|
-
}
|
|
2182
2042
|
return true
|
|
2183
2043
|
}
|
|
2184
2044
|
if (type === 'turn.terminal') {
|
|
@@ -2207,19 +2067,8 @@
|
|
|
2207
2067
|
key: typeof data.eventId === 'string' ? data.eventId : '',
|
|
2208
2068
|
})
|
|
2209
2069
|
/** 主 run 一轮结束:清除「查询阶段: calling_model」等进行中状态 */
|
|
2210
|
-
if (runId === 'main') {
|
|
2211
|
-
|
|
2212
|
-
payload.status !== 'resolved' &&
|
|
2213
|
-
apiErrorRetryingForTurn &&
|
|
2214
|
-
!apiErrorHandledForTurn
|
|
2215
|
-
) {
|
|
2216
|
-
finalizeApiErrorTurn(lastApiErrorText)
|
|
2217
|
-
} else if (serverReady && !apiErrorHandledForTurn) {
|
|
2218
|
-
setStatus('已就绪', 'ready')
|
|
2219
|
-
}
|
|
2220
|
-
if (!apiErrorHandledForTurn) {
|
|
2221
|
-
resetApiErrorTurnState()
|
|
2222
|
-
}
|
|
2070
|
+
if (runId === 'main' && serverReady) {
|
|
2071
|
+
setStatus('已就绪', 'ready')
|
|
2223
2072
|
}
|
|
2224
2073
|
requestRenderChat()
|
|
2225
2074
|
return true
|
|
@@ -2281,9 +2130,6 @@
|
|
|
2281
2130
|
})
|
|
2282
2131
|
requestRenderChat()
|
|
2283
2132
|
}
|
|
2284
|
-
if (type === 'session.error' && runId === 'main') {
|
|
2285
|
-
handleSessionErrorPayload(payload)
|
|
2286
|
-
}
|
|
2287
2133
|
return true
|
|
2288
2134
|
}
|
|
2289
2135
|
if (type === 'schedule.pending') {
|
|
@@ -2329,20 +2175,11 @@
|
|
|
2329
2175
|
renderSessionList(window.__lastSessions)
|
|
2330
2176
|
}
|
|
2331
2177
|
if (phase === 'idle') {
|
|
2332
|
-
|
|
2333
|
-
if (!apiErrorHandledForTurn && serverReady) {
|
|
2334
|
-
setStatus('已就绪', 'ready')
|
|
2335
|
-
}
|
|
2336
|
-
if (!apiErrorHandledForTurn) {
|
|
2337
|
-
apiErrorRetryingForTurn = false
|
|
2338
|
-
lastApiErrorText = ''
|
|
2339
|
-
}
|
|
2178
|
+
if (serverReady) setStatus('已就绪', 'ready')
|
|
2340
2179
|
// 一轮 prompt 收尾后 transcript 已落盘,刷新列表以更新页签 firstPrompt/summary
|
|
2341
2180
|
void loadSessions({ silent: true })
|
|
2342
2181
|
} else if (phase) {
|
|
2343
|
-
|
|
2344
|
-
setStatus('查询阶段: ' + phase + '…', '')
|
|
2345
|
-
}
|
|
2182
|
+
setStatus('查询阶段: ' + phase + '…', '')
|
|
2346
2183
|
void loadSessions({ silent: true })
|
|
2347
2184
|
}
|
|
2348
2185
|
return true
|
|
@@ -2658,15 +2495,9 @@
|
|
|
2658
2495
|
return u.toString()
|
|
2659
2496
|
}
|
|
2660
2497
|
|
|
2661
|
-
function buildSchedulesUrl(
|
|
2498
|
+
function buildSchedulesUrl() {
|
|
2662
2499
|
const u = new URL('/api/schedules', httpOriginForApi() + '/')
|
|
2663
2500
|
u.searchParams.set('agent', currentAgentParam())
|
|
2664
|
-
if (typeof page === 'number' && page >= 1) {
|
|
2665
|
-
u.searchParams.set('page', String(page))
|
|
2666
|
-
}
|
|
2667
|
-
if (typeof pageSize === 'number' && pageSize >= 1) {
|
|
2668
|
-
u.searchParams.set('pageSize', String(pageSize))
|
|
2669
|
-
}
|
|
2670
2501
|
return u.toString()
|
|
2671
2502
|
}
|
|
2672
2503
|
|
|
@@ -2875,11 +2706,6 @@
|
|
|
2875
2706
|
const scheduleManageState = {
|
|
2876
2707
|
viewActive: false,
|
|
2877
2708
|
contentView: 'list',
|
|
2878
|
-
page: 1,
|
|
2879
|
-
pageSize: 10,
|
|
2880
|
-
total: 0,
|
|
2881
|
-
totalPages: 0,
|
|
2882
|
-
loading: false,
|
|
2883
2709
|
}
|
|
2884
2710
|
|
|
2885
2711
|
/** 切换定时任务列表与执行记录面板 */
|
|
@@ -3671,36 +3497,13 @@
|
|
|
3671
3497
|
return formatScheduleFireAt(task.nextFireAt)
|
|
3672
3498
|
}
|
|
3673
3499
|
|
|
3674
|
-
/** 渲染定时任务列表分页控件 */
|
|
3675
|
-
function renderScheduleTasksPager() {
|
|
3676
|
-
if (!scheduleTasksPager) return
|
|
3677
|
-
scheduleTasksPager.innerHTML = ''
|
|
3678
|
-
const totalPages = scheduleManageState.totalPages || 0
|
|
3679
|
-
scheduleTasksPager.hidden = totalPages <= 1
|
|
3680
|
-
if (totalPages <= 1) return
|
|
3681
|
-
const pager = createCloudPager(scheduleManageState, function (nextPage) {
|
|
3682
|
-
void loadScheduleTasks(nextPage).catch(function (e) {
|
|
3683
|
-
window.alert('加载失败: ' + e)
|
|
3684
|
-
})
|
|
3685
|
-
})
|
|
3686
|
-
scheduleTasksPager.appendChild(pager)
|
|
3687
|
-
}
|
|
3688
|
-
|
|
3689
3500
|
/** 渲染定时任务表格 */
|
|
3690
|
-
function renderScheduleTaskTable(tasks, timezone
|
|
3501
|
+
function renderScheduleTaskTable(tasks, timezone) {
|
|
3691
3502
|
if (!scheduleTaskTableBody || !scheduleManageEmpty) return
|
|
3692
3503
|
scheduleTaskTableBody.innerHTML = ''
|
|
3693
3504
|
const list = Array.isArray(tasks) ? tasks : []
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
if (totalCount > 0) {
|
|
3697
|
-
scheduleManageEmpty.hidden = true
|
|
3698
|
-
scheduleManageEmpty.classList.remove('is-error')
|
|
3699
|
-
} else {
|
|
3700
|
-
scheduleManageEmpty.hidden = false
|
|
3701
|
-
scheduleManageEmpty.textContent = '暂无定时任务'
|
|
3702
|
-
scheduleManageEmpty.classList.remove('is-error')
|
|
3703
|
-
}
|
|
3505
|
+
scheduleManageEmpty.hidden = list.length > 0
|
|
3506
|
+
if (list.length > 0) scheduleManageEmpty.classList.remove('is-error')
|
|
3704
3507
|
for (let i = 0; i < list.length; i++) {
|
|
3705
3508
|
const task = list[i]
|
|
3706
3509
|
if (!task || !task.id) continue
|
|
@@ -3756,42 +3559,18 @@
|
|
|
3756
3559
|
}
|
|
3757
3560
|
if (scheduleManageMeta) {
|
|
3758
3561
|
scheduleManageMeta.textContent =
|
|
3759
|
-
'时区: ' +
|
|
3760
|
-
(timezone || 'local') +
|
|
3761
|
-
' · 共 ' +
|
|
3762
|
-
totalCount +
|
|
3763
|
-
' 个任务' +
|
|
3764
|
-
(scheduleManageState.totalPages > 1
|
|
3765
|
-
? ' · 第 ' +
|
|
3766
|
-
scheduleManageState.page +
|
|
3767
|
-
'/' +
|
|
3768
|
-
scheduleManageState.totalPages +
|
|
3769
|
-
' 页'
|
|
3770
|
-
: '')
|
|
3562
|
+
'时区: ' + (timezone || 'local') + ' · 共 ' + list.length + ' 个任务'
|
|
3771
3563
|
}
|
|
3772
|
-
renderScheduleTasksPager()
|
|
3773
3564
|
}
|
|
3774
3565
|
|
|
3775
|
-
/** 拉取 agent
|
|
3776
|
-
async function loadScheduleTasks(
|
|
3777
|
-
|
|
3778
|
-
scheduleManageState.page = page
|
|
3779
|
-
}
|
|
3780
|
-
scheduleManageState.loading = true
|
|
3781
|
-
renderScheduleTasksPager()
|
|
3782
|
-
const res = await fetch(
|
|
3783
|
-
buildSchedulesUrl(scheduleManageState.page, scheduleManageState.pageSize),
|
|
3784
|
-
)
|
|
3566
|
+
/** 拉取 agent 全部定时任务 */
|
|
3567
|
+
async function loadScheduleTasks() {
|
|
3568
|
+
const res = await fetch(buildSchedulesUrl())
|
|
3785
3569
|
const body = await res.json()
|
|
3786
|
-
scheduleManageState.loading = false
|
|
3787
3570
|
if (!res.ok) {
|
|
3788
3571
|
throw new Error(body.message || body.error || res.statusText)
|
|
3789
3572
|
}
|
|
3790
|
-
|
|
3791
|
-
scheduleManageState.pageSize = Number(body.pageSize) || scheduleManageState.pageSize
|
|
3792
|
-
scheduleManageState.total = Number(body.total) || 0
|
|
3793
|
-
scheduleManageState.totalPages = Number(body.totalPages) || 0
|
|
3794
|
-
renderScheduleTaskTable(body.tasks, body.timezone, scheduleManageState.total)
|
|
3573
|
+
renderScheduleTaskTable(body.tasks, body.timezone)
|
|
3795
3574
|
return body
|
|
3796
3575
|
}
|
|
3797
3576
|
|
|
@@ -3844,7 +3623,7 @@
|
|
|
3844
3623
|
if (scheduleCreateForm) scheduleCreateForm.hidden = true
|
|
3845
3624
|
if (scheduleTaskNameInput) scheduleTaskNameInput.value = ''
|
|
3846
3625
|
if (schedulePromptInput) schedulePromptInput.value = ''
|
|
3847
|
-
await loadScheduleTasks(
|
|
3626
|
+
await loadScheduleTasks()
|
|
3848
3627
|
}
|
|
3849
3628
|
|
|
3850
3629
|
function buildScheduleRunUrl(id) {
|
|
@@ -3922,14 +3701,8 @@
|
|
|
3922
3701
|
if (!scheduleRunsTableBody || !scheduleRunsEmpty) return
|
|
3923
3702
|
scheduleRunsTableBody.innerHTML = ''
|
|
3924
3703
|
const list = Array.isArray(runs) ? runs : []
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
scheduleRunsEmpty.classList.remove('is-error')
|
|
3928
|
-
} else {
|
|
3929
|
-
scheduleRunsEmpty.hidden = false
|
|
3930
|
-
scheduleRunsEmpty.textContent = '暂无执行记录'
|
|
3931
|
-
scheduleRunsEmpty.classList.remove('is-error')
|
|
3932
|
-
}
|
|
3704
|
+
scheduleRunsEmpty.hidden = list.length > 0
|
|
3705
|
+
if (list.length > 0) scheduleRunsEmpty.classList.remove('is-error')
|
|
3933
3706
|
if (scheduleRunResultPre) {
|
|
3934
3707
|
scheduleRunResultPre.hidden = true
|
|
3935
3708
|
scheduleRunResultPre.textContent = ''
|
|
@@ -4092,19 +3865,14 @@
|
|
|
4092
3865
|
if (!scheduleManageView) return
|
|
4093
3866
|
setScheduleContentView('list')
|
|
4094
3867
|
setScheduleManageVisible(true)
|
|
4095
|
-
scheduleManageState.page = 1
|
|
4096
3868
|
if (scheduleTaskTableBody) scheduleTaskTableBody.innerHTML = ''
|
|
4097
|
-
if (scheduleTasksPager) {
|
|
4098
|
-
scheduleTasksPager.innerHTML = ''
|
|
4099
|
-
scheduleTasksPager.hidden = true
|
|
4100
|
-
}
|
|
4101
3869
|
if (scheduleManageEmpty) {
|
|
4102
3870
|
scheduleManageEmpty.hidden = false
|
|
4103
3871
|
scheduleManageEmpty.textContent = '加载中…'
|
|
4104
3872
|
scheduleManageEmpty.classList.remove('is-error')
|
|
4105
3873
|
}
|
|
4106
3874
|
try {
|
|
4107
|
-
await loadScheduleTasks(
|
|
3875
|
+
await loadScheduleTasks()
|
|
4108
3876
|
} catch (e) {
|
|
4109
3877
|
if (scheduleManageEmpty) {
|
|
4110
3878
|
scheduleManageEmpty.hidden = false
|
|
@@ -5611,7 +5379,6 @@
|
|
|
5611
5379
|
const text = getPromptPlainText()
|
|
5612
5380
|
const trimmed = text.trim()
|
|
5613
5381
|
if (!trimmed) return
|
|
5614
|
-
resetApiErrorTurnState()
|
|
5615
5382
|
setPendingUserEcho(trimmed)
|
|
5616
5383
|
const payload = { type: 'prompt', text: text }
|
|
5617
5384
|
autoScrollState.mode = 'FORCE_ON_SEND'
|
|
@@ -8702,6 +8469,14 @@
|
|
|
8702
8469
|
: ''
|
|
8703
8470
|
const value = String(raw ?? '').trim()
|
|
8704
8471
|
if (!value) continue
|
|
8472
|
+
if (field.key === TUITUI_CHANNEL_SESSION_KEY) {
|
|
8473
|
+
if (!TUITUI_CHANNEL_SESSION_ALLOWED.has(value)) {
|
|
8474
|
+
return {
|
|
8475
|
+
ok: false,
|
|
8476
|
+
message: 'TUITUI_CHANNEL_SESSION 只允许 0(禁用)或 1(启用)',
|
|
8477
|
+
}
|
|
8478
|
+
}
|
|
8479
|
+
}
|
|
8705
8480
|
out[field.key] = value
|
|
8706
8481
|
}
|
|
8707
8482
|
return { ok: true, env: out }
|
|
@@ -198,11 +198,6 @@ function startPollLoop() {
|
|
|
198
198
|
if (pollTimer) {
|
|
199
199
|
return
|
|
200
200
|
}
|
|
201
|
-
// 业务语义:geelib 单任务 session 仅出站工具,禁止启动轮询避免与监听 session 重复拉取
|
|
202
|
-
if (String(process.env.GEELIB_ENABLE_POLL || '').trim() === '0') {
|
|
203
|
-
logBoot('[POLL] skipped GEELIB_ENABLE_POLL=0')
|
|
204
|
-
return
|
|
205
|
-
}
|
|
206
201
|
logBoot(`[POLL] start intervalMs=${pollIntervalMs}`)
|
|
207
202
|
void pollAndNotify()
|
|
208
203
|
pollTimer = setInterval(() => {
|
|
@@ -7,6 +7,8 @@ import {
|
|
|
7
7
|
readFileSync,
|
|
8
8
|
writeFileSync,
|
|
9
9
|
} from "node:fs";
|
|
10
|
+
import { execFile } from "node:child_process";
|
|
11
|
+
import { promisify } from "node:util";
|
|
10
12
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
11
13
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
12
14
|
import * as z from "zod";
|
|
@@ -34,6 +36,10 @@ const projectSettingsLocalFile = join(
|
|
|
34
36
|
projectSettingsDir,
|
|
35
37
|
"settings.local.json",
|
|
36
38
|
);
|
|
39
|
+
const execFileAsync = promisify(execFile);
|
|
40
|
+
const CLAUDE_BIN = process.env.CLAUDE_BIN || "claude";
|
|
41
|
+
const AUTO_REPLY_ENABLED =
|
|
42
|
+
String(process.env.TUITUI_AUTO_REPLY || "true").toLowerCase() !== "false";
|
|
37
43
|
const account = {
|
|
38
44
|
appId: process.env.TUITUI_APP_ID,
|
|
39
45
|
appSecret: process.env.TUITUI_APP_SECRET,
|