@auto-ai/agent 2.1.160 → 2.1.165
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/404/index.html +1 -1
- package/dist/404.html +1 -1
- package/dist/_next/static/chunks/06b383e8ee499be7.js +1 -0
- package/dist/_next/static/chunks/0ce6504fc10ce408.js +1 -0
- package/dist/_next/static/chunks/0fa3b1f693a23b15.js +1 -0
- package/dist/_next/static/chunks/{b99d7c931432a00e.js → 106955e3cc6a6843.js} +1 -1
- package/dist/_next/static/chunks/1c9321874fea5f0d.js +1 -0
- package/dist/_next/static/chunks/1cb7453376657ffb.css +1 -0
- package/dist/_next/static/chunks/2014b101125849fd.js +1 -0
- package/dist/_next/static/chunks/{c5af60c028e52cf8.js → 270d7571d2eea071.js} +1 -1
- package/dist/_next/static/chunks/2df3e464b6247e75.js +1 -0
- package/dist/_next/static/chunks/32b9bdd82a961878.js +1 -0
- package/dist/_next/static/chunks/371449b804c846f7.js +1 -0
- package/dist/_next/static/chunks/38b035f49fa68570.js +1 -0
- package/dist/_next/static/chunks/{9aea16dd9db3a8bd.js → 3dcb1dcf23e7ab9c.js} +1 -1
- package/dist/_next/static/chunks/3ddf56f78e79b076.js +1 -0
- package/dist/_next/static/chunks/46b326fcd7b2e8ab.js +1 -0
- package/dist/_next/static/chunks/489266ff75dbd7fd.js +1 -0
- package/dist/_next/static/chunks/4b1cbde821e7ad65.js +1 -0
- package/dist/_next/static/chunks/{59baceab6698f9f7.js → 4d129d4e15c8c424.js} +1 -1
- package/dist/_next/static/chunks/{91adb7bdb9870c6a.js → 522518d740397639.js} +1 -1
- package/dist/_next/static/chunks/5853f68e75f5f7ab.js +1 -0
- package/dist/_next/static/chunks/5bad5163b6e015f5.js +1 -0
- package/dist/_next/static/chunks/{6c49d19eb7e88b9c.js → 5d79b7f202080232.js} +1 -1
- package/dist/_next/static/chunks/5f6769a92729c6c3.js +1 -0
- package/dist/_next/static/chunks/{cbb200599eb3e6d0.js → 63ec034afca4b5d6.js} +1 -1
- package/dist/_next/static/chunks/65efa67b7efe0f72.js +1 -0
- package/dist/_next/static/chunks/6e61f670898cb297.css +1 -0
- package/dist/_next/static/chunks/6f4460bd0b8a57af.js +1 -0
- package/dist/_next/static/chunks/73930967cfa80238.js +1 -0
- package/dist/_next/static/chunks/73e518d4b3543b8f.js +1 -0
- package/dist/_next/static/chunks/799f92e88bfeb469.js +1 -0
- package/dist/_next/static/chunks/{fa361913d47fdc14.css → 7bdf0e5b41aeb209.css} +0 -3
- package/dist/_next/static/chunks/7f52fbd725b13904.js +1 -0
- package/dist/_next/static/chunks/{314d4f64173e0e4f.js → 87e12ecbe9521f9b.js} +1 -1
- package/dist/_next/static/chunks/{93102efda2769ba5.js → 8f5be275907dd98c.js} +1 -1
- package/dist/_next/static/chunks/{83e39d76d6f07968.js → 94029062f236cadc.js} +1 -1
- package/dist/_next/static/chunks/{76a71d344cc15a9f.js → 9ccf7a8bca1730bf.js} +1 -1
- package/dist/_next/static/chunks/a6737fc58619eae5.js +1 -0
- package/dist/_next/static/chunks/a7d1ae46740fe1db.js +1 -0
- package/dist/_next/static/chunks/{b929fc868619ccb9.js → b30f1da4e57f459a.js} +1 -1
- package/dist/_next/static/chunks/b896987ddf6315c9.js +1 -0
- package/dist/_next/static/chunks/bbcf9daa108b22fb.js +1 -0
- package/dist/_next/static/chunks/bf2c1c402dbcccdf.js +1 -0
- package/dist/_next/static/chunks/bfc6ee42cec583d5.js +1 -0
- package/dist/_next/static/chunks/c79da9dd69089e4f.js +1 -0
- package/dist/_next/static/chunks/c933951b3113492f.js +1 -0
- package/dist/_next/static/chunks/{aadf128359998a2d.js → cd5eec7d305aa041.js} +1 -1
- package/dist/_next/static/chunks/d2d432a9facf4278.js +1 -0
- package/dist/_next/static/chunks/d4fd1b2f761be57f.css +7 -0
- package/dist/_next/static/chunks/d5e3d29f769997cc.js +1 -0
- package/dist/_next/static/chunks/da89e354de542422.js +1 -0
- package/dist/_next/static/chunks/e7bcbeb465fa49cf.js +1 -0
- package/dist/_next/static/chunks/ecaea9e9321ec538.js +1 -0
- package/dist/_next/static/chunks/{turbopack-030a42d60560a927.js → turbopack-63952675b1d69124.js} +1 -1
- package/dist/_next/static/media/data-loading.be8d921a.png +0 -0
- package/dist/_next/static/media/no-data.48c973b9.png +0 -0
- package/dist/agent-office.html +155 -226
- package/dist/index.html +2 -2
- package/dist/index.txt +21 -21
- package/dist/manage/about/index.html +2 -2
- package/dist/manage/about/index.txt +23 -22
- package/dist/manage/env/index.html +2 -2
- package/dist/manage/env/index.txt +25 -24
- package/dist/manage/general/index.html +2 -2
- package/dist/manage/general/index.txt +23 -22
- package/dist/manage/index.html +2 -2
- package/dist/manage/index.txt +20 -19
- package/dist/manage/mcp/index.html +2 -2
- package/dist/manage/mcp/index.txt +22 -21
- package/dist/manage/permissions/index.html +2 -2
- package/dist/manage/permissions/index.txt +23 -22
- package/dist/manage/skills/index.html +2 -2
- package/dist/manage/skills/index.txt +22 -21
- package/dist/manage/task/index.html +2 -2
- package/dist/manage/task/index.txt +22 -21
- package/dist/manage/teams/index.html +2 -2
- package/dist/manage/teams/index.txt +22 -21
- package/dist/manage/tools/index.html +2 -2
- package/dist/manage/tools/index.txt +22 -21
- package/dist/ws-test.html +9740 -77
- package/package.json +6 -6
- package/skills-runtime/deploy-test-env/SKILL.md +1 -1
- package/skills-runtime/dev-task-flow/SKILL.md +4 -4
- package/skills-runtime/self-test-flow/SKILL.md +2 -2
- package/skills-runtime/workflow-hub/SKILL.md +1 -1
- package/.env.example +0 -7
- package/dist/_next/static/chunks/0bb72b120dc81a85.js +0 -1
- package/dist/_next/static/chunks/0eeaf05fe8e92617.js +0 -1
- package/dist/_next/static/chunks/14114800ef3e692e.js +0 -1
- package/dist/_next/static/chunks/1d51ed7830318474.js +0 -1
- package/dist/_next/static/chunks/1ffb3acecdbda566.js +0 -1
- package/dist/_next/static/chunks/22d483db0dece6fa.js +0 -1
- package/dist/_next/static/chunks/289e2d5005a099d3.js +0 -1
- package/dist/_next/static/chunks/292d0b687a419387.js +0 -1
- package/dist/_next/static/chunks/2bbdc3c6bbaac93f.js +0 -1
- package/dist/_next/static/chunks/376aaeae24164c1a.js +0 -1
- package/dist/_next/static/chunks/39fed6244d398269.js +0 -1
- package/dist/_next/static/chunks/48bc54794d1c3561.js +0 -1
- package/dist/_next/static/chunks/5534f66638e5a2e8.js +0 -1
- package/dist/_next/static/chunks/5817c66b26ce8538.css +0 -1
- package/dist/_next/static/chunks/5d5fe2c255f43fec.js +0 -1
- package/dist/_next/static/chunks/61676890ad8fe194.js +0 -1
- package/dist/_next/static/chunks/67bb401596b3c723.js +0 -1
- package/dist/_next/static/chunks/7de1ab3b78f48430.js +0 -1
- package/dist/_next/static/chunks/950875832bab2141.js +0 -1
- package/dist/_next/static/chunks/98a41a7efbe71682.js +0 -1
- package/dist/_next/static/chunks/9e2cffe3c17fd0e7.js +0 -1
- package/dist/_next/static/chunks/a79654d570ac30eb.js +0 -1
- package/dist/_next/static/chunks/a8e06ee8243e3389.js +0 -1
- package/dist/_next/static/chunks/ad419be63e291696.js +0 -1
- package/dist/_next/static/chunks/bcefc2c679f3ada6.js +0 -1
- package/dist/_next/static/chunks/c1cfc60c17638a73.js +0 -1
- package/dist/_next/static/chunks/c26f95ab8ad3dcf0.js +0 -1
- package/dist/_next/static/chunks/cb4dec27441d471a.js +0 -1
- package/dist/_next/static/chunks/d3af8988bf25a7de.js +0 -1
- package/dist/_next/static/chunks/d3ccfb3dcef5974f.js +0 -1
- package/dist/_next/static/chunks/d504c4e2ebc5319a.js +0 -1
- package/dist/_next/static/chunks/e2833182a81cd867.js +0 -1
- package/dist/_next/static/chunks/e520aa06a5014225.js +0 -1
- package/dist/_next/static/chunks/e7bd145455a541af.css +0 -4
- package/dist/_next/static/chunks/eae304701469d3a8.js +0 -1
- package/dist/_next/static/chunks/eba0719a42605421.js +0 -1
- package/dist/_next/static/chunks/f2a87f0c7c1ec9f4.js +0 -1
- package/dist/_next/static/chunks/faaf4e0c2d5cffda.js +0 -1
- package/dist/_next/static/chunks/fc4be3bcf72559a0.js +0 -1
- package/dist/manage/add-account/basic/index.html +0 -2
- package/dist/manage/add-account/basic/index.txt +0 -38
- package/dist/manage/add-account/index.html +0 -2
- package/dist/manage/add-account/index.txt +0 -36
- package/dist/ws-test.css +0 -2880
- package/dist/ws-test.js +0 -7442
- /package/dist/_next/static/{WYrSrJ9dye9qgdGCYVOpA → vwMrLQGLViMpdiC9eEa7U}/_buildManifest.js +0 -0
- /package/dist/_next/static/{WYrSrJ9dye9qgdGCYVOpA → vwMrLQGLViMpdiC9eEa7U}/_clientMiddlewareManifest.json +0 -0
- /package/dist/_next/static/{WYrSrJ9dye9qgdGCYVOpA → vwMrLQGLViMpdiC9eEa7U}/_ssgManifest.js +0 -0
package/dist/_next/static/chunks/{turbopack-030a42d60560a927.js → turbopack-63952675b1d69124.js}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/9ccf7a8bca1730bf.js","static/chunks/522518d740397639.js","static/chunks/40268f8e3ff0314e.js","static/chunks/32b4d63e10d31351.js","static/chunks/66b30159915524db.js"],runtimeModuleIds:[94553]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/app/_next/",r=new WeakMap;function n(e,t){this.m=e,this.e=t}let o=n.prototype,i=Object.prototype.hasOwnProperty,l="undefined"!=typeof Symbol&&Symbol.toStringTag;function s(e,t,r){i.call(e,t)||Object.defineProperty(e,t,r)}function u(e,t){let r=e[t];return r||(r=a(t),e[t]=r),r}function a(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function c(e,t){s(e,"__esModule",{value:!0}),l&&s(e,l,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];"function"==typeof t[r]?s(e,n,{get:o,set:t[r++],enumerable:!0}):s(e,n,{get:o,enumerable:!0})}Object.seal(e)}o.s=function(e,t){let r,n;null!=t?n=(r=u(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,c(n,e)},o.j=function(e,t){var n,o;let l,s,a;null!=t?s=(l=u(this.c,t)).exports:(l=this.m,s=this.e);let c=(n=l,o=s,(a=r.get(n))||(r.set(n,a=[]),n.exports=n.namespaceObject=new Proxy(o,{get(e,t){if(i.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of a){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of a)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),a);"object"==typeof e&&null!==e&&c.push(e)},o.v=function(e,t){(null!=t?u(this.c,t):this.m).exports=e},o.n=function(e,t){let r;(r=null!=t?u(this.c,t):this.m).exports=r.namespaceObject=e};let f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,p=[null,f({}),f([]),f(f)];function h(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!p.includes(t);t=f(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n[o]=()=>e:n.push("default",()=>e)),c(t,n),t}function d(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}o.i=function(e){let t=M(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=h(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)},o.A=function(e){return this.r(e)(this.i.bind(this))},o.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},o.r=function(e){return M(e,this.m).exports},o.f=function(e){function t(t){if(i.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(i.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let m=Symbol("turbopack queues"),b=Symbol("turbopack exports"),y=Symbol("turbopack error");function O(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}o.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:i,reject:l,promise:s}=d(),u=Object.assign(s,{[b]:r.exports,[m]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[b]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(m in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[b]:{},[m]:e=>e(t)};return e.then(e=>{r[b]=e,O(t)},e=>{r[y]=e,O(t)}),r}}return{[b]:e,[m]:()=>{}}}),r=()=>t.map(e=>{if(e[y])throw e[y];return e[b]}),{promise:i,resolve:l}=d(),s=Object.assign(()=>l(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[m](u)),s.queueCount?i:r()},function(e){e?l(u[y]=e):i(u[b]),O(n)}),n&&-1===n.status&&(n.status=0)};let g=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function w(e,t){throw Error(`Invariant: ${t(e)}`)}g.prototype=URL.prototype,o.U=g,o.z=function(e){throw Error("dynamic usage of require is not supported")},o.g=globalThis;let j=n.prototype;var R=function(e){return e[e.Runtime=0]="Runtime",e[e.Parent=1]="Parent",e[e.Update=2]="Update",e}(R||{});let C=new Map;o.M=C;let _=new Map,U=new Map;async function k(e,t,r){let n;if("string"==typeof r)return $(e,t,T(r));let o=r.included||[],i=o.map(e=>!!C.has(e)||_.get(e));if(i.length>0&&i.every(e=>e))return void await Promise.all(i);let l=r.moduleChunks||[],s=l.map(e=>U.get(e)).filter(e=>e);if(s.length>0){if(s.length===l.length)return void await Promise.all(s);let r=new Set;for(let e of l)U.has(e)||r.add(e);for(let n of r){let r=$(e,t,T(n));U.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=$(e,t,T(r.path)),l))U.has(o)||U.set(o,n)}for(let e of o)_.has(e)||_.set(e,n);await n}j.l=function(e){return k(1,this.m.id,e)};let v=Promise.resolve(void 0),P=new WeakMap;function $(t,r,n){let o=e.loadChunkCached(t,n),i=P.get(o);if(void 0===i){let e=P.set.bind(P,o,v);i=o.then(e).catch(e=>{let o;switch(t){case 0:o=`as a runtime dependency of chunk ${r}`;break;case 1:o=`from module ${r}`;break;case 2:o="from an HMR update";break;default:w(t,e=>`Unknown source type: ${e}`)}throw Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0)}),P.set(o,i)}return i}function T(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}`}j.L=function(e){return $(1,this.m.id,e)},j.R=function(e){let t=this.r(e);return t?.default??t},j.P=function(e){return`/ROOT/${e??""}`},j.b=function(e){let t=new Blob([`self.TURBOPACK_WORKER_LOCATION = ${JSON.stringify(location.origin)};
|
|
2
2
|
self.TURBOPACK_NEXT_CHUNK_URLS = ${JSON.stringify(e.reverse().map(T),null,2)};
|
|
3
3
|
importScripts(...self.TURBOPACK_NEXT_CHUNK_URLS.map(c => self.TURBOPACK_WORKER_LOCATION + c).reverse());`],{type:"text/javascript"});return URL.createObjectURL(t)};let A=/\.js(?:\?[^#]*)?(?:#.*)?$/,S=/\.css(?:\?[^#]*)?(?:#.*)?$/;function E(e){return S.test(e)}o.w=function(t,r,n){return e.loadWebAssembly(1,this.m.id,t,r,n)},o.u=function(t,r){return e.loadWebAssemblyModule(1,this.m.id,t,r)};let K={};o.c=K;let M=(e,t)=>{let r=K[e];if(r){if(r.error)throw r.error;return r}return x(e,R.Parent,t.id)};function x(e,t,r){let o=C.get(e);"function"!=typeof o&&function(e,t,r){let n;switch(t){case 0:n=`as a runtime entry of chunk ${r}`;break;case 1:n=`because it was required from module ${r}`;break;case 2:n="because of an HMR update";break;default:w(t,e=>`Unknown source type: ${e}`)}throw Error(`Module ${e} was instantiated ${n}, but the module factory is not available. It might have been deleted in an HMR update.`)}(e,t,r);let i=a(e),l=i.exports;K[e]=i;let s=new n(i,l);try{o(s,i,l)}catch(e){throw i.error=e,e}return i.namespaceObject&&i.exports!==i.namespaceObject&&h(i.exports,i.namespaceObject),i}function N(r){let n,o=function(e){if("string"==typeof e)return e;let r=decodeURIComponent(("undefined"!=typeof TURBOPACK_NEXT_CHUNK_URLS?TURBOPACK_NEXT_CHUNK_URLS.pop():e.getAttribute("src")).replace(/[?#].*$/,""));return r.startsWith(t)?r.slice(t.length):r}(r[0]);return 2===r.length?n=r[1]:(n=void 0,!function(e,t,r,n){let o=1;for(;o<e.length;){let t=e[o],n=o+1;for(;n<e.length&&"function"!=typeof e[n];)n++;if(n===e.length)throw Error("malformed chunk format, expected a factory function");if(!r.has(t)){let i=e[n];for(Object.defineProperty(i,"name",{value:"__TURBOPACK__module__evaluation__"});o<n;o++)t=e[o],r.set(t,i)}o=n+1}}(r,0,C)),e.registerChunk(o,n)}let L=new Map;(()=>{function t(e){let t=L.get(e);if(!t){let r,n;t={resolved:!1,loadingStarted:!1,promise:new Promise((e,t)=>{r=e,n=t}),resolve:()=>{t.resolved=!0,r()},reject:n},L.set(e,t)}return t}e={async registerChunk(e,r){if(t(T(e)).resolve(),null!=r){for(let e of r.otherChunks)t(T("string"==typeof e?e:e.path));if(await Promise.all(r.otherChunks.map(t=>k(0,e,t))),r.runtimeModuleIds.length>0)for(let t of r.runtimeModuleIds)!function(e,t){let r=K[t];if(r){if(r.error)throw r.error;return}x(t,R.Runtime,e)}(e,t)}},loadChunkCached:(e,r)=>(function(e,r){let n=t(r);if(n.loadingStarted)return n.promise;if(e===R.Runtime)return n.loadingStarted=!0,E(r)&&n.resolve(),n.promise;if("function"==typeof importScripts)if(E(r));else if(A.test(r))self.TURBOPACK_NEXT_CHUNK_URLS.push(r),importScripts(TURBOPACK_WORKER_LOCATION+r);else throw Error(`can't infer type of chunk from URL ${r} in worker`);else{let e=decodeURI(r);if(E(r))if(document.querySelectorAll(`link[rel=stylesheet][href="${r}"],link[rel=stylesheet][href^="${r}?"],link[rel=stylesheet][href="${e}"],link[rel=stylesheet][href^="${e}?"]`).length>0)n.resolve();else{let e=document.createElement("link");e.rel="stylesheet",e.href=r,e.onerror=()=>{n.reject()},e.onload=()=>{n.resolve()},document.head.appendChild(e)}else if(A.test(r)){let t=document.querySelectorAll(`script[src="${r}"],script[src^="${r}?"],script[src="${e}"],script[src^="${e}?"]`);if(t.length>0)for(let e of Array.from(t))e.addEventListener("error",()=>{n.reject()});else{let e=document.createElement("script");e.src=r,e.onerror=()=>{n.reject()},document.head.appendChild(e)}}else throw Error(`can't infer type of chunk from URL ${r}`)}return n.loadingStarted=!0,n.promise})(e,r),async loadWebAssembly(e,t,r,n,o){let i=fetch(T(r)),{instance:l}=await WebAssembly.instantiateStreaming(i,o);return l.exports},async loadWebAssemblyModule(e,t,r,n){let o=fetch(T(r));return await WebAssembly.compileStreaming(o)}}})();let B=globalThis.TURBOPACK;globalThis.TURBOPACK={push:N},B.forEach(N)})();
|
|
Binary file
|
|
Binary file
|
package/dist/agent-office.html
CHANGED
|
@@ -3,157 +3,136 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
-
<title
|
|
7
|
-
<link rel="stylesheet" href="/ws-test.css" />
|
|
6
|
+
<title>Agent 列表</title>
|
|
8
7
|
<style>
|
|
8
|
+
:root {
|
|
9
|
+
color-scheme: light;
|
|
10
|
+
--ds-page: #f2f2f7;
|
|
11
|
+
--ds-bg: #ffffff;
|
|
12
|
+
--ds-border: #e5e5ea;
|
|
13
|
+
--ds-text: #1c1c1e;
|
|
14
|
+
--ds-muted: #8e8e93;
|
|
15
|
+
--ds-accent: #0a84ff;
|
|
16
|
+
--ds-accent-hover: #0070e0;
|
|
17
|
+
--ds-danger: #ff3b30;
|
|
18
|
+
}
|
|
19
|
+
* { box-sizing: border-box; }
|
|
20
|
+
html, body { height: 100%; margin: 0; }
|
|
9
21
|
body {
|
|
22
|
+
font-family: 'PingFang SC', 'Microsoft YaHei', ui-sans-serif, system-ui, sans-serif;
|
|
23
|
+
background: var(--ds-page);
|
|
24
|
+
color: var(--ds-text);
|
|
10
25
|
overflow: hidden;
|
|
11
|
-
-webkit-font-smoothing: antialiased;
|
|
12
26
|
}
|
|
13
|
-
|
|
27
|
+
#officeApp {
|
|
14
28
|
display: flex;
|
|
15
29
|
flex-direction: column;
|
|
16
30
|
width: 100%;
|
|
17
31
|
height: 100%;
|
|
18
|
-
background: var(--ds-bg);
|
|
19
32
|
}
|
|
20
|
-
.office-
|
|
33
|
+
.office-topbar {
|
|
21
34
|
flex-shrink: 0;
|
|
22
35
|
display: flex;
|
|
23
36
|
align-items: center;
|
|
24
37
|
justify-content: space-between;
|
|
25
|
-
|
|
26
|
-
min-height: 52px;
|
|
27
|
-
padding: 0 20px;
|
|
28
|
-
border-bottom: 1px solid var(--ds-border);
|
|
38
|
+
padding: 14px 20px;
|
|
29
39
|
background: var(--ds-bg);
|
|
40
|
+
border-bottom: 1px solid var(--ds-border);
|
|
30
41
|
}
|
|
31
|
-
.office-
|
|
32
|
-
min-width: 0;
|
|
33
|
-
flex: 1;
|
|
34
|
-
}
|
|
35
|
-
.office-header-title {
|
|
42
|
+
.office-brand h1 {
|
|
36
43
|
margin: 0;
|
|
37
|
-
font-size:
|
|
44
|
+
font-size: 1.15rem;
|
|
38
45
|
font-weight: 600;
|
|
39
|
-
line-height: 1.3;
|
|
40
|
-
color: var(--ds-text);
|
|
41
46
|
}
|
|
42
|
-
.office-
|
|
43
|
-
margin:
|
|
44
|
-
font-size:
|
|
47
|
+
.office-brand p {
|
|
48
|
+
margin: 0.2rem 0 0;
|
|
49
|
+
font-size: 0.82rem;
|
|
45
50
|
color: var(--ds-muted);
|
|
46
|
-
line-height: 1.4;
|
|
47
51
|
}
|
|
48
|
-
.
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
align-items: center;
|
|
52
|
-
gap: 6px;
|
|
53
|
-
padding: 8px 14px;
|
|
54
|
-
border: none;
|
|
55
|
-
border-radius: 999px;
|
|
56
|
-
background: var(--ds-accent);
|
|
57
|
-
color: #fff;
|
|
58
|
-
font-size: 14px;
|
|
59
|
-
font-weight: 500;
|
|
60
|
-
font-family: inherit;
|
|
61
|
-
cursor: pointer;
|
|
62
|
-
transition: background 120ms ease;
|
|
63
|
-
}
|
|
64
|
-
.btn-office-new:hover {
|
|
65
|
-
background: var(--ds-accent-hover);
|
|
66
|
-
}
|
|
67
|
-
.btn-office-new svg {
|
|
68
|
-
flex-shrink: 0;
|
|
52
|
+
.office-top-actions {
|
|
53
|
+
display: flex;
|
|
54
|
+
gap: 8px;
|
|
69
55
|
}
|
|
70
56
|
.office-main {
|
|
71
57
|
flex: 1;
|
|
72
58
|
display: flex;
|
|
73
59
|
min-height: 0;
|
|
74
60
|
overflow: hidden;
|
|
75
|
-
background: var(--ds-bg);
|
|
76
61
|
}
|
|
77
|
-
|
|
62
|
+
#agentListRoot {
|
|
78
63
|
flex: 1;
|
|
79
64
|
overflow: auto;
|
|
80
|
-
padding: 20px;
|
|
65
|
+
padding: 16px 20px 24px;
|
|
81
66
|
min-width: 0;
|
|
82
67
|
}
|
|
83
68
|
.agent-list {
|
|
84
69
|
list-style: none;
|
|
85
|
-
margin: 0
|
|
70
|
+
margin: 0;
|
|
86
71
|
padding: 0;
|
|
87
72
|
display: flex;
|
|
88
73
|
flex-direction: column;
|
|
89
|
-
gap:
|
|
90
|
-
max-width:
|
|
74
|
+
gap: 10px;
|
|
75
|
+
max-width: 720px;
|
|
91
76
|
}
|
|
92
77
|
.agent-list-empty {
|
|
93
78
|
color: var(--ds-muted);
|
|
94
|
-
font-size:
|
|
95
|
-
padding:
|
|
79
|
+
font-size: 0.9rem;
|
|
80
|
+
padding: 48px 16px;
|
|
96
81
|
text-align: center;
|
|
97
|
-
max-width: 640px;
|
|
98
|
-
margin: 0 auto;
|
|
99
82
|
}
|
|
100
83
|
.agent-list-item {
|
|
101
|
-
display:
|
|
84
|
+
display: flex;
|
|
85
|
+
align-items: center;
|
|
86
|
+
gap: 14px;
|
|
102
87
|
width: 100%;
|
|
103
|
-
padding:
|
|
104
|
-
border:
|
|
105
|
-
border-radius:
|
|
106
|
-
background:
|
|
88
|
+
padding: 14px 16px;
|
|
89
|
+
border: 1px solid var(--ds-border);
|
|
90
|
+
border-radius: 12px;
|
|
91
|
+
background: var(--ds-bg);
|
|
107
92
|
cursor: pointer;
|
|
108
93
|
text-align: left;
|
|
109
94
|
font: inherit;
|
|
110
95
|
color: inherit;
|
|
111
|
-
transition:
|
|
96
|
+
transition: border-color 0.15s, box-shadow 0.15s;
|
|
112
97
|
}
|
|
113
98
|
.agent-list-item:hover {
|
|
114
|
-
|
|
99
|
+
border-color: rgba(10, 132, 255, 0.35);
|
|
100
|
+
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
|
|
115
101
|
}
|
|
116
102
|
.agent-list-item.is-selected {
|
|
117
|
-
|
|
103
|
+
border-color: var(--ds-accent);
|
|
104
|
+
box-shadow: 0 0 0 1px var(--ds-accent);
|
|
105
|
+
}
|
|
106
|
+
.agent-list-accent {
|
|
107
|
+
flex-shrink: 0;
|
|
108
|
+
width: 4px;
|
|
109
|
+
height: 40px;
|
|
110
|
+
border-radius: 2px;
|
|
118
111
|
}
|
|
119
112
|
.agent-list-body {
|
|
113
|
+
flex: 1;
|
|
114
|
+
min-width: 0;
|
|
120
115
|
display: flex;
|
|
121
116
|
flex-direction: column;
|
|
122
|
-
gap:
|
|
123
|
-
min-width: 0;
|
|
117
|
+
gap: 4px;
|
|
124
118
|
}
|
|
125
|
-
.agent-list-
|
|
126
|
-
font-size:
|
|
119
|
+
.agent-list-id {
|
|
120
|
+
font-size: 1rem;
|
|
127
121
|
font-weight: 600;
|
|
128
|
-
line-height: 1.35;
|
|
129
|
-
color: var(--ds-text);
|
|
130
|
-
overflow: hidden;
|
|
131
|
-
text-overflow: ellipsis;
|
|
132
|
-
white-space: nowrap;
|
|
133
122
|
}
|
|
134
|
-
.agent-list-
|
|
135
|
-
font-size:
|
|
136
|
-
font-family: ui-monospace, Menlo, monospace;
|
|
123
|
+
.agent-list-desc {
|
|
124
|
+
font-size: 0.82rem;
|
|
137
125
|
color: var(--ds-muted);
|
|
138
|
-
overflow: hidden;
|
|
139
|
-
text-overflow: ellipsis;
|
|
140
126
|
white-space: nowrap;
|
|
141
|
-
}
|
|
142
|
-
.agent-list-desc {
|
|
143
|
-
font-size: 13px;
|
|
144
|
-
color: var(--ds-secondary);
|
|
145
|
-
line-height: 1.45;
|
|
146
|
-
display: -webkit-box;
|
|
147
|
-
-webkit-box-orient: vertical;
|
|
148
|
-
-webkit-line-clamp: 2;
|
|
149
127
|
overflow: hidden;
|
|
128
|
+
text-overflow: ellipsis;
|
|
150
129
|
}
|
|
151
130
|
.agent-list-team {
|
|
152
|
-
font-size:
|
|
153
|
-
color: var(--ds-
|
|
131
|
+
font-size: 0.78rem;
|
|
132
|
+
color: var(--ds-accent);
|
|
133
|
+
white-space: nowrap;
|
|
154
134
|
overflow: hidden;
|
|
155
135
|
text-overflow: ellipsis;
|
|
156
|
-
white-space: nowrap;
|
|
157
136
|
}
|
|
158
137
|
.office-team-section {
|
|
159
138
|
margin-bottom: 1rem;
|
|
@@ -176,11 +155,11 @@
|
|
|
176
155
|
display: inline-flex;
|
|
177
156
|
align-items: center;
|
|
178
157
|
gap: 4px;
|
|
179
|
-
padding:
|
|
158
|
+
padding: 0.2rem 0.45rem 0.2rem 0.55rem;
|
|
180
159
|
border-radius: 999px;
|
|
181
|
-
background:
|
|
182
|
-
border: 1px solid
|
|
183
|
-
font-size:
|
|
160
|
+
background: rgba(10, 132, 255, 0.1);
|
|
161
|
+
border: 1px solid rgba(10, 132, 255, 0.25);
|
|
162
|
+
font-size: 0.78rem;
|
|
184
163
|
}
|
|
185
164
|
.office-team-chip button {
|
|
186
165
|
border: none;
|
|
@@ -210,18 +189,22 @@
|
|
|
210
189
|
padding: 0.45rem 0.55rem;
|
|
211
190
|
font: inherit;
|
|
212
191
|
}
|
|
192
|
+
.agent-list-arrow {
|
|
193
|
+
flex-shrink: 0;
|
|
194
|
+
color: var(--ds-muted);
|
|
195
|
+
font-size: 1.2rem;
|
|
196
|
+
line-height: 1;
|
|
197
|
+
}
|
|
213
198
|
.office-btn {
|
|
214
199
|
border: 1px solid var(--ds-border);
|
|
215
200
|
background: var(--ds-bg);
|
|
216
201
|
color: var(--ds-text);
|
|
217
|
-
border-radius:
|
|
218
|
-
padding:
|
|
219
|
-
font-size:
|
|
220
|
-
font-family: inherit;
|
|
202
|
+
border-radius: 10px;
|
|
203
|
+
padding: 0.45rem 0.85rem;
|
|
204
|
+
font-size: 0.85rem;
|
|
221
205
|
cursor: pointer;
|
|
222
|
-
transition: background 120ms ease, border-color 120ms ease;
|
|
223
206
|
}
|
|
224
|
-
.office-btn:hover { background:
|
|
207
|
+
.office-btn:hover { background: #fafafa; }
|
|
225
208
|
.office-btn-primary {
|
|
226
209
|
background: var(--ds-accent);
|
|
227
210
|
border-color: var(--ds-accent);
|
|
@@ -230,121 +213,86 @@
|
|
|
230
213
|
.office-btn-primary:hover { background: var(--ds-accent-hover); }
|
|
231
214
|
.office-btn-danger {
|
|
232
215
|
color: var(--ds-danger);
|
|
233
|
-
border-color: rgba(
|
|
234
|
-
background: #fff;
|
|
216
|
+
border-color: rgba(255, 59, 48, 0.35);
|
|
235
217
|
}
|
|
236
|
-
|
|
237
|
-
background: #fef2f2;
|
|
238
|
-
border-color: var(--ds-danger);
|
|
239
|
-
}
|
|
240
|
-
.office-panel {
|
|
218
|
+
#officePanel {
|
|
241
219
|
flex-shrink: 0;
|
|
242
|
-
width: min(
|
|
220
|
+
width: min(380px, 42vw);
|
|
243
221
|
background: var(--ds-bg);
|
|
244
222
|
border-left: 1px solid var(--ds-border);
|
|
245
223
|
display: none;
|
|
246
224
|
flex-direction: column;
|
|
247
225
|
min-height: 0;
|
|
248
226
|
}
|
|
249
|
-
.
|
|
227
|
+
#officePanel.is-open {
|
|
250
228
|
display: flex;
|
|
251
229
|
}
|
|
252
230
|
.office-panel-head {
|
|
253
231
|
display: flex;
|
|
254
232
|
align-items: center;
|
|
255
233
|
justify-content: space-between;
|
|
256
|
-
|
|
257
|
-
padding: 14px 16px;
|
|
234
|
+
padding: 1rem 1rem 0.5rem;
|
|
258
235
|
border-bottom: 1px solid var(--ds-border);
|
|
259
|
-
flex-shrink: 0;
|
|
260
236
|
}
|
|
261
237
|
.office-panel-head h2 {
|
|
262
238
|
margin: 0;
|
|
263
|
-
font-size:
|
|
264
|
-
font-weight: 600;
|
|
265
|
-
line-height: 1.3;
|
|
266
|
-
overflow: hidden;
|
|
267
|
-
text-overflow: ellipsis;
|
|
268
|
-
white-space: nowrap;
|
|
269
|
-
min-width: 0;
|
|
239
|
+
font-size: 1rem;
|
|
270
240
|
}
|
|
271
241
|
.office-panel-close {
|
|
272
|
-
flex-shrink: 0;
|
|
273
|
-
width: 28px;
|
|
274
|
-
height: 28px;
|
|
275
242
|
border: none;
|
|
276
|
-
border-radius: 6px;
|
|
277
243
|
background: transparent;
|
|
278
|
-
font-size:
|
|
244
|
+
font-size: 1.4rem;
|
|
279
245
|
line-height: 1;
|
|
280
246
|
cursor: pointer;
|
|
281
247
|
color: var(--ds-muted);
|
|
282
248
|
}
|
|
283
|
-
.office-panel-close:hover {
|
|
284
|
-
background: var(--ds-item-hover);
|
|
285
|
-
color: var(--ds-text);
|
|
286
|
-
}
|
|
287
249
|
.office-panel-body {
|
|
288
|
-
padding:
|
|
250
|
+
padding: 1rem;
|
|
289
251
|
overflow: auto;
|
|
290
252
|
flex: 1;
|
|
291
253
|
min-height: 0;
|
|
292
254
|
}
|
|
293
255
|
.office-panel-meta {
|
|
294
|
-
margin: 0 0
|
|
295
|
-
font-size:
|
|
256
|
+
margin: 0 0 0.75rem;
|
|
257
|
+
font-size: 0.8rem;
|
|
296
258
|
color: var(--ds-muted);
|
|
297
|
-
line-height: 1.45;
|
|
298
259
|
}
|
|
299
260
|
.office-form-row {
|
|
300
261
|
display: flex;
|
|
301
262
|
flex-direction: column;
|
|
302
|
-
gap:
|
|
303
|
-
margin-bottom:
|
|
263
|
+
gap: 0.35rem;
|
|
264
|
+
margin-bottom: 0.85rem;
|
|
304
265
|
}
|
|
305
266
|
.office-form-row label {
|
|
306
|
-
font-size:
|
|
307
|
-
font-weight: 500;
|
|
267
|
+
font-size: 0.82rem;
|
|
308
268
|
color: var(--ds-muted);
|
|
309
269
|
}
|
|
310
270
|
.office-form-row input,
|
|
311
|
-
.office-form-row textarea
|
|
312
|
-
.office-team-add select {
|
|
271
|
+
.office-form-row textarea {
|
|
313
272
|
width: 100%;
|
|
314
273
|
border: 1px solid var(--ds-border);
|
|
315
|
-
border-radius:
|
|
316
|
-
padding:
|
|
274
|
+
border-radius: 10px;
|
|
275
|
+
padding: 0.55rem 0.65rem;
|
|
317
276
|
font: inherit;
|
|
318
|
-
font-size: 14px;
|
|
319
277
|
resize: vertical;
|
|
320
|
-
background: var(--ds-bg);
|
|
321
|
-
color: var(--ds-text);
|
|
322
278
|
}
|
|
323
|
-
.office-form-row
|
|
324
|
-
.office-form-row textarea:focus,
|
|
325
|
-
.office-team-add select:focus {
|
|
326
|
-
outline: none;
|
|
327
|
-
border-color: var(--ds-accent);
|
|
328
|
-
box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12);
|
|
329
|
-
}
|
|
330
|
-
.office-form-row textarea { min-height: 80px; line-height: 1.5; }
|
|
279
|
+
.office-form-row textarea { min-height: 72px; }
|
|
331
280
|
.office-form-actions {
|
|
332
281
|
display: flex;
|
|
333
282
|
flex-wrap: wrap;
|
|
334
283
|
gap: 8px;
|
|
335
|
-
margin-top:
|
|
336
|
-
padding-top: 4px;
|
|
284
|
+
margin-top: 0.5rem;
|
|
337
285
|
}
|
|
338
286
|
#officeToast {
|
|
339
287
|
position: fixed;
|
|
340
288
|
left: 50%;
|
|
341
289
|
bottom: 28px;
|
|
342
290
|
transform: translateX(-50%) translateY(12px);
|
|
343
|
-
background:
|
|
291
|
+
background: rgba(28, 28, 30, 0.92);
|
|
344
292
|
color: #fff;
|
|
345
|
-
padding:
|
|
346
|
-
border-radius:
|
|
347
|
-
font-size:
|
|
293
|
+
padding: 0.65rem 1rem;
|
|
294
|
+
border-radius: 10px;
|
|
295
|
+
font-size: 0.85rem;
|
|
348
296
|
opacity: 0;
|
|
349
297
|
pointer-events: none;
|
|
350
298
|
transition: opacity 0.2s, transform 0.2s;
|
|
@@ -356,19 +304,10 @@
|
|
|
356
304
|
opacity: 1;
|
|
357
305
|
transform: translateX(-50%) translateY(0);
|
|
358
306
|
}
|
|
359
|
-
#officeToast.is-error { background:
|
|
360
|
-
.office-list-root::-webkit-scrollbar,
|
|
361
|
-
.office-panel-body::-webkit-scrollbar {
|
|
362
|
-
width: 5px;
|
|
363
|
-
}
|
|
364
|
-
.office-list-root::-webkit-scrollbar-thumb,
|
|
365
|
-
.office-panel-body::-webkit-scrollbar-thumb {
|
|
366
|
-
background: rgba(0, 0, 0, 0.15);
|
|
367
|
-
border-radius: 999px;
|
|
368
|
-
}
|
|
307
|
+
#officeToast.is-error { background: rgba(192, 57, 43, 0.95); }
|
|
369
308
|
@media (max-width: 768px) {
|
|
370
309
|
.office-main { flex-direction: column; }
|
|
371
|
-
|
|
310
|
+
#officePanel {
|
|
372
311
|
width: 100%;
|
|
373
312
|
border-left: none;
|
|
374
313
|
border-top: 1px solid var(--ds-border);
|
|
@@ -378,24 +317,21 @@
|
|
|
378
317
|
</style>
|
|
379
318
|
</head>
|
|
380
319
|
<body>
|
|
381
|
-
<div id="officeApp"
|
|
382
|
-
<header class="office-
|
|
383
|
-
<div class="office-
|
|
384
|
-
<h1
|
|
385
|
-
<p
|
|
320
|
+
<div id="officeApp">
|
|
321
|
+
<header class="office-topbar">
|
|
322
|
+
<div class="office-brand">
|
|
323
|
+
<h1>Agent 列表</h1>
|
|
324
|
+
<p id="officeSubtitle">加载中…</p>
|
|
325
|
+
</div>
|
|
326
|
+
<div class="office-top-actions">
|
|
327
|
+
<button type="button" class="office-btn office-btn-primary" id="btnOfficeNewAgent">新建 Agent</button>
|
|
386
328
|
</div>
|
|
387
|
-
<button type="button" class="btn-office-new" id="btnOfficeNewAgent">
|
|
388
|
-
<svg viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" aria-hidden="true">
|
|
389
|
-
<path d="M12 5v14M5 12h14"/>
|
|
390
|
-
</svg>
|
|
391
|
-
<span>新建 Agent</span>
|
|
392
|
-
</button>
|
|
393
329
|
</header>
|
|
394
330
|
|
|
395
331
|
<div class="office-main">
|
|
396
|
-
<div id="agentListRoot"
|
|
332
|
+
<div id="agentListRoot" aria-label="Agent 列表"></div>
|
|
397
333
|
|
|
398
|
-
<aside id="officePanel"
|
|
334
|
+
<aside id="officePanel" aria-label="Agent 管理面板">
|
|
399
335
|
<div class="office-panel-head">
|
|
400
336
|
<h2 id="officePanelTitle">Agent</h2>
|
|
401
337
|
<button type="button" class="office-panel-close" id="btnOfficePanelClose" aria-label="关闭">×</button>
|
|
@@ -662,21 +598,31 @@
|
|
|
662
598
|
return id
|
|
663
599
|
}
|
|
664
600
|
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
601
|
+
const AGENT_ACCENT_COLORS = [
|
|
602
|
+
'#22d3c5',
|
|
603
|
+
'#4da3ff',
|
|
604
|
+
'#8b5cf6',
|
|
605
|
+
'#e84855',
|
|
606
|
+
'#f5c518',
|
|
607
|
+
'#c5e84c',
|
|
608
|
+
]
|
|
609
|
+
|
|
610
|
+
const KNOWN_ACCENTS = {
|
|
611
|
+
dev: '#22d3c5',
|
|
612
|
+
edr: '#4da3ff',
|
|
613
|
+
qihoo: '#8b5cf6',
|
|
673
614
|
}
|
|
674
615
|
|
|
675
|
-
/**
|
|
676
|
-
function
|
|
677
|
-
const
|
|
678
|
-
|
|
679
|
-
|
|
616
|
+
/** 根据 agent id 分配列表左侧色带 */
|
|
617
|
+
function accentColorForId(id) {
|
|
618
|
+
const key = String(id || '').trim().toLowerCase()
|
|
619
|
+
if (KNOWN_ACCENTS[key]) return KNOWN_ACCENTS[key]
|
|
620
|
+
const s = String(id || 'a')
|
|
621
|
+
let h = 0
|
|
622
|
+
for (let i = 0; i < s.length; i++) {
|
|
623
|
+
h = (h + s.charCodeAt(i) * 17) % AGENT_ACCENT_COLORS.length
|
|
624
|
+
}
|
|
625
|
+
return AGENT_ACCENT_COLORS[h]
|
|
680
626
|
}
|
|
681
627
|
|
|
682
628
|
/** 列表页选中状态:仅维护当前 agent id */
|
|
@@ -726,7 +672,7 @@
|
|
|
726
672
|
if (!agents.length) {
|
|
727
673
|
const empty = document.createElement('div')
|
|
728
674
|
empty.className = 'agent-list-empty'
|
|
729
|
-
empty.textContent = '暂无 Agent
|
|
675
|
+
empty.textContent = '暂无 Agent,点击右上角「新建 Agent」创建'
|
|
730
676
|
this.container.appendChild(empty)
|
|
731
677
|
return
|
|
732
678
|
}
|
|
@@ -747,26 +693,22 @@
|
|
|
747
693
|
'agent-list-item' + (selectedId === id ? ' is-selected' : '')
|
|
748
694
|
btn.setAttribute('aria-pressed', selectedId === id ? 'true' : 'false')
|
|
749
695
|
|
|
696
|
+
const accent = document.createElement('span')
|
|
697
|
+
accent.className = 'agent-list-accent'
|
|
698
|
+
accent.style.background = accentColorForId(id)
|
|
699
|
+
|
|
750
700
|
const body = document.createElement('span')
|
|
751
701
|
body.className = 'agent-list-body'
|
|
752
702
|
|
|
753
703
|
const title = document.createElement('span')
|
|
754
|
-
title.className = 'agent-list-
|
|
755
|
-
title.textContent =
|
|
756
|
-
|
|
757
|
-
body.appendChild(title)
|
|
758
|
-
|
|
759
|
-
const subId = agentListSubId(row)
|
|
760
|
-
if (subId) {
|
|
761
|
-
const idEl = document.createElement('span')
|
|
762
|
-
idEl.className = 'agent-list-id-sub'
|
|
763
|
-
idEl.textContent = subId
|
|
764
|
-
body.appendChild(idEl)
|
|
765
|
-
}
|
|
704
|
+
title.className = 'agent-list-id'
|
|
705
|
+
title.textContent = id
|
|
766
706
|
|
|
767
707
|
const desc = document.createElement('span')
|
|
768
708
|
desc.className = 'agent-list-desc'
|
|
769
|
-
desc.textContent = truncateListDesc(row.whentouse,
|
|
709
|
+
desc.textContent = truncateListDesc(row.whentouse, 80)
|
|
710
|
+
|
|
711
|
+
body.appendChild(title)
|
|
770
712
|
body.appendChild(desc)
|
|
771
713
|
|
|
772
714
|
const teamLine = formatAgentTeamLine(row)
|
|
@@ -777,7 +719,13 @@
|
|
|
777
719
|
body.appendChild(team)
|
|
778
720
|
}
|
|
779
721
|
|
|
722
|
+
const arrow = document.createElement('span')
|
|
723
|
+
arrow.className = 'agent-list-arrow'
|
|
724
|
+
arrow.textContent = '›'
|
|
725
|
+
|
|
726
|
+
btn.appendChild(accent)
|
|
780
727
|
btn.appendChild(body)
|
|
728
|
+
btn.appendChild(arrow)
|
|
781
729
|
|
|
782
730
|
btn.addEventListener('click', () => {
|
|
783
731
|
if (this.onPick) this.onPick(id)
|
|
@@ -1054,12 +1002,7 @@
|
|
|
1054
1002
|
if (!agentId) return
|
|
1055
1003
|
this.mode = 'edit'
|
|
1056
1004
|
this.editingId = agentId
|
|
1057
|
-
|
|
1058
|
-
return String(a.id || '').trim() === agentId
|
|
1059
|
-
})
|
|
1060
|
-
if (this.panelTitleEl) {
|
|
1061
|
-
this.panelTitleEl.textContent = cached ? agentListTitle(cached) : agentId
|
|
1062
|
-
}
|
|
1005
|
+
if (this.panelTitleEl) this.panelTitleEl.textContent = 'Agent · ' + agentId
|
|
1063
1006
|
if (this.panelMetaEl) this.panelMetaEl.textContent = '加载中…'
|
|
1064
1007
|
if (this.btnDelete) {
|
|
1065
1008
|
this.btnDelete.disabled = false
|
|
@@ -1084,15 +1027,6 @@
|
|
|
1084
1027
|
this.promptInput.value =
|
|
1085
1028
|
typeof agent.prompt === 'string' ? agent.prompt : ''
|
|
1086
1029
|
}
|
|
1087
|
-
if (this.panelTitleEl) {
|
|
1088
|
-
const dn =
|
|
1089
|
-
typeof agent.displayName === 'string' && agent.displayName.trim()
|
|
1090
|
-
? agent.displayName.trim()
|
|
1091
|
-
: cached
|
|
1092
|
-
? agentListTitle(cached)
|
|
1093
|
-
: agentId
|
|
1094
|
-
this.panelTitleEl.textContent = dn
|
|
1095
|
-
}
|
|
1096
1030
|
const members = Array.isArray(agent.agentTeamMembers)
|
|
1097
1031
|
? agent.agentTeamMembers
|
|
1098
1032
|
: []
|
|
@@ -1164,12 +1098,7 @@
|
|
|
1164
1098
|
this.btnDelete.disabled = false
|
|
1165
1099
|
}
|
|
1166
1100
|
if (this.btnWorkbench) this.btnWorkbench.disabled = false
|
|
1167
|
-
|
|
1168
|
-
return String(a.id || '').trim() === id
|
|
1169
|
-
})
|
|
1170
|
-
if (this.panelTitleEl) {
|
|
1171
|
-
this.panelTitleEl.textContent = savedRow ? agentListTitle(savedRow) : id
|
|
1172
|
-
}
|
|
1101
|
+
if (this.panelTitleEl) this.panelTitleEl.textContent = 'Agent · ' + id
|
|
1173
1102
|
this.controller.selectAgent(id)
|
|
1174
1103
|
this.syncUrlAgentParam(id)
|
|
1175
1104
|
if (isEdit) {
|
|
@@ -1268,7 +1197,7 @@
|
|
|
1268
1197
|
const subtitle = document.getElementById('officeSubtitle')
|
|
1269
1198
|
if (subtitle) {
|
|
1270
1199
|
subtitle.textContent =
|
|
1271
|
-
String(agents.length) + ' 个 Agent'
|
|
1200
|
+
String(agents.length) + ' 个 Agent · 点击列表项管理'
|
|
1272
1201
|
}
|
|
1273
1202
|
list.render(agents, controller.selectedId)
|
|
1274
1203
|
},
|