@ngocsangairvds/vsaf 6.0.0 → 6.1.0

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 (42) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/packages/cli/dist/commands/run.d.ts +3 -0
  4. package/packages/cli/dist/commands/run.d.ts.map +1 -1
  5. package/packages/cli/dist/commands/run.js +10 -0
  6. package/packages/cli/dist/commands/run.js.map +1 -1
  7. package/packages/cli/dist/server/routes/runs.d.ts +2 -0
  8. package/packages/cli/dist/server/routes/runs.d.ts.map +1 -1
  9. package/packages/cli/dist/server/routes/runs.js +2 -0
  10. package/packages/cli/dist/server/routes/runs.js.map +1 -1
  11. package/packages/cli/dist/server/services/execution-manager.d.ts.map +1 -1
  12. package/packages/cli/dist/server/services/execution-manager.js +5 -0
  13. package/packages/cli/dist/server/services/execution-manager.js.map +1 -1
  14. package/packages/core/dist/config/ai-config.d.ts +3 -0
  15. package/packages/core/dist/config/ai-config.d.ts.map +1 -1
  16. package/packages/core/dist/config/ai-config.js +9 -0
  17. package/packages/core/dist/config/ai-config.js.map +1 -1
  18. package/packages/core/dist/index.d.ts +1 -1
  19. package/packages/core/dist/index.d.ts.map +1 -1
  20. package/packages/core/dist/index.js +3 -2
  21. package/packages/core/dist/index.js.map +1 -1
  22. package/packages/core/dist/runtime/executor.d.ts.map +1 -1
  23. package/packages/core/dist/runtime/executor.js +1 -0
  24. package/packages/core/dist/runtime/executor.js.map +1 -1
  25. package/packages/web/dist/web/browser/{chunk-FE2VGLSN.js → chunk-7L4OEPXU.js} +1 -1
  26. package/packages/web/dist/web/browser/{chunk-FBCNCNPM.js → chunk-BDLVJ3JS.js} +1 -1
  27. package/packages/web/dist/web/browser/{chunk-MCW5ACIZ.js → chunk-CQQRQYJU.js} +1 -1
  28. package/packages/web/dist/web/browser/{chunk-6H3AYIT3.js → chunk-E3BSTPAZ.js} +1 -1
  29. package/packages/web/dist/web/browser/{chunk-L7B3BT5E.js → chunk-IBUECISR.js} +1 -1
  30. package/packages/web/dist/web/browser/{chunk-7ELOO4IC.js → chunk-OYL4KDHJ.js} +1 -1
  31. package/packages/web/dist/web/browser/{chunk-GR7SKUVU.js → chunk-Q6S2YOXT.js} +1 -1
  32. package/packages/web/dist/web/browser/chunk-RM7DW5FD.js +5 -0
  33. package/packages/web/dist/web/browser/chunk-SM2S63GA.js +1 -0
  34. package/packages/web/dist/web/browser/{chunk-N3FOQ3O5.js → chunk-ZZWA24BS.js} +1 -1
  35. package/packages/web/dist/web/browser/index.html +2 -2
  36. package/packages/web/dist/web/browser/{main-3UCJ3N4F.js → main-MOJ6YEDN.js} +1 -1
  37. package/packages/web/dist/web/browser/styles-KOJ4NEWT.css +1 -0
  38. package/skills/sdlc/{sdlc-health → health}/SKILL.md +1 -1
  39. package/skills/sdlc/pack.yaml +1 -1
  40. package/packages/web/dist/web/browser/chunk-4R37VVI4.js +0 -5
  41. package/packages/web/dist/web/browser/chunk-UDCOYDXU.js +0 -1
  42. package/packages/web/dist/web/browser/styles-5MTP4CCO.css +0 -1
@@ -1 +1 @@
1
- import{a as S,c as P,e as M,f as O,g as A}from"./chunk-N3FOQ3O5.js";import{Ba as f,Bb as w,La as x,Ma as u,O as d,Oa as C,Pa as v,Qa as s,Ra as n,Sa as o,T as m,Ta as h,U as g,Vb as j,Wb as L,Xa as b,Ya as k,Za as c,ib as i,jb as _,qa as a,qb as y}from"./chunk-4R37VVI4.js";var E=[{path:"",loadComponent:()=>import("./chunk-MCW5ACIZ.js").then(e=>e.DashboardComponent)},{path:"workflows",loadComponent:()=>import("./chunk-GR7SKUVU.js").then(e=>e.WorkflowsComponent)},{path:"workflows/builder",loadComponent:()=>import("./chunk-FBCNCNPM.js").then(e=>e.WorkflowBuilderComponent)},{path:"workflows/detail",loadComponent:()=>import("./chunk-6H3AYIT3.js").then(e=>e.WorkflowDetailComponent)},{path:"conversations",loadComponent:()=>import("./chunk-FE2VGLSN.js").then(e=>e.ConversationsComponent)},{path:"conversations/:conversationId",loadComponent:()=>import("./chunk-FE2VGLSN.js").then(e=>e.ConversationsComponent)},{path:"runs/:runId",loadComponent:()=>import("./chunk-UDCOYDXU.js").then(e=>e.RunExecutionComponent)},{path:"settings",loadComponent:()=>import("./chunk-L7B3BT5E.js").then(e=>e.SettingsComponent)}];var I={providers:[w({eventCoalescing:!0}),A(E),j()]};var R=()=>({exact:!0}),T=(e,r)=>r.id;function V(e,r){if(e&1&&(n(0,"option",14),i(1),o()),e&2){let t=r.$implicit,p=c(2);s("value",t.id)("selected",t.id===p.selectedId()),a(),_(t.name)}}function F(e,r){if(e&1){let t=b();n(0,"select",13),k("change",function(z){m(t);let D=c();return g(D.onProjectChange(z))}),C(1,V,2,3,"option",14,T),o()}if(e&2){let t=c();a(),v(t.projects())}}var l=class e{projectService=d(L);projects=this.projectService.projects;selectedId=this.projectService.selectedId;constructor(){this.projectService.load()}onProjectChange(r){let t=r.target.value;!t||t===this.selectedId()||(this.projectService.select(t),document.location.reload())}static \u0275fac=function(t){return new(t||e)};static \u0275cmp=f({type:e,selectors:[["app-root"]],decls:21,vars:3,consts:[[1,"app-shell"],[1,"app-nav"],["routerLink","/",1,"brand-link"],[1,"brand-icon"],[1,"brand-name"],["routerLink","/","routerLinkActive","border-primary text-primary",1,"nav-link",3,"routerLinkActiveOptions"],["routerLink","/workflows","routerLinkActive","border-primary text-primary",1,"nav-link"],["routerLink","/conversations","routerLinkActive","border-primary text-primary",1,"nav-link"],["routerLink","/settings","routerLinkActive","border-primary text-primary",1,"nav-link"],[1,"nav-spacer"],["aria-label","Project","title","Switch project",1,"project-select"],[1,"version-pill"],[1,"app-main"],["aria-label","Project","title","Switch project",1,"project-select",3,"change"],[3,"value","selected"]],template:function(t,p){t&1&&(n(0,"div",0)(1,"nav",1)(2,"a",2)(3,"span",3),i(4,"V"),o(),n(5,"span",4),i(6,"VSAF"),o()(),n(7,"a",5),i(8," Dashboard "),o(),n(9,"a",6),i(10," Workflows "),o(),n(11,"a",7),i(12," Conversations "),o(),n(13,"a",8),i(14," Settings "),o(),n(15,"div",9),x(16,F,3,0,"select",10),n(17,"span",11),i(18,"v0.2.0"),o()()(),n(19,"main",12),h(20,"router-outlet"),o()()),t&2&&(a(7),s("routerLinkActiveOptions",y(2,R)),a(9),u(p.projects().length>1?16:-1))},dependencies:[P,M,O],styles:["[_nghost-%COMP%]{display:block;min-height:100vh;background:#101114;color:#e7e7ea}.app-shell[_ngcontent-%COMP%]{min-height:100vh;background:#101114;color:#e7e7ea}.app-nav[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;height:56px;border-bottom:1px solid #2b2d33;background:#17181d;padding:0 16px;box-sizing:border-box}.brand-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:9px;margin-right:18px;color:#f4f4f5;text-decoration:none}.brand-link[_ngcontent-%COMP%]:hover{opacity:.82}.brand-icon[_ngcontent-%COMP%]{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#6366f1;color:#fff;font-size:14px;font-weight:800}.brand-name[_ngcontent-%COMP%]{font-size:14px;font-weight:800}.nav-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;height:56px;border-bottom:2px solid transparent;padding:0 13px;color:#a1a1aa;font-size:14px;font-weight:650;text-decoration:none;box-sizing:border-box}.nav-link[_ngcontent-%COMP%]:hover{color:#f4f4f5}.nav-link.border-primary[_ngcontent-%COMP%], .nav-link.text-primary[_ngcontent-%COMP%]{border-bottom-color:#6366f1;color:#a5b4fc}.nav-spacer[_ngcontent-%COMP%]{margin-left:auto;display:flex;align-items:center;gap:12px}.project-select[_ngcontent-%COMP%]{border:1px solid #2b2d33;border-radius:7px;background:#20222a;color:#e7e7ea;padding:5px 8px;font:inherit;font-size:12px;max-width:220px;cursor:pointer}.project-select[_ngcontent-%COMP%]:focus{outline:none;border-color:#6366f1}.version-pill[_ngcontent-%COMP%]{border:1px solid #2b2d33;border-radius:7px;background:#20222a;color:#a1a1aa;padding:5px 8px;font-size:12px}.app-main[_ngcontent-%COMP%]{min-height:calc(100vh - 56px);overflow:auto;background:#101114}"]})};S(l,I).catch(e=>console.error(e));
1
+ import{a as S,c as P,e as M,f as O,g as A}from"./chunk-ZZWA24BS.js";import{Ba as f,Cb as w,La as x,Ma as u,O as d,Oa as C,Pa as v,Qa as s,Ra as n,Sa as o,T as m,Ta as h,U as g,Wb as j,Xa as b,Xb as L,Ya as k,Za as c,ib as i,jb as _,qa as a,rb as y}from"./chunk-RM7DW5FD.js";var E=[{path:"",loadComponent:()=>import("./chunk-CQQRQYJU.js").then(e=>e.DashboardComponent)},{path:"workflows",loadComponent:()=>import("./chunk-Q6S2YOXT.js").then(e=>e.WorkflowsComponent)},{path:"workflows/builder",loadComponent:()=>import("./chunk-BDLVJ3JS.js").then(e=>e.WorkflowBuilderComponent)},{path:"workflows/detail",loadComponent:()=>import("./chunk-E3BSTPAZ.js").then(e=>e.WorkflowDetailComponent)},{path:"conversations",loadComponent:()=>import("./chunk-7L4OEPXU.js").then(e=>e.ConversationsComponent)},{path:"conversations/:conversationId",loadComponent:()=>import("./chunk-7L4OEPXU.js").then(e=>e.ConversationsComponent)},{path:"runs/:runId",loadComponent:()=>import("./chunk-SM2S63GA.js").then(e=>e.RunExecutionComponent)},{path:"settings",loadComponent:()=>import("./chunk-IBUECISR.js").then(e=>e.SettingsComponent)}];var I={providers:[w({eventCoalescing:!0}),A(E),j()]};var R=()=>({exact:!0}),T=(e,r)=>r.id;function V(e,r){if(e&1&&(n(0,"option",14),i(1),o()),e&2){let t=r.$implicit,p=c(2);s("value",t.id)("selected",t.id===p.selectedId()),a(),_(t.name)}}function F(e,r){if(e&1){let t=b();n(0,"select",13),k("change",function(z){m(t);let D=c();return g(D.onProjectChange(z))}),C(1,V,2,3,"option",14,T),o()}if(e&2){let t=c();a(),v(t.projects())}}var l=class e{projectService=d(L);projects=this.projectService.projects;selectedId=this.projectService.selectedId;constructor(){this.projectService.load()}onProjectChange(r){let t=r.target.value;!t||t===this.selectedId()||(this.projectService.select(t),document.location.reload())}static \u0275fac=function(t){return new(t||e)};static \u0275cmp=f({type:e,selectors:[["app-root"]],decls:21,vars:3,consts:[[1,"app-shell"],[1,"app-nav"],["routerLink","/",1,"brand-link"],[1,"brand-icon"],[1,"brand-name"],["routerLink","/","routerLinkActive","border-primary text-primary",1,"nav-link",3,"routerLinkActiveOptions"],["routerLink","/workflows","routerLinkActive","border-primary text-primary",1,"nav-link"],["routerLink","/conversations","routerLinkActive","border-primary text-primary",1,"nav-link"],["routerLink","/settings","routerLinkActive","border-primary text-primary",1,"nav-link"],[1,"nav-spacer"],["aria-label","Project","title","Switch project",1,"project-select"],[1,"version-pill"],[1,"app-main"],["aria-label","Project","title","Switch project",1,"project-select",3,"change"],[3,"value","selected"]],template:function(t,p){t&1&&(n(0,"div",0)(1,"nav",1)(2,"a",2)(3,"span",3),i(4,"V"),o(),n(5,"span",4),i(6,"VSAF"),o()(),n(7,"a",5),i(8," Dashboard "),o(),n(9,"a",6),i(10," Workflows "),o(),n(11,"a",7),i(12," Conversations "),o(),n(13,"a",8),i(14," Settings "),o(),n(15,"div",9),x(16,F,3,0,"select",10),n(17,"span",11),i(18,"v0.2.0"),o()()(),n(19,"main",12),h(20,"router-outlet"),o()()),t&2&&(a(7),s("routerLinkActiveOptions",y(2,R)),a(9),u(p.projects().length>1?16:-1))},dependencies:[P,M,O],styles:["[_nghost-%COMP%]{display:block;min-height:100vh;background:#101114;color:#e7e7ea}.app-shell[_ngcontent-%COMP%]{min-height:100vh;background:#101114;color:#e7e7ea}.app-nav[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;height:56px;border-bottom:1px solid #2b2d33;background:#17181d;padding:0 16px;box-sizing:border-box}.brand-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:9px;margin-right:18px;color:#f4f4f5;text-decoration:none}.brand-link[_ngcontent-%COMP%]:hover{opacity:.82}.brand-icon[_ngcontent-%COMP%]{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#6366f1;color:#fff;font-size:14px;font-weight:800}.brand-name[_ngcontent-%COMP%]{font-size:14px;font-weight:800}.nav-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;height:56px;border-bottom:2px solid transparent;padding:0 13px;color:#a1a1aa;font-size:14px;font-weight:650;text-decoration:none;box-sizing:border-box}.nav-link[_ngcontent-%COMP%]:hover{color:#f4f4f5}.nav-link.border-primary[_ngcontent-%COMP%], .nav-link.text-primary[_ngcontent-%COMP%]{border-bottom-color:#6366f1;color:#a5b4fc}.nav-spacer[_ngcontent-%COMP%]{margin-left:auto;display:flex;align-items:center;gap:12px}.project-select[_ngcontent-%COMP%]{border:1px solid #2b2d33;border-radius:7px;background:#20222a;color:#e7e7ea;padding:5px 8px;font:inherit;font-size:12px;max-width:220px;cursor:pointer}.project-select[_ngcontent-%COMP%]:focus{outline:none;border-color:#6366f1}.version-pill[_ngcontent-%COMP%]{border:1px solid #2b2d33;border-radius:7px;background:#20222a;color:#a1a1aa;padding:5px 8px;font-size:12px}.app-main[_ngcontent-%COMP%]{min-height:calc(100vh - 56px);overflow:auto;background:#101114}"]})};S(l,I).catch(e=>console.error(e));
@@ -0,0 +1 @@
1
+ @layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--color-red-300: oklch(80.8% .114 19.571);--color-red-400: oklch(70.4% .191 22.216);--color-red-500: oklch(63.7% .237 25.331);--color-amber-400: oklch(82.8% .189 84.429);--color-amber-500: oklch(76.9% .188 70.08);--color-green-400: oklch(79.2% .209 151.711);--color-green-500: oklch(72.3% .219 149.579);--color-blue-400: oklch(70.7% .165 254.624);--color-blue-500: oklch(62.3% .214 259.815);--color-blue-600: oklch(54.6% .245 262.881);--color-indigo-100: oklch(93% .034 272.788);--color-indigo-300: oklch(78.5% .115 274.713);--color-indigo-400: oklch(67.3% .182 276.935);--color-indigo-500: oklch(58.5% .233 277.117);--color-slate-100: oklch(96.8% .007 247.896);--color-slate-200: oklch(92.9% .013 255.508);--color-slate-300: oklch(86.9% .022 252.894);--color-slate-400: oklch(70.4% .04 256.788);--color-slate-500: oklch(55.4% .046 257.417);--color-slate-600: oklch(44.6% .043 257.281);--color-slate-700: oklch(37.2% .044 257.287);--color-slate-800: oklch(27.9% .041 260.031);--color-slate-900: oklch(20.8% .042 265.755);--color-slate-950: oklch(12.9% .042 264.695);--color-black: #000;--color-white: #fff;--spacing: .25rem;--container-md: 28rem;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--text-lg: 1.125rem;--text-lg--line-height: calc(1.75 / 1.125);--font-weight-medium: 500;--font-weight-semibold: 600;--tracking-wide: .025em;--radius-lg: .5rem;--radius-xl: .75rem;--ease-in-out: cubic-bezier(.4, 0, .2, 1);--animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-font-family: Inter, ui-sans-serif, system-ui, sans-serif;--default-mono-font-family: "JetBrains Mono", ui-monospace, monospace}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.top-2{top:calc(var(--spacing) * 2)}.bottom-2{bottom:calc(var(--spacing) * 2)}.left-2{left:calc(var(--spacing) * 2)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.m-3{margin:calc(var(--spacing) * 3)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.h-\[calc\(100vh-6rem\)\]{height:calc(100vh - 6rem)}.h-full{height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.w-10{width:calc(var(--spacing) * 10)}.w-auto{width:auto}.w-full{width:100%}.max-w-\[78\%\]{max-width:78%}.max-w-\[90\%\]{max-width:90%}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-\[1\.6\]{flex:1.6}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-primary{border-color:var(--primary)}.border-red-500\/30{border-color:color-mix(in srgb,oklch(63.7% .237 25.331) 30%,transparent)}@supports (color: color-mix(in lab,red,red)){.border-red-500\/30{border-color:color-mix(in oklab,var(--color-red-500) 30%,transparent)}}.border-red-500\/50{border-color:color-mix(in srgb,oklch(63.7% .237 25.331) 50%,transparent)}@supports (color: color-mix(in lab,red,red)){.border-red-500\/50{border-color:color-mix(in oklab,var(--color-red-500) 50%,transparent)}}.border-slate-600{border-color:var(--color-slate-600)}.border-slate-700{border-color:var(--color-slate-700)}.border-slate-800{border-color:var(--color-slate-800)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-black\/40{background-color:color-mix(in srgb,#000 40%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-black\/60{background-color:color-mix(in srgb,#000 60%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-blue-500\/10{background-color:color-mix(in srgb,oklch(62.3% .214 259.815) 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500) 10%,transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-green-500\/10{background-color:color-mix(in srgb,oklch(72.3% .219 149.579) 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-green-500\/10{background-color:color-mix(in oklab,var(--color-green-500) 10%,transparent)}}.bg-indigo-500\/15{background-color:color-mix(in srgb,oklch(58.5% .233 277.117) 15%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-indigo-500\/15{background-color:color-mix(in oklab,var(--color-indigo-500) 15%,transparent)}}.bg-red-500\/10{background-color:color-mix(in srgb,oklch(63.7% .237 25.331) 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-slate-700{background-color:var(--color-slate-700)}.bg-slate-800{background-color:var(--color-slate-800)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-slate-900\/40{background-color:color-mix(in srgb,oklch(20.8% .042 265.755) 40%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-slate-900\/40{background-color:color-mix(in oklab,var(--color-slate-900) 40%,transparent)}}.bg-slate-950{background-color:var(--color-slate-950)}.bg-slate-950\/40{background-color:color-mix(in srgb,oklch(12.9% .042 264.695) 40%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-slate-950\/40{background-color:color-mix(in oklab,var(--color-slate-950) 40%,transparent)}}.bg-slate-950\/50{background-color:color-mix(in srgb,oklch(12.9% .042 264.695) 50%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-slate-950\/50{background-color:color-mix(in oklab,var(--color-slate-950) 50%,transparent)}}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.text-center{text-align:center}.font-mono{font-family:JetBrains Mono,ui-monospace,monospace}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading, var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.font-medium{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight: var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking: var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-words{overflow-wrap:break-word}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-400{color:var(--color-amber-400)}.text-blue-400{color:var(--color-blue-400)}.text-green-400{color:var(--color-green-400)}.text-indigo-100{color:var(--color-indigo-100)}.text-indigo-400{color:var(--color-indigo-400)}.text-primary{color:var(--primary)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-slate-100{color:var(--color-slate-100)}.text-slate-200{color:var(--color-slate-200)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-950{color:var(--color-slate-950)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.shadow-2xl{--tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / .25));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.ease-in-out{--tw-ease: var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.hover\:bg-amber-400:hover{background-color:var(--color-amber-400)}}@media(hover:hover){.hover\:bg-blue-500:hover{background-color:var(--color-blue-500)}}@media(hover:hover){.hover\:bg-red-500\/10:hover{background-color:color-mix(in srgb,oklch(63.7% .237 25.331) 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.hover\:bg-red-500\/10:hover{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}}@media(hover:hover){.hover\:text-indigo-300:hover{color:var(--color-indigo-300)}}@media(hover:hover){.hover\:text-slate-100:hover{color:var(--color-slate-100)}}@media(hover:hover){.hover\:text-slate-200:hover{color:var(--color-slate-200)}}@media(hover:hover){.hover\:text-slate-300:hover{color:var(--color-slate-300)}}.focus\:border-amber-500:focus{border-color:var(--color-amber-500)}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:outline-none:focus{--tw-outline-style: none;outline-style:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:40%}}:root{--background: oklch(.14 .005 260);--surface: oklch(.18 .008 260);--surface-elevated: oklch(.22 .01 260);--border: oklch(.28 .01 260);--border-bright: oklch(.35 .015 260);--text-primary: oklch(.93 .005 260);--text-secondary: oklch(.65 .01 260);--text-tertiary: oklch(.45 .01 260);--primary: oklch(.65 .18 250);--primary-foreground: oklch(.98 .005 260);--success: oklch(.65 .17 155);--warning: oklch(.75 .15 75);--error: oklch(.6 .2 25)}html,body{min-height:100%;background:var(--background);color:var(--text-primary);font-family:Inter,ui-sans-serif,system-ui,sans-serif}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-bright)}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-space-y-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-font-weight{syntax: "*"; inherits: false;}@property --tw-tracking{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-outline-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@property --tw-ease{syntax: "*"; inherits: false;}@keyframes pulse{50%{opacity:.5}}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-space-y-reverse: 0;--tw-border-style: solid;--tw-font-weight: initial;--tw-tracking: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-outline-style: solid;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial;--tw-ease: initial}}}
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: sdlc-sdlc-health
2
+ name: sdlc-health
3
3
  description: SDLC health check — verify all skills, plugins, MCP tools, deps, and binaries are installed and working
4
4
  version: 1.1.0
5
5
  author: "@ngocsangairvds/vsaf"
@@ -99,7 +99,7 @@ skills:
99
99
  - ship/report
100
100
 
101
101
  # Diagnostics
102
- - sdlc-health
102
+ - health
103
103
 
104
104
  # Bundled external skills — deployed WITHOUT pack prefix (as-is)
105
105
  bundled: