vskill 1.0.18 → 1.0.20
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/README.md +1 -1
- package/agents.json +1 -1
- package/dist/commands/auth.js +31 -1
- package/dist/commands/auth.js.map +1 -1
- package/dist/eval-server/active-root-store.d.ts +19 -0
- package/dist/eval-server/active-root-store.js +50 -0
- package/dist/eval-server/active-root-store.js.map +1 -0
- package/dist/eval-server/api-routes.d.ts +1 -1
- package/dist/eval-server/api-routes.js +43 -5
- package/dist/eval-server/api-routes.js.map +1 -1
- package/dist/eval-server/authoring-routes.d.ts +1 -1
- package/dist/eval-server/authoring-routes.js +9 -7
- package/dist/eval-server/authoring-routes.js.map +1 -1
- package/dist/eval-server/detect-engines-route.d.ts +1 -1
- package/dist/eval-server/detect-engines-route.js +3 -1
- package/dist/eval-server/detect-engines-route.js.map +1 -1
- package/dist/eval-server/eval-server.js +26 -24
- package/dist/eval-server/eval-server.js.map +1 -1
- package/dist/eval-server/git-routes.d.ts +6 -6
- package/dist/eval-server/git-routes.js +22 -11
- package/dist/eval-server/git-routes.js.map +1 -1
- package/dist/eval-server/improve-routes.d.ts +1 -1
- package/dist/eval-server/improve-routes.js +4 -1
- package/dist/eval-server/improve-routes.js.map +1 -1
- package/dist/eval-server/install-engine-routes.d.ts +1 -1
- package/dist/eval-server/install-engine-routes.js +1 -1
- package/dist/eval-server/install-engine-routes.js.map +1 -1
- package/dist/eval-server/install-skill-routes.d.ts +1 -1
- package/dist/eval-server/install-skill-routes.js +3 -1
- package/dist/eval-server/install-skill-routes.js.map +1 -1
- package/dist/eval-server/install-state-routes.d.ts +1 -1
- package/dist/eval-server/install-state-routes.js +3 -1
- package/dist/eval-server/install-state-routes.js.map +1 -1
- package/dist/eval-server/integration-routes.d.ts +1 -1
- package/dist/eval-server/integration-routes.js +6 -1
- package/dist/eval-server/integration-routes.js.map +1 -1
- package/dist/eval-server/model-compare-routes.d.ts +1 -1
- package/dist/eval-server/model-compare-routes.js +3 -1
- package/dist/eval-server/model-compare-routes.js.map +1 -1
- package/dist/eval-server/platform-proxy.d.ts +6 -1
- package/dist/eval-server/platform-proxy.js +60 -11
- package/dist/eval-server/platform-proxy.js.map +1 -1
- package/dist/eval-server/plugin-cli-routes.d.ts +1 -1
- package/dist/eval-server/plugin-cli-routes.js +10 -1
- package/dist/eval-server/plugin-cli-routes.js.map +1 -1
- package/dist/eval-server/remove-skill-routes.d.ts +1 -1
- package/dist/eval-server/remove-skill-routes.js +3 -1
- package/dist/eval-server/remove-skill-routes.js.map +1 -1
- package/dist/eval-server/skill-create-routes.d.ts +1 -1
- package/dist/eval-server/skill-create-routes.js +8 -1
- package/dist/eval-server/skill-create-routes.js.map +1 -1
- package/dist/eval-server/sweep-routes.d.ts +1 -1
- package/dist/eval-server/sweep-routes.js +5 -1
- package/dist/eval-server/sweep-routes.js.map +1 -1
- package/dist/eval-server/workspace-routes.d.ts +12 -0
- package/dist/eval-server/workspace-routes.js +57 -2
- package/dist/eval-server/workspace-routes.js.map +1 -1
- package/dist/eval-ui/assets/{AdvancedTab-D8zbE5fH.js → AdvancedTab-DOgbx7u0.js} +1 -1
- package/dist/eval-ui/assets/{CreateSkillPage-DOBhKdgr.js → CreateSkillPage-gG-MYioa.js} +1 -1
- package/dist/eval-ui/assets/{FindSkillsPalette-CyMmNPr-.js → FindSkillsPalette-DgVp_buC.js} +2 -2
- package/dist/eval-ui/assets/{GeneralTab-DYR9NWC4.js → GeneralTab-AwK9sIkP.js} +1 -1
- package/dist/eval-ui/assets/{PrivacyTab-CXIqQokl.js → PrivacyTab-BtNrxpVV.js} +1 -1
- package/dist/eval-ui/assets/{SearchPaletteCore-Dn5gQJS_.js → SearchPaletteCore-D2gKxOTT.js} +1 -1
- package/dist/eval-ui/assets/{SkillDetailPanel-DTrRnyyJ.js → SkillDetailPanel-Ioc5XaDA.js} +1 -1
- package/dist/eval-ui/assets/{UpdateDropdown-Cvr2fe0z.js → UpdateDropdown-B9rCyfnR.js} +1 -1
- package/dist/eval-ui/assets/{UpdatesTab-DwJIUDPX.js → UpdatesTab-DTmo-vVb.js} +1 -1
- package/dist/eval-ui/assets/core-DZjBCfjp.js +1 -0
- package/dist/eval-ui/assets/{event-CDYWU2X3.js → event-QtOCMXAv.js} +1 -1
- package/dist/eval-ui/assets/globals-Dpf9KmYH.css +1 -0
- package/dist/eval-ui/assets/{index-D7M0Jdss.js → index-CUEYzTVL.js} +1 -1
- package/dist/eval-ui/assets/index-DDNzcrhv.js +1 -0
- package/dist/eval-ui/assets/index-DhhmQddr.js +1 -0
- package/dist/eval-ui/assets/{lifecycle-DSleOV-l.js → lifecycle-o_IRibOa.js} +1 -1
- package/dist/eval-ui/assets/main-sUAgJ9SV.js +87 -0
- package/dist/eval-ui/assets/{preferences-BKv6X7fK.js → preferences-DCdw0Kvu.js} +2 -2
- package/dist/eval-ui/assets/{useDesktopBridge-DxVWbYqK.js → useDesktopBridge-9oZFQsrw.js} +2 -2
- package/dist/eval-ui/index.html +4 -4
- package/dist/eval-ui/lifecycle.html +3 -3
- package/dist/eval-ui/preferences.html +4 -4
- package/dist/lib/keychain.js +20 -3
- package/dist/lib/keychain.js.map +1 -1
- package/dist/studio/routes/index.d.ts +1 -1
- package/dist/studio/routes/index.js +10 -9
- package/dist/studio/routes/index.js.map +1 -1
- package/dist/studio/routes/promote.d.ts +1 -1
- package/dist/studio/routes/promote.js +3 -1
- package/dist/studio/routes/promote.js.map +1 -1
- package/dist/studio/routes/revert.d.ts +1 -1
- package/dist/studio/routes/revert.js +3 -1
- package/dist/studio/routes/revert.js.map +1 -1
- package/dist/studio/routes/test-install.d.ts +1 -1
- package/dist/studio/routes/test-install.js +3 -1
- package/dist/studio/routes/test-install.js.map +1 -1
- package/package.json +2 -1
- package/dist/eval-ui/assets/core-DZAvsxlC.js +0 -1
- package/dist/eval-ui/assets/globals-C3oEdsJh.css +0 -1
- package/dist/eval-ui/assets/main-D2shn1dH.js +0 -87
- /package/dist/eval-ui/assets/{globals-BRZwPAPF.js → globals-hm1COkXX.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as n,C as c}from"./core-
|
|
1
|
+
import{i as n,C as c}from"./core-DZjBCfjp.js";class h{constructor(){this.eventListeners=Object.create(null)}addListener(t,e){return this.on(t,e)}removeListener(t,e){return this.off(t,e)}on(t,e){return t in this.eventListeners?this.eventListeners[t].push(e):this.eventListeners[t]=[e],this}once(t,e){const s=i=>{this.removeListener(t,s),e(i)};return this.addListener(t,s)}off(t,e){return t in this.eventListeners&&(this.eventListeners[t]=this.eventListeners[t].filter(s=>s!==e)),this}removeAllListeners(t){return t?delete this.eventListeners[t]:this.eventListeners=Object.create(null),this}emit(t,e){if(t in this.eventListeners){const s=this.eventListeners[t];for(const i of s)i(e);return!0}return!1}listenerCount(t){return t in this.eventListeners?this.eventListeners[t].length:0}prependListener(t,e){return t in this.eventListeners?this.eventListeners[t].unshift(e):this.eventListeners[t]=[e],this}prependOnceListener(t,e){const s=i=>{this.removeListener(t,s),e(i)};return this.prependListener(t,s)}}class l{constructor(t){this.pid=t}async write(t){await n("plugin:shell|stdin_write",{pid:this.pid,buffer:t})}async kill(){await n("plugin:shell|kill",{cmd:"killChild",pid:this.pid})}}class a extends h{constructor(t,e=[],s){super(),this.stdout=new h,this.stderr=new h,this.program=t,this.args=typeof e=="string"?[e]:e,this.options=s??{}}static create(t,e=[],s){return new a(t,e,s)}static sidecar(t,e=[],s){const i=new a(t,e,s);return i.options.sidecar=!0,i}async spawn(){const t=this.program,e=this.args,s=this.options;typeof e=="object"&&Object.freeze(e);const i=new c;return i.onmessage=r=>{switch(r.event){case"Error":this.emit("error",r.payload);break;case"Terminated":this.emit("close",r.payload);break;case"Stdout":this.stdout.emit("data",r.payload);break;case"Stderr":this.stderr.emit("data",r.payload);break}},await n("plugin:shell|spawn",{program:t,args:e,options:s,onEvent:i}).then(r=>new l(r))}async execute(){const t=this.program,e=this.args,s=this.options;return typeof e=="object"&&Object.freeze(e),await n("plugin:shell|execute",{program:t,args:e,options:s})}}async function u(o,t){await n("plugin:shell|open",{path:o,with:t})}export{l as Child,a as Command,h as EventEmitter,u as open};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i}from"./core-DZjBCfjp.js";function f(n){if(n!==void 0){if(typeof n=="string")return n;if("ok"in n&&"cancel"in n)return{OkCancelCustom:[n.ok,n.cancel]};if("yes"in n&&"no"in n&&"cancel"in n)return{YesNoCancelCustom:[n.yes,n.no,n.cancel]};if("ok"in n)return{OkCustom:n.ok}}}async function u(n={}){return typeof n=="object"&&Object.freeze(n),await i("plugin:dialog|open",{options:n})}async function t(n={}){return typeof n=="object"&&Object.freeze(n),await i("plugin:dialog|save",{options:n})}async function r(n,a){return await i("plugin:dialog|message",{message:n,title:a==null?void 0:a.title,kind:a==null?void 0:a.kind,buttons:f(a==null?void 0:a.buttons)})}async function d(n,a){const e=typeof a=="string"?{title:a}:a;return e&&!e.buttons&&e.okLabel&&(e.buttons={ok:e.okLabel}),r(n,e)}async function y(n,a){const e=typeof a=="string"?{title:a}:a,l=(e==null?void 0:e.okLabel)||(e==null?void 0:e.cancelLabel),c=(e==null?void 0:e.okLabel)??"Yes";return await r(n,{title:e==null?void 0:e.title,kind:e==null?void 0:e.kind,buttons:l?{ok:c,cancel:e.cancelLabel??"No"}:"YesNo"})===c}async function g(n,a){const e=typeof a=="string"?{title:a}:a,l=(e==null?void 0:e.okLabel)||(e==null?void 0:e.cancelLabel),c=(e==null?void 0:e.okLabel)??"Ok";return await r(n,{title:e==null?void 0:e.title,kind:e==null?void 0:e.kind,buttons:l?{ok:c,cancel:e.cancelLabel??"Cancel"}:"OkCancel"})===c}export{y as ask,g as confirm,d as message,u as open,t as save};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i,a as f}from"./core-DZjBCfjp.js";var o;(function(n){n.Year="year",n.Month="month",n.TwoWeeks="twoWeeks",n.Week="week",n.Day="day",n.Hour="hour",n.Minute="minute",n.Second="second"})(o||(o={}));class s{static at(t,e=!1,a=!1){return{at:{date:t,repeating:e,allowWhileIdle:a},interval:void 0,every:void 0}}static interval(t,e=!1){return{at:void 0,interval:{interval:t,allowWhileIdle:e},every:void 0}}static every(t,e,a=!1){return{at:void 0,interval:void 0,every:{interval:t,count:e,allowWhileIdle:a}}}}var c;(function(n){n[n.None=0]="None",n[n.Min=1]="Min",n[n.Low=2]="Low",n[n.Default=3]="Default",n[n.High=4]="High"})(c||(c={}));var r;(function(n){n[n.Secret=-1]="Secret",n[n.Private=0]="Private",n[n.Public=1]="Public"})(r||(r={}));async function l(){return window.Notification.permission!=="default"?await Promise.resolve(window.Notification.permission==="granted"):await i("plugin:notification|is_permission_granted")}async function w(){return await window.Notification.requestPermission()}function d(n){typeof n=="string"?new window.Notification(n):new window.Notification(n.title,n)}async function g(n){await i("plugin:notification|register_action_types",{types:n})}async function v(){return await i("plugin:notification|get_pending")}async function y(n){await i("plugin:notification|cancel",{notifications:n})}async function p(){await i("plugin:notification|cancel")}async function P(){return await i("plugin:notification|get_active")}async function _(n){await i("plugin:notification|remove_active",{notifications:n})}async function m(){await i("plugin:notification|remove_active")}async function N(n){await i("plugin:notification|create_channel",{...n})}async function h(n){await i("plugin:notification|delete_channel",{id:n})}async function A(){return await i("plugin:notification|listChannels")}async function k(n){return await f("notification","notification",n)}async function M(n){return await f("notification","actionPerformed",n)}export{c as Importance,s as Schedule,o as ScheduleEvery,r as Visibility,P as active,y as cancel,p as cancelAll,A as channels,N as createChannel,l as isPermissionGranted,M as onAction,k as onNotificationReceived,v as pending,g as registerActionTypes,_ as removeActive,m as removeAllActive,h as removeChannel,w as requestPermission,d as sendNotification};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as l,j as e,c as N}from"./globals-
|
|
1
|
+
import{r as l,j as e,c as N}from"./globals-hm1COkXX.js";/* empty css */function f(){var i,t;return((t=(i=window.__TAURI__)==null?void 0:i.core)==null?void 0:t.invoke)??null}function v(s){if(!s)return"just now";const i=Date.parse(s);if(!Number.isFinite(i))return"just now";const t=Math.max(0,Math.round((Date.now()-i)/1e3));return t<60?`${t}s ago`:t<3600?`${Math.round(t/60)}m ago`:t<86400?`${Math.round(t/3600)}h ago`:`${Math.round(t/86400)}d ago`}function g(s){return s==="tauri"?"this app":s==="npx-cli"?"npx":"node"}function S(){const[s,i]=l.useState(null),[t,d]=l.useState(!1),[o,b]=l.useState(!1),p=l.useRef(null);l.useEffect(()=>{var _;const c=f();c&&c("get_detected_instance").then(h=>{h&&i(h)}).catch(()=>{});let r=null;const x=window;return(_=x.__TAURI__)!=null&&_.event&&x.__TAURI__.event.listen("lifecycle://detected",h=>{h.payload&&i(h.payload)}).then(h=>{r=h}).catch(()=>{}),()=>{r&&r()}},[]),l.useEffect(()=>{var c;s&&((c=p.current)==null||c.focus())},[s]);const n=l.useCallback(async c=>{if(!o)return;const r=f();if(r)try{await r("set_setting",{key:"studio.lifecycleDefault",value:c})}catch(x){console.warn("could not persist lifecycleDefault:",x)}},[o]),a=l.useCallback(async()=>{if(!s||t)return;d(!0),await n("use-existing");const c=f();if(c)try{await c("lifecycle_use_existing",{port:s.port})}catch(r){console.error("lifecycle_use_existing failed:",r),d(!1)}},[t,s,n]),u=l.useCallback(async()=>{if(!s||t)return;d(!0),await n("stop-and-replace");const c=f();if(c)try{await c("lifecycle_stop_existing",{pid:s.pid})}catch(r){console.error("lifecycle_stop_existing failed:",r),d(!1)}},[t,s,n]),m=l.useCallback(async()=>{if(t)return;d(!0),await n("run-alongside");const c=f();if(c)try{await c("lifecycle_run_alongside")}catch(r){console.error("lifecycle_run_alongside failed:",r),d(!1)}},[t,n]),j=l.useCallback(()=>{const c=f();c&&c("quit").catch(()=>{})},[]);if(!s)return e.jsxs("div",{className:"lifecycle-shell",children:[e.jsx("h1",{children:"Skill Studio is already running"}),e.jsx("div",{className:"lc-detected",children:"Detecting running instances…"}),e.jsx("div",{className:"lc-actions"}),e.jsx("div",{className:"lc-footer",children:e.jsx("button",{type:"button",className:"lc-cancel",onClick:j,children:"Cancel"})})]});const k=`port ${s.port} · ${g(s.source)} · started ${v(s.startedAt)}`;return e.jsxs("div",{className:"lifecycle-shell",children:[e.jsx("h1",{children:"Skill Studio is already running"}),e.jsx("div",{className:"lc-detected","aria-live":"polite",children:k}),e.jsxs("div",{className:"lc-actions",children:[e.jsxs("button",{ref:p,type:"button",className:"lc-btn lc-btn--primary",onClick:a,disabled:t,children:[e.jsx("span",{className:"lc-btn-title",children:"Use that instance"}),e.jsxs("span",{className:"lc-btn-help",children:["Open the running studio at port ",s.port,"."]})]}),e.jsxs("button",{type:"button",className:"lc-btn",onClick:u,disabled:t,children:[e.jsx("span",{className:"lc-btn-title",children:"Stop it and use desktop app"}),e.jsx("span",{className:"lc-btn-help",children:"SIGTERM (3s grace) → SIGKILL, then start a fresh sidecar."})]}),e.jsxs("button",{type:"button",className:"lc-btn",onClick:m,disabled:t,children:[e.jsx("span",{className:"lc-btn-title",children:"Run alongside"}),e.jsx("span",{className:"lc-btn-help",children:"Spawn this app on a separate port; both instances coexist."})]})]}),e.jsxs("div",{className:"lc-footer",children:[e.jsxs("label",{className:"lc-checkbox",children:[e.jsx("input",{type:"checkbox",checked:o,onChange:c=>b(c.target.checked)}),"Don't ask again — always do this"]}),e.jsx("button",{type:"button",className:"lc-cancel",onClick:j,disabled:t,children:"Cancel"})]})]})}function y(){var i,t;return((t=(i=window.__TAURI__)==null?void 0:i.core)==null?void 0:t.invoke)??null}function w(s){return{pid:s.pid,port:s.port,source:s.source??"npx-cli",sourceShort:s.source_short??"npx",startedAt:s.started_at??"",isSelf:!!s.is_self}}function C(){const[s,i]=l.useState(null),[t,d]=l.useState(!1),o=l.useCallback(async()=>{const n=y();if(!n){i([]);return}try{const a=await n("list_studio_instances");i(a.map(w))}catch(a){console.error("list_studio_instances failed:",a),i([])}},[]);l.useEffect(()=>{o()},[o]),l.useEffect(()=>{var u;const n=window;if(!((u=n.__TAURI__)!=null&&u.event))return;let a=null;return n.__TAURI__.event.listen("studio-instances://refresh",()=>{o()}).then(m=>{a=m}).catch(()=>{}),()=>{a&&a()}},[o]);const b=l.useCallback(async n=>{if(t)return;d(!0);const a=y();if(a)try{await a("switch_to_studio_instance",{port:n})}catch(u){console.error("switch failed:",u)}d(!1)},[t]),p=l.useCallback(async n=>{if(t||!window.confirm(`Stop studio instance pid ${n}?`))return;d(!0);const a=y();if(a)try{await a("stop_studio_instance",{pid:n}),await o()}catch(u){console.error("stop failed:",u)}d(!1)},[t,o]);return s===null?e.jsxs("div",{className:"lifecycle-shell",children:[e.jsx("h1",{children:"Studio Instances"}),e.jsx("div",{className:"lc-detected",children:"Loading…"})]}):s.length===0?e.jsxs("div",{className:"lifecycle-shell",children:[e.jsx("h1",{children:"Studio Instances"}),e.jsx("div",{className:"lc-actions",children:e.jsxs("button",{type:"button",className:"lc-btn",disabled:!0,"aria-disabled":!0,children:[e.jsx("span",{className:"lc-btn-title",children:"No other instances"}),e.jsx("span",{className:"lc-btn-help",children:"Skill Studio is the only running instance."})]})}),e.jsx("div",{className:"lc-footer",children:e.jsx("button",{type:"button",className:"lc-cancel",onClick:o,disabled:t,children:"Refresh"})})]}):e.jsxs("div",{className:"lifecycle-shell",children:[e.jsx("h1",{children:"Studio Instances"}),e.jsx("div",{className:"lc-actions",role:"list",children:s.map(n=>e.jsxs("div",{className:"lc-btn",role:"listitem","aria-disabled":n.isSelf,style:n.isSelf?{opacity:.6,cursor:"default"}:{cursor:"default"},children:[e.jsxs("span",{className:"lc-btn-title",children:["port ",n.port," · ",n.sourceShort," · ",n.pid,n.isSelf?" (this app)":""]}),e.jsxs("span",{className:"lc-btn-help",style:{display:"flex",gap:8,marginTop:4},children:[e.jsx("button",{type:"button",className:"lc-cancel",disabled:n.isSelf||t,onClick:()=>b(n.port),children:"Switch"}),e.jsx("button",{type:"button",className:"lc-cancel",disabled:n.isSelf||t,onClick:()=>p(n.pid),children:"Stop"})]})]},`${n.pid}-${n.port}`))}),e.jsx("div",{className:"lc-footer",children:e.jsx("button",{type:"button",className:"lc-cancel",onClick:o,disabled:t,children:"Refresh"})})]})}const I=new URLSearchParams(window.location.search),R=I.get("mode")==="instances"?"instances":"modal";N.createRoot(document.getElementById("root")).render(e.jsx(l.StrictMode,{children:R==="instances"?e.jsx(C,{}):e.jsx(S,{})}));
|