@runfusion/fusion 0.16.0 → 0.17.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/README.md +3 -19
  2. package/dist/bin.js +3368 -1162
  3. package/dist/client/assets/{AgentDetailView-KQz9dg0n.js → AgentDetailView-BmxnuM0D.js} +3 -3
  4. package/dist/client/assets/AgentDetailView-yu8Xltqk.css +1 -0
  5. package/dist/client/assets/AgentsView-1xSqjJxs.js +517 -0
  6. package/dist/client/assets/AgentsView-Bs03ptrd.css +1 -0
  7. package/dist/client/assets/ChatView-CkWkEwXL.js +1 -0
  8. package/dist/client/assets/DevServerView-DIrmWI5T.js +1 -0
  9. package/dist/client/assets/{DirectoryPicker-CFj7FOgn.js → DirectoryPicker-Sqwdifcb.js} +1 -1
  10. package/dist/client/assets/DocumentsView-Cx_02o_z.js +1 -0
  11. package/dist/client/assets/InsightsView-DAJSq4gV.js +11 -0
  12. package/dist/client/assets/{MemoryView-DDbr1DaJ.js → MemoryView-CCIBAre3.js} +2 -2
  13. package/dist/client/assets/NodesView-D02HxGCl.js +14 -0
  14. package/dist/client/assets/{NodesView-BprfihLf.css → NodesView-DuAXX_0j.css} +1 -1
  15. package/dist/client/assets/{PiExtensionsManager-QgzWFBAT.js → PiExtensionsManager-DD0fTQNf.js} +3 -3
  16. package/dist/client/assets/{PluginManager-KHiz9oLY.js → PluginManager-Cfl0VBX9.js} +1 -1
  17. package/dist/client/assets/ResearchView-B9RqOVbr.js +1 -0
  18. package/dist/client/assets/ResearchView-BzCcDAS4.css +1 -0
  19. package/dist/client/assets/{RoadmapsView-BlbAZTdi.js → RoadmapsView-DsH7Hicx.js} +2 -2
  20. package/dist/client/assets/{SettingsModal-D5EUFR2z.js → SettingsModal-Cn_CIPXu.js} +1 -1
  21. package/dist/client/assets/{SettingsModal-D0QA2W5K.css → SettingsModal-Dq4a5KSX.css} +1 -1
  22. package/dist/client/assets/SettingsModal-YH_rM1ZT.js +31 -0
  23. package/dist/client/assets/{SetupWizardModal-tTXAm1Wb.js → SetupWizardModal-k5vqrHZU.js} +1 -1
  24. package/dist/client/assets/SkillsView-BIdt5cfB.js +1 -0
  25. package/dist/client/assets/{folder-open-DObdkm5J.js → folder-open-B3TO7t7Z.js} +1 -1
  26. package/dist/client/assets/index-BIJgrHEn.css +1 -0
  27. package/dist/client/assets/index-BlkXZ4C5.js +682 -0
  28. package/dist/client/assets/{star-BkGA2L-k.js → star-DW-M-BD_.js} +1 -1
  29. package/dist/client/assets/{upload-B0NF4J5P.js → upload-BzG6fknr.js} +1 -1
  30. package/dist/client/assets/{users-DgomiHTd.js → users-DEicv0kj.js} +1 -1
  31. package/dist/client/index.html +2 -2
  32. package/dist/client/version.json +1 -1
  33. package/dist/extension.js +2252 -718
  34. package/dist/pi-claude-cli/package.json +1 -1
  35. package/dist/pi-claude-cli/src/__tests__/process-manager.test.ts +11 -0
  36. package/dist/pi-claude-cli/src/__tests__/provider.test.ts +25 -0
  37. package/dist/plugins/fusion-plugin-dependency-graph/package.json +7 -5
  38. package/dist/plugins/fusion-plugin-dependency-graph/src/DependencyGraphView.css +31 -0
  39. package/dist/plugins/fusion-plugin-dependency-graph/src/DependencyGraphView.tsx +156 -48
  40. package/dist/plugins/fusion-plugin-dependency-graph/src/__tests__/DependencyGraphView.test.tsx +261 -0
  41. package/package.json +1 -1
  42. package/skill/fusion/SKILL.md +5 -5
  43. package/skill/fusion/references/engine-tools.md +2 -2
  44. package/skill/fusion/references/extension-tools.md +3 -3
  45. package/skill/fusion/references/fusion-capabilities.md +1 -1
  46. package/skill/fusion/references/skill-patterns.md +1 -1
  47. package/skill/fusion/workflows/dashboard-cli.md +3 -3
  48. package/skill/fusion/workflows/task-management.md +1 -1
  49. package/dist/client/assets/AgentDetailView-BoEpPOjM.css +0 -1
  50. package/dist/client/assets/AgentsView-8Xo-c04o.js +0 -517
  51. package/dist/client/assets/AgentsView-V5GhlBYu.css +0 -1
  52. package/dist/client/assets/ChatView-CjgOh8x7.js +0 -1
  53. package/dist/client/assets/DevServerView-BOPrzi-j.js +0 -1
  54. package/dist/client/assets/DocumentsView-CcJNmH06.js +0 -1
  55. package/dist/client/assets/InsightsView-B0DKRIYV.js +0 -11
  56. package/dist/client/assets/NodesView-BqtHfXsl.js +0 -14
  57. package/dist/client/assets/ResearchView-CVxPC1vz.css +0 -1
  58. package/dist/client/assets/ResearchView-s3SrjNBm.js +0 -1
  59. package/dist/client/assets/SettingsModal-c9MG4sxl.js +0 -31
  60. package/dist/client/assets/SkillsView-CS4ONN3D.js +0 -1
  61. package/dist/client/assets/index-BRaIPmpp.js +0 -682
  62. package/dist/client/assets/index-DeED_ky2.css +0 -1
@@ -1 +0,0 @@
1
- import{r as i,j as e}from"./vendor-react-K0fH_qHe.js";import{b0 as X,bs as _,bt as q,bu as B,b6 as G,X as P,R as H,ae as J,O as Y,L as Z,am as I}from"./index-BRaIPmpp.js";import"./vendor-xterm-DzcZoU0P.js";function ie({projectId:c,addToast:o,onClose:Q}){const[d,v]=i.useState([]),[f,y]=i.useState(!0),[A,E]=i.useState(!1),[L,p]=i.useState(null),[D,K]=i.useState([]),[m,V]=i.useState(""),[h,g]=i.useState(null),[k,x]=i.useState(null),[W,R]=i.useState(!1),[z,b]=i.useState(null),r=i.useRef(null),[N,M]=i.useState(""),F=m.trim()?d.filter(s=>s.name.toLowerCase().includes(m.toLowerCase())||s.relativePath.toLowerCase().includes(m.toLowerCase())):d,C=i.useCallback(async()=>{y(!0);try{const s=await X(c);v(s)}catch(s){const a=s instanceof Error?s.message:"Failed to load discovered skills";o(a,"error")}finally{y(!1)}},[c,o]),u=i.useCallback(async s=>{const a=l=>{if(!l||typeof l!="object")return!1;const t=l;if(typeof t.status=="number"&&t.status>=500)return!0;if(t.details&&typeof t.details=="object"){const w=t.details;if(typeof w.code=="string"&&w.code.startsWith("upstream_"))return!0}const n=l;return typeof n.error=="string"&&typeof n.code=="string"};E(!0),p(null);try{const l=await _(s,20,c);K(l.entries)}catch(l){if(a(l))p("Catalog is temporarily unavailable. Please try again later.");else{const t=l instanceof Error?l.message:"Failed to load catalog";p(t)}}finally{E(!1)}},[c]);i.useEffect(()=>{C(),u("")},[C,u]);const O=i.useCallback(s=>{V(s),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>{M(s),r.current=null},300)},[]);i.useEffect(()=>()=>{r.current&&(clearTimeout(r.current),r.current=null)},[]),i.useEffect(()=>{u(N)},[N,u]);const T=i.useCallback(async(s,a)=>{const l=!a;v(t=>t.map(n=>n.id===s?{...n,toggling:!0}:n));try{await q(s,l,c),v(t=>t.map(n=>n.id===s?{...n,enabled:l,toggling:!1}:n)),o(`Skill ${l?"enabled":"disabled"}`,"success")}catch(t){v(w=>w.map(S=>S.id===s?{...S,toggling:!1}:S));const n=t instanceof Error?t.message:"Failed to toggle skill";o(`Failed to toggle skill: ${n}`,"error")}},[c,o]),j=i.useCallback(async s=>{R(!0),b(null),x(null);try{const a=await B(s,c);x(a)}catch(a){const l=a instanceof Error?a.message:"Failed to load skill content";b(l)}finally{R(!1)}},[c]),$=i.useCallback((s,a)=>{if(!(a&&a.target.closest(".skills-view-item-toggle"))){if(h===s){g(null),x(null),b(null);return}g(s),j(s)}},[h,j]),U=i.useCallback(s=>{h!==s&&g(s),j(s)},[j,h]);return e.jsxs("div",{className:"skills-view","data-testid":"skills-view",children:[e.jsxs("div",{className:"skills-view-header",children:[e.jsxs("div",{className:"skills-view-title",children:[e.jsxs("h2",{children:[e.jsx(G,{size:20}),"Skills"]}),e.jsxs("span",{className:"skills-view-count","aria-label":`${d.length} discovered skills`,children:[d.length," discovered"]})]}),e.jsxs("div",{className:"skills-view-actions",children:[e.jsx("button",{className:"btn-icon skills-view-close touch-target",onClick:Q,"aria-label":"Close skills view",children:e.jsx(P,{size:16})}),e.jsxs("button",{className:"btn btn-sm touch-target",onClick:()=>void C(),disabled:f,children:[e.jsx(H,{size:14,className:f?"spin":""}),"Refresh"]})]})]}),e.jsxs("div",{className:"skills-view-content",children:[e.jsx("div",{className:"skills-view-search",children:e.jsx("input",{type:"text",className:"form-input",placeholder:"Search skills...",value:m,onChange:s=>O(s.target.value),"aria-label":"Search skills"})}),e.jsxs("section",{className:"skills-view-section","aria-labelledby":"discovered-skills-title",children:[e.jsx("h3",{id:"discovered-skills-title",className:"skills-view-section-title",children:"Discovered Skills"}),f?e.jsxs("div",{className:"skills-view-loading",children:[e.jsx("span",{className:"spinner"}),"Loading discovered skills..."]}):d.length===0?e.jsx("div",{className:"skills-view-empty",children:e.jsx("p",{children:"No skills discovered in this project."})}):F.length===0?e.jsx("div",{className:"skills-view-empty",children:e.jsx("p",{children:"No discovered skills match your search."})}):e.jsx("div",{className:"skills-view-list",children:F.map(s=>{const a=h===s.id;return e.jsxs("div",{children:[e.jsxs("div",{className:`skills-view-item${a?" skills-view-item--selected":""}`,onClick:l=>$(s.id,l),role:"button",tabIndex:0,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),$(s.id))},"aria-expanded":a,"aria-label":`View details for ${s.name}`,children:[e.jsxs("div",{className:"skills-view-item-info",children:[e.jsxs("span",{className:"skills-view-item-name",children:[a?e.jsx(J,{size:14}):e.jsx(Y,{size:14}),s.name]}),e.jsx("span",{className:"skills-view-item-path",children:s.relativePath}),e.jsx("span",{className:"skills-view-item-source",children:s.metadata.source})]}),e.jsxs("label",{className:"skills-view-item-toggle",onClick:l=>l.stopPropagation(),children:[e.jsx("input",{type:"checkbox",checked:s.enabled,disabled:s.toggling,onChange:()=>void T(s.id,s.enabled),"aria-label":`${s.enabled?"Disable":"Enable"} ${s.name}`}),e.jsx("span",{className:"skills-view-toggle-slider"})]})]}),a&&e.jsxs("div",{className:"skills-view-detail","data-testid":"skill-detail",children:[e.jsxs("div",{className:"skills-view-detail-header",children:[e.jsx("span",{className:"skills-view-detail-title",children:s.name}),e.jsxs("button",{className:"btn btn-sm skills-view-detail-close",onClick:()=>{g(null),x(null),b(null)},"aria-label":"Close skill detail",children:[e.jsx(P,{size:14}),"Close"]})]}),W?e.jsxs("div",{className:"skills-view-detail-loading",children:[e.jsx(Z,{size:16,className:"spin"}),"Loading skill content..."]}):z?e.jsxs("div",{className:"skills-view-detail-error",children:[e.jsx(I,{size:14}),e.jsx("span",{children:z}),e.jsx("button",{className:"btn btn-sm",onClick:()=>U(s.id),children:"Retry"})]}):k?e.jsxs(e.Fragment,{children:[e.jsx("pre",{className:"skills-view-detail-content",children:k.skillMd||"(No SKILL.md found)"}),k.files.length>0&&e.jsxs("div",{className:"skills-view-detail-files",children:[e.jsx("span",{className:"skills-view-detail-files-label",children:"Files:"}),k.files.map(l=>e.jsxs("span",{className:"badge badge--sm",children:[l.name,l.type==="directory"&&"/"]},l.relativePath))]})]}):null]})]},s.id)})})]}),e.jsxs("section",{className:"skills-view-section","aria-labelledby":"catalog-title",children:[e.jsx("h3",{id:"catalog-title",className:"skills-view-section-title",children:"Skills Catalog"}),L?e.jsxs("div",{className:"skills-view-error",children:[e.jsx("p",{children:L}),e.jsx("button",{className:"btn btn-sm",onClick:()=>void u(N),children:"Try Again"})]}):A?e.jsxs("div",{className:"skills-view-loading",children:[e.jsx("span",{className:"spinner"}),"Loading catalog..."]}):D.length===0?e.jsx("div",{className:"skills-view-empty",children:m?e.jsx("p",{children:"No skills match your search."}):e.jsx("p",{children:"No skills available in the catalog."})}):e.jsx("div",{className:"skills-view-grid",children:D.map(s=>e.jsxs("div",{className:"skills-view-card",children:[e.jsx("h4",{className:"skills-view-card-title",children:s.name}),s.description&&e.jsx("p",{className:"skills-view-card-description",children:s.description}),s.tags&&s.tags.length>0&&e.jsx("div",{className:"skills-view-card-tags",children:s.tags.map(a=>e.jsx("span",{className:"badge badge--sm",children:a},a))}),s.installs!==void 0&&e.jsxs("span",{className:"skills-view-card-installs",children:[s.installs.toLocaleString()," installs"]})]},s.id))})]})]})]})}export{ie as SkillsView};