feat: add CLI Command Node and Prompt Node components for orchestrator

- Implemented CliCommandNode component for executing CLI tools with AI models.
- Implemented PromptNode component for constructing AI prompts with context.
- Added styling for mode and tool badges in both components.
- Enhanced user experience with command and argument previews, execution status, and error handling.

test: add comprehensive tests for ask_question tool

- Created direct test for ask_question tool execution.
- Developed end-to-end tests to validate ask_question tool integration with WebSocket and A2UI surfaces.
- Implemented simple and integrated WebSocket tests to ensure proper message handling and surface reception.
- Added tool registration test to verify ask_question tool is correctly registered.

chore: add WebSocket listener and simulation tests

- Added WebSocket listener for A2UI surfaces to facilitate testing.
- Implemented frontend simulation test to validate complete flow from backend to frontend.
- Created various test scripts to ensure robust testing of ask_question tool functionality.
This commit is contained in:
catlog22
2026-02-03 23:10:36 +08:00
parent a806d70d9b
commit c6093ef741
134 changed files with 6392 additions and 634 deletions

View File

@@ -0,0 +1 @@
(()=>{"use strict";var e,a,c,r,t,f={},o={};function d(e){var a=o[e];if(void 0!==a)return a.exports;var c=o[e]={exports:{}};return f[e].call(c.exports,c,c.exports,d),c.exports}d.m=f,e=[],d.O=(a,c,r,t)=>{if(!c){var f=1/0;for(i=0;i<e.length;i++){for(var[c,r,t]=e[i],o=!0,b=0;b<c.length;b++)(!1&t||f>=t)&&Object.keys(d.O).every(e=>d.O[e](c[b]))?c.splice(b--,1):(o=!1,t<f&&(f=t));if(o){e.splice(i--,1);var n=r();void 0!==n&&(a=n)}}return a}t=t||0;for(var i=e.length;i>0&&e[i-1][2]>t;i--)e[i]=e[i-1];e[i]=[c,r,t]},d.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return d.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,d.t=function(e,r){if(1&r&&(e=this(e)),8&r)return e;if("object"==typeof e&&e){if(4&r&&e.__esModule)return e;if(16&r&&"function"==typeof e.then)return e}var t=Object.create(null);d.r(t);var f={};a=a||[null,c({}),c([]),c(c)];for(var o=2&r&&e;("object"==typeof o||"function"==typeof o)&&!~a.indexOf(o);o=c(o))Object.getOwnPropertyNames(o).forEach(a=>f[a]=()=>e[a]);return f.default=()=>e,d.d(t,f),t},d.d=(e,a)=>{for(var c in a)d.o(a,c)&&!d.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},d.f={},d.e=e=>Promise.all(Object.keys(d.f).reduce((a,c)=>(d.f[c](e,a),a),[])),d.u=e=>"assets/js/"+({11:"ea313555",17:"ccef5d0f",47:"157db180",48:"a94703ab",57:"19b64556",98:"a7bd4aaa",121:"5c7b2278",142:"0566a0a8",148:"4cc74730",235:"18891827",241:"d045285b",268:"60eef997",288:"666bb1bf",368:"186dcf4e",401:"17896441",407:"611877e1",411:"d550a629",412:"1bac9067",448:"f9222419",482:"c5a82d8d",511:"bdb2b105",647:"5e95c892",725:"bcf6b37c",742:"aba21aa0",777:"fabaf1c8",814:"97c6e66a",816:"a2065270",849:"4ad7db0f",856:"2ecf8b4a",896:"f4817052",927:"04db0a2e",934:"7a1ee27c",954:"f1bf82ec",971:"fe8e3dcf",973:"9f4ca91e",975:"1e3006f3",991:"a6c3df16"}[e]||e)+"."+{11:"5ab441e2",17:"265182f6",47:"600b1451",48:"7b43e8e3",57:"6a97ef6e",98:"e4fb75f9",121:"20942c2c",142:"9fc6236d",148:"d5719b6e",235:"f868bfb7",241:"7af76fbc",268:"c3e43e3b",288:"3f6acfd8",368:"9cc2830f",401:"d1575d23",407:"94144df0",411:"236e0027",412:"44948c57",448:"9eaf88b7",482:"a992435d",511:"836bfb71",647:"9f686774",723:"50d99bed",725:"b5f365c1",742:"dc3eeab8",777:"4dc921e5",814:"c0137c74",816:"5d0fec0e",849:"fdce606b",856:"b5d4721e",896:"e0e6bfe1",927:"0694cac9",934:"7f87648d",954:"1157ef45",971:"548de575",973:"8efe3ed3",975:"9dddfb7c",991:"7cfa0c0a"}[e]+".js",d.miniCssF=e=>{},d.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),r={},t="ccw-docs:",d.l=(e,a,c,f)=>{if(r[e])r[e].push(a);else{var o,b;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var l=n[i];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")==t+c){o=l;break}}o||(b=!0,(o=document.createElement("script")).charset="utf-8",d.nc&&o.setAttribute("nonce",d.nc),o.setAttribute("data-webpack",t+c),o.src=e),r[e]=[a];var u=(a,c)=>{o.onerror=o.onload=null,clearTimeout(s);var t=r[e];if(delete r[e],o.parentNode&&o.parentNode.removeChild(o),t&&t.forEach(e=>e(c)),a)return a(c)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=u.bind(null,o.onerror),o.onload=u.bind(null,o.onload),b&&document.head.appendChild(o)}},d.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},d.p="/docs/",d.gca=function(e){return e={17896441:"401",18891827:"235",ea313555:"11",ccef5d0f:"17","157db180":"47",a94703ab:"48","19b64556":"57",a7bd4aaa:"98","5c7b2278":"121","0566a0a8":"142","4cc74730":"148",d045285b:"241","60eef997":"268","666bb1bf":"288","186dcf4e":"368","611877e1":"407",d550a629:"411","1bac9067":"412",f9222419:"448",c5a82d8d:"482",bdb2b105:"511","5e95c892":"647",bcf6b37c:"725",aba21aa0:"742",fabaf1c8:"777","97c6e66a":"814",a2065270:"816","4ad7db0f":"849","2ecf8b4a":"856",f4817052:"896","04db0a2e":"927","7a1ee27c":"934",f1bf82ec:"954",fe8e3dcf:"971","9f4ca91e":"973","1e3006f3":"975",a6c3df16:"991"}[e]||e,d.p+d.u(e)},(()=>{var e={354:0,869:0};d.f.j=(a,c)=>{var r=d.o(e,a)?e[a]:void 0;if(0!==r)if(r)c.push(r[2]);else if(/^(354|869)$/.test(a))e[a]=0;else{var t=new Promise((c,t)=>r=e[a]=[c,t]);c.push(r[2]=t);var f=d.p+d.u(a),o=new Error;d.l(f,c=>{if(d.o(e,a)&&(0!==(r=e[a])&&(e[a]=void 0),r)){var t=c&&("load"===c.type?"missing":c.type),f=c&&c.target&&c.target.src;o.message="Loading chunk "+a+" failed.\n("+t+": "+f+")",o.name="ChunkLoadError",o.type=t,o.request=f,r[1](o)}},"chunk-"+a,a)}},d.O.j=a=>0===e[a];var a=(a,c)=>{var r,t,[f,o,b]=c,n=0;if(f.some(a=>0!==e[a])){for(r in o)d.o(o,r)&&(d.m[r]=o[r]);if(b)var i=b(d)}for(a&&a(c);n<f.length;n++)t=f[n],d.o(e,t)&&e[t]&&e[t][0](),e[t]=0;return d.O(i)},c=globalThis.webpackChunkccw_docs=globalThis.webpackChunkccw_docs||[];c.forEach(a.bind(null,0)),c.push=a.bind(null,c.push.bind(c))})()})();