superclawd 0.1.106 → 0.1.108

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 (2) hide show
  1. package/dist/index.js +2 -2
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -201,7 +201,7 @@ node ${Kt(n)} report-commit >/dev/null 2>&1 &
201
201
  `),to[e]}var Ye=new Set(["fda","fda-browser","fda-calendar"]);function cn(e){if(!e)return null;let t;try{t=JSON.parse(G.readFileSync(e,"utf8"))}catch{return null}if(!t||typeof t!="object"||Array.isArray(t))return null;let n={};for(let[r,o]of Object.entries(t)){if(!Ye.has(r))continue;let s=un(o);s&&(n[r]=s)}return Object.keys(n).length?n:null}function un(e){if(!e||typeof e!="object"||Array.isArray(e))return null;let t=e;if(t.type==="http"&&typeof t.url=="string"){let n={type:"http",url:t.url};return an(t.headers)&&(n.headers=t.headers),n}if(typeof t.command=="string"){let n={command:t.command};return Array.isArray(t.args)&&t.args.every(r=>typeof r=="string")&&(n.args=t.args),an(t.env)&&(n.env=t.env),n}return null}function dn(e){let t;try{t=JSON.parse(G.readFileSync(W.join(e,".mcp.json"),"utf8"))}catch{return[]}let n=t&&typeof t=="object"&&!Array.isArray(t)?t.mcpServers:null;return!n||typeof n!="object"||Array.isArray(n)?[]:Object.entries(n).filter(([r,o])=>/^[\w.-]+$/.test(r)&&!Ye.has(r)&&r!=="core"&&r!=="superclawd"&&!!un(o)).map(([r])=>r)}function an(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&Object.values(e).every(t=>typeof t=="string")}function pn(e,t){let n={},r=[];for(let o of e.names)Ye.has(o)||!e.map[o]||(n[o]=e.map[o],r.push(o));for(let[o,s]of Object.entries(t))n[o]=s,r.push(o);return{map:n,names:r}}function Ke(e,t=["SIGINT","SIGTERM","SIGHUP"]){let n=o=>{try{e.kill(o)}catch{}};for(let o of t)process.on(o,n);let r=()=>{for(let o of t)process.off(o,n)};return e.once("close",r),r}function Be(e){return e?128+(Qr.constants.signals[e]??9):1}function no(){let e=process.env.SUPERCLAWD_FDA_DIR;if(e)return G.existsSync(e)?e:null;let t=W.dirname(Zr(import.meta.url));for(let n=0;n<8;n++){let r=W.join(t,"apps","fda");if(G.existsSync(W.join(r,"server","cli.ts"))||G.existsSync(W.join(r,"dist-server","cli.mjs")))return r;let o=W.dirname(t);if(o===t)break;t=o}try{let n=eo(import.meta.url),r=W.dirname(n.resolve(`${ln}/package.json`));if(G.existsSync(W.join(r,"dist-server","cli.mjs")))return r}catch{}return null}function ro(e){let t=W.join(e,"dist-server","cli.mjs");if(G.existsSync(t))return{cmd:process.execPath,args:[t]};let n=W.join(e,"server","cli.ts");if(!G.existsSync(n))return null;for(let r of[W.join(e,"node_modules",".bin","tsx"),W.join(e,"..","..","node_modules",".bin","tsx")])if(G.existsSync(r))return{cmd:r,args:[n]};return{cmd:"tsx",args:[n]}}function fn(e){let t=no(),n=t?ro(t):null;return!t||!n?(process.stderr.write(`SuperClawd FDA isn't installed.
202
202
  Install it with: npm i -g ${ln}
203
203
  `),Promise.resolve(1)):new Promise(r=>{let o=zr(n.cmd,[...n.args,...e],{stdio:"inherit",cwd:process.cwd()});Ke(o),o.on("error",s=>{process.stderr.write(`\u2717 Could not start SuperClawd FDA: ${s.message}
204
- `),r(127)}),o.on("close",(s,i)=>r(s??Be(i)))})}function ao(e){let t={},n=[];for(let r of e){if(!r.name||r.name===Q||r.name===X||t[r.name])continue;let o={};r.type==="http"?(o.type="http",o.url=r.url,r.headers&&Object.keys(r.headers).length&&(o.headers=r.headers)):(o.command=r.command,r.args&&r.args.length&&(o.args=r.args)),r.env&&Object.keys(r.env).length&&(o.env=r.env),t[r.name]=o,n.push(r.name)}return{map:t,names:n}}function lo(e,t,n,r,o){let s={SUPERCLAWD_BACKEND:z,SUPERCLAWD_MCP_API_URL:V,SUPERCLAWD_SESSION_ID:n};return _||(s.SUPERCLAWD_MCP_KEY=e.keyId,s.SUPERCLAWD_MCP_SECRET=e.secret,s.SUPERCLAWD_MCP_WORKSPACE=e.workspace),process.env.NODE_EXTRA_CA_CERTS&&(s.NODE_EXTRA_CA_CERTS=process.env.NODE_EXTRA_CA_CERTS),process.env.SUPERCLAWD_HOME&&(s.SUPERCLAWD_HOME=process.env.SUPERCLAWD_HOME),process.env.SUPERCLAWD_LOG_FILE&&(s.SUPERCLAWD_LOG_FILE=process.env.SUPERCLAWD_LOG_FILE),process.env.SUPERCLAWD_DEBUG&&(s.SUPERCLAWD_DEBUG=process.env.SUPERCLAWD_DEBUG),process.env.SUPERCLAWD_MOCK_TIER&&(s.SUPERCLAWD_MOCK_TIER=process.env.SUPERCLAWD_MOCK_TIER),process.env.SUPERCLAWD_MOCK_BALANCE&&(s.SUPERCLAWD_MOCK_BALANCE=process.env.SUPERCLAWD_MOCK_BALANCE),process.env.SUPERCLAWD_EXPERIMENTAL&&(s.SUPERCLAWD_EXPERIMENTAL=process.env.SUPERCLAWD_EXPERIMENTAL),process.env.SUPERCLAWD_REPO_FINGERPRINT&&(s.SUPERCLAWD_REPO_FINGERPRINT=process.env.SUPERCLAWD_REPO_FINGERPRINT),process.env.SUPERCLAWD_TEAM_MEMORY&&(s.SUPERCLAWD_TEAM_MEMORY=process.env.SUPERCLAWD_TEAM_MEMORY),process.env.SUPERCLAWD_REPO_MEMORY&&(s.SUPERCLAWD_REPO_MEMORY=process.env.SUPERCLAWD_REPO_MEMORY),process.env.SUPERCLAWD_AGENT_MEMORY&&(s.SUPERCLAWD_AGENT_MEMORY=process.env.SUPERCLAWD_AGENT_MEMORY),process.env.SUPERCLAWD_PRIVATE_MEMORY&&(s.SUPERCLAWD_PRIVATE_MEMORY=process.env.SUPERCLAWD_PRIVATE_MEMORY),process.env.SUPERCLAWD_MEMORY_OFF&&(s.SUPERCLAWD_MEMORY_OFF=process.env.SUPERCLAWD_MEMORY_OFF),process.env.SUPERCLAWD_PIPELINES_TOOLS&&(s.SUPERCLAWD_PIPELINES_TOOLS=process.env.SUPERCLAWD_PIPELINES_TOOLS),process.env.SUPERCLAWD_PIPELINES_URL&&(s.SUPERCLAWD_PIPELINES_URL=process.env.SUPERCLAWD_PIPELINES_URL),process.env.SUPERCLAWD_PIPELINES_TICKET&&(s.SUPERCLAWD_PIPELINES_TICKET=process.env.SUPERCLAWD_PIPELINES_TICKET),r.length&&(s.SUPERCLAWD_RESOURCES=JSON.stringify(r.map(l=>({name:l.name,description:l.description})))),{relPath:".claude-plugin/plugin.json",content:JSON.stringify({name:X,description:"SuperClawd skills + live, metered directives for Claude Code.",mcpServers:{[Q]:{command:"node",args:[t],env:s},...o}},null,2)}}function hn(e){let{pluginDir:t,session:n,catalog:r,serverPath:o,launchId:s,fda:i}=e,l=gn(mn(o),"hook-helper.mjs"),u=process.env.SUPERCLAWD_GATE==="1",a=ao(r.mcpServers),f=i?null:nn();if(f&&!a.map[f.name]){let h={type:"http",url:f.url};f.headers&&(h.headers=f.headers),a.map[f.name]=h,a.names.push(f.name)}i&&e.fdaServers&&(a=pn(a,e.fdaServers));let S=[...Wt(r.agents,{foundationalText:r.foundational.text,modelFamilies:r.modelFamilies,extraTools:i&&e.fdaServers?[...[Q,...a.names].map(Tt),...dn(process.cwd()).map(h=>`mcp__${h}`),"ToolSearch"]:[]},r.agentTeams),...Ft(r.commands,r.agents),...Nt(r.workflows),...jt()],y=new Set;for(let h of S){let d=/^commands\/(.+)\.md$/.exec(h.relPath),c=/^skills\/(.+)\/SKILL\.md$/.exec(h.relPath);d&&y.add(d[1]),c&&y.add(c[1])}let b=[lo(n,o,s,r.resources,a.map),...Ot(r.skills,y),...S,...Bt({foundational:r.foundational,helperPath:l,pluginDir:t,launchId:s,gate:u,guardrails:r.guardrails,policyGuardrails:r.policyGuardrails,agents:r.agents})],P=[],E=[];for(let h of b){let d=gn(t,h.relPath);oo(mn(d),{recursive:!0,mode:448}),so(d,h.content,{mode:384}),h.executable&&io(d,448),P.push(h.relPath);let c=/^agents\/(.+)\.md$/.exec(h.relPath);c&&E.push(c[1])}return{pluginDir:t,skillCount:r.skills.length,agentCount:r.agents.length,commandCount:r.commands.length,workflowCount:r.workflows.length,mcpServerNames:a.names,agentSlugs:E,files:P}}function wn(e,t){let n=["--allowedTools",Lt];for(let r of e)t.planOnly&&r!=="fda"||n.push("--allowedTools",`mcp__plugin_superclawd_${r}__*`);return t.planOnly?(n.push("--permission-mode","plan"),n.push("--disallowedTools","Edit","Write","NotebookEdit","Bash","Agent","Task","WebFetch","WebSearch","mcp__plugin_superclawd_fda-browser","mcp__plugin_superclawd_fda-calendar"),n.push("--setting-sources","user")):t.permissionMode?n.push("--permission-mode",t.permissionMode):t.skipPermissions&&n.push("--dangerously-skip-permissions"),n}import{mkdirSync as co,rmSync as Sn,readdirSync as uo,statSync as po}from"node:fs";import{join as He}from"node:path";import{randomBytes as fo}from"node:crypto";function yn(){let e=`${Date.now().toString(36)}-${fo(4).toString("hex")}`,t=He(le,e),n=He(t,"plugin");return co(n,{recursive:!0,mode:448}),{id:e,dir:t,pluginDir:n}}function we(e){try{Sn(e.dir,{recursive:!0,force:!0})}catch{}}function kn(e=Date.now()){let t=0,n=[];try{n=uo(le)}catch{return 0}for(let r of n){let o=He(le,r);try{e-po(o).mtimeMs>dt&&(Sn(o,{recursive:!0,force:!0}),t++)}catch{}}return t}import{hostname as mo}from"node:os";import{spawn as go}from"node:child_process";var ho=e=>new Promise(t=>setTimeout(t,e));function wo(e){try{let t=process.platform,o=go(t==="darwin"?"open":t==="win32"?"cmd":"xdg-open",t==="win32"?["/c","start","",e]:[e],{stdio:"ignore",detached:!0});o.on("error",()=>{}),o.unref()}catch{}}async function En(){if(_)return process.stdout.write(`Mock mode \u2014 login is not needed.
204
+ `),r(127)}),o.on("close",(s,i)=>r(s??Be(i)))})}function ao(e){let t={},n=[];for(let r of e){if(!r.name||r.name===Q||r.name===X||t[r.name])continue;let o={};r.type==="http"?(o.type="http",o.url=r.url,r.headers&&Object.keys(r.headers).length&&(o.headers=r.headers)):(o.command=r.command,r.args&&r.args.length&&(o.args=r.args)),r.env&&Object.keys(r.env).length&&(o.env=r.env),t[r.name]=o,n.push(r.name)}return{map:t,names:n}}function lo(e,t,n,r,o){let s={SUPERCLAWD_BACKEND:z,SUPERCLAWD_MCP_API_URL:V,SUPERCLAWD_SESSION_ID:n};return _||(s.SUPERCLAWD_MCP_KEY=e.keyId,s.SUPERCLAWD_MCP_SECRET=e.secret,s.SUPERCLAWD_MCP_WORKSPACE=e.workspace),process.env.NODE_EXTRA_CA_CERTS&&(s.NODE_EXTRA_CA_CERTS=process.env.NODE_EXTRA_CA_CERTS),process.env.SUPERCLAWD_HOME&&(s.SUPERCLAWD_HOME=process.env.SUPERCLAWD_HOME),process.env.SUPERCLAWD_LOG_FILE&&(s.SUPERCLAWD_LOG_FILE=process.env.SUPERCLAWD_LOG_FILE),process.env.SUPERCLAWD_DEBUG&&(s.SUPERCLAWD_DEBUG=process.env.SUPERCLAWD_DEBUG),process.env.SUPERCLAWD_MOCK_TIER&&(s.SUPERCLAWD_MOCK_TIER=process.env.SUPERCLAWD_MOCK_TIER),process.env.SUPERCLAWD_MOCK_BALANCE&&(s.SUPERCLAWD_MOCK_BALANCE=process.env.SUPERCLAWD_MOCK_BALANCE),process.env.SUPERCLAWD_EXPERIMENTAL&&(s.SUPERCLAWD_EXPERIMENTAL=process.env.SUPERCLAWD_EXPERIMENTAL),process.env.SUPERCLAWD_REPO_FINGERPRINT&&(s.SUPERCLAWD_REPO_FINGERPRINT=process.env.SUPERCLAWD_REPO_FINGERPRINT),process.env.SUPERCLAWD_TEAM_MEMORY&&(s.SUPERCLAWD_TEAM_MEMORY=process.env.SUPERCLAWD_TEAM_MEMORY),process.env.SUPERCLAWD_REPO_MEMORY&&(s.SUPERCLAWD_REPO_MEMORY=process.env.SUPERCLAWD_REPO_MEMORY),process.env.SUPERCLAWD_AGENT_MEMORY&&(s.SUPERCLAWD_AGENT_MEMORY=process.env.SUPERCLAWD_AGENT_MEMORY),process.env.SUPERCLAWD_PRIVATE_MEMORY&&(s.SUPERCLAWD_PRIVATE_MEMORY=process.env.SUPERCLAWD_PRIVATE_MEMORY),process.env.SUPERCLAWD_MEMORY_OFF&&(s.SUPERCLAWD_MEMORY_OFF=process.env.SUPERCLAWD_MEMORY_OFF),process.env.SUPERCLAWD_PIPELINES_TOOLS&&(s.SUPERCLAWD_PIPELINES_TOOLS=process.env.SUPERCLAWD_PIPELINES_TOOLS),process.env.SUPERCLAWD_PIPELINES_URL&&(s.SUPERCLAWD_PIPELINES_URL=process.env.SUPERCLAWD_PIPELINES_URL),process.env.SUPERCLAWD_PIPELINES_TICKET&&(s.SUPERCLAWD_PIPELINES_TICKET=process.env.SUPERCLAWD_PIPELINES_TICKET),r.length&&(s.SUPERCLAWD_RESOURCES=JSON.stringify(r.map(l=>({name:l.name,description:l.description})))),{relPath:".claude-plugin/plugin.json",content:JSON.stringify({name:X,description:"SuperClawd skills + live, metered directives for Claude Code.",mcpServers:{[Q]:{command:"node",args:[t],env:s},...o}},null,2)}}function hn(e){let{pluginDir:t,session:n,catalog:r,serverPath:o,launchId:s,fda:i}=e,l=gn(mn(o),"hook-helper.mjs"),u=process.env.SUPERCLAWD_GATE==="1",a=ao(r.mcpServers),f=i?null:nn();if(f&&!a.map[f.name]){let h={type:"http",url:f.url};f.headers&&(h.headers=f.headers),a.map[f.name]=h,a.names.push(f.name)}i&&e.fdaServers&&(a=pn(a,e.fdaServers));let S=[...Wt(r.agents,{foundationalText:r.foundational.text,modelFamilies:r.modelFamilies,extraTools:i&&e.fdaServers?[...[Q,...a.names].map(Tt),...dn(process.cwd()).map(h=>`mcp__${h}`),"ToolSearch","Skill","WebSearch","TodoWrite"]:[]},r.agentTeams),...Ft(r.commands,r.agents),...Nt(r.workflows),...jt()],y=new Set;for(let h of S){let d=/^commands\/(.+)\.md$/.exec(h.relPath),c=/^skills\/(.+)\/SKILL\.md$/.exec(h.relPath);d&&y.add(d[1]),c&&y.add(c[1])}let b=[lo(n,o,s,r.resources,a.map),...Ot(r.skills,y),...S,...Bt({foundational:r.foundational,helperPath:l,pluginDir:t,launchId:s,gate:u,guardrails:r.guardrails,policyGuardrails:r.policyGuardrails,agents:r.agents})],P=[],E=[];for(let h of b){let d=gn(t,h.relPath);oo(mn(d),{recursive:!0,mode:448}),so(d,h.content,{mode:384}),h.executable&&io(d,448),P.push(h.relPath);let c=/^agents\/(.+)\.md$/.exec(h.relPath);c&&E.push(c[1])}return{pluginDir:t,skillCount:r.skills.length,agentCount:r.agents.length,commandCount:r.commands.length,workflowCount:r.workflows.length,mcpServerNames:a.names,agentSlugs:E,files:P}}function wn(e,t){let n=["--allowedTools",Lt];for(let r of e)t.planOnly&&r!=="fda"||n.push("--allowedTools",`mcp__plugin_superclawd_${r}__*`);return t.planOnly?(n.push("--permission-mode","plan"),n.push("--disallowedTools","Edit","Write","NotebookEdit","Bash","Agent","Task","WebFetch","WebSearch","mcp__plugin_superclawd_fda-browser","mcp__plugin_superclawd_fda-calendar"),n.push("--setting-sources","user")):t.permissionMode?n.push("--permission-mode",t.permissionMode):t.skipPermissions&&n.push("--dangerously-skip-permissions"),n}import{mkdirSync as co,rmSync as Sn,readdirSync as uo,statSync as po}from"node:fs";import{join as He}from"node:path";import{randomBytes as fo}from"node:crypto";function yn(){let e=`${Date.now().toString(36)}-${fo(4).toString("hex")}`,t=He(le,e),n=He(t,"plugin");return co(n,{recursive:!0,mode:448}),{id:e,dir:t,pluginDir:n}}function we(e){try{Sn(e.dir,{recursive:!0,force:!0})}catch{}}function kn(e=Date.now()){let t=0,n=[];try{n=uo(le)}catch{return 0}for(let r of n){let o=He(le,r);try{e-po(o).mtimeMs>dt&&(Sn(o,{recursive:!0,force:!0}),t++)}catch{}}return t}import{hostname as mo}from"node:os";import{spawn as go}from"node:child_process";var ho=e=>new Promise(t=>setTimeout(t,e));function wo(e){try{let t=process.platform,o=go(t==="darwin"?"open":t==="win32"?"cmd":"xdg-open",t==="win32"?["/c","start","",e]:[e],{stdio:"ignore",detached:!0});o.on("error",()=>{}),o.unref()}catch{}}async function En(){if(_)return process.stdout.write(`Mock mode \u2014 login is not needed.
205
205
  `),{ok:!0};let e=tt(),t=mo()||"Unknown device",n;try{let a=await fetch(`${ae}/api/auth/cli/device/start`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({machineId:e,hostname:t})});if(!a.ok)return{ok:!1,error:`Couldn't start login (HTTP ${a.status}).`};n=await a.json()}catch{return{ok:!1,error:`Couldn't reach ${ae}.`}}let r=n.verification_uri_complete||n.verification_uri;process.stdout.write(`
206
206
  To authorize this machine, open:
207
207
  ${r}
@@ -242,7 +242,7 @@ ${M}[?7l${M}[?25l`),i(!0),t.setRawMode(!0),t.resume();let l=!1,u=()=>{if(!l){l=!
242
242
  `;let x=`v${t}`;m+=`${v}[${Math.max(1,R-1)};${Math.max(1,c-x.length-1)}H${j}${x}${A}`,F(m)},h=(d,c,R)=>{let w=process.stdout.columns||80,m="Select your workspace \u2191/\u2193 \xB7 enter launches \xB7 d sets default \xB7 esc cancels",I=Math.max(0,Math.floor((w-m.length)/2)),x=C=>` ${C.name} ${C.slug} \xB7 ${C.role}`,k=Math.max(...d.map(C=>x(C).length)),p=Math.max(0,Math.floor((w-k)/2)),g=[`${q(I)}${J}${m}${A}`,""];for(let C=0;C<d.length;C++){let N=d[C],ne=C===c,re=ne?`${j}\u276F `:" ",_e=ne?`${j}${N.name}${A}`:N.name,ve=N.slug===R?` ${j}\u2605 default${A}`:"";g.push(`${q(p)}${re}${_e} ${J}${N.slug} \xB7 ${N.role}${A}${ve}`)}E(g)};return{phase:(d,c)=>P(d-1,c,Ro),ready:d=>P(e,d,Co),message(d){let c=process.stdout.columns||80,R=Math.max(0,Math.floor((c-d.length)/2));E([`${q(R)}${J}${d}${A}`]),r=Date.now()},selectWorkspace(d,c){return new Promise(R=>{let w=c?.currentSlug?d.findIndex(k=>k.slug===c.currentSlug):-1,m=w>=0?w:0,I=c?.defaultSlug;s&&process.stdin.off("data",i),h(d,m,I);let x=k=>{let p=k.toString();p===""||p===v?(process.stdin.off("data",x),R(null)):p==="\r"||p===`
243
243
  `?(process.stdin.off("data",x),process.stdin.on("data",i),R(d[m].slug)):p==="d"||p==="D"?(I=d[m].slug,c?.onSetDefault?.(I),h(d,m,I)):p===`${v}[A`||p==="k"?(m=(m-1+d.length)%d.length,h(d,m,I)):(p===`${v}[B`||p==="j")&&(m=(m+1)%d.length,h(d,m,I))};process.stdin.on("data",x)})},fail(d){o&&a(),o=!1,y(),process.stderr.write(`${Ee}\u2717 ${d}${A}
244
244
  `)},note(){},handoff(){s&&(process.stdin.off("data",i),process.stdin.pause(),s=!1),F(Ve+Je),process.off("SIGINT",f),process.off("SIGTERM",f)},finish(){o&&a(),o=!1,y()}}}function bo(){return process.platform!=="win32"?!0:!!(process.env.WT_SESSION||process.env.TERM_PROGRAM||process.env.TERM)}function Ao(){return{async phase(){},message(){},async selectWorkspace(e,t){return t?.currentSlug??e[0]?.slug??null},async ready(){},fail(e){process.stderr.write(`${Ee}\u2717 ${e}${A}
245
- `)},note(){},handoff(){},finish(){}}}function xn(e){if(e.quiet)return Ao();let t=process.stdout.isTTY===!0,n=e.version??"";return e.plain||!t||!bo()?Po(e.total,n):Mo(e.total,n)}var xo=["text","json","stream-json"],$o=["auto"],Oo=/^(?:0*[1-9]\d*(?:\.\d+)?|0*\.\d*[1-9]\d*|0+\.\d*[1-9]\d*)$/,Io=/^[1-9]\d*$/,Lo=["low","medium","high","xhigh","max"];function $n(e){let t=!1,n="",r=null,o=!1,s=!1,i=!1,l=null,u=!1,a=!1,f="board",S=null,y=null,b=null,P=!1,E=null,h=null,d=null,c=null,R=!1,w=null,m=null,I=[],x=(k,p,g)=>p!==void 0&&!p.startsWith("--")&&g(p)?p:(I.push(k),null);for(let k=0;k<e.length;k++){let p=e[k],g=e[k+1];if(p==="-p"||p==="--print")t=!0,g&&!g.startsWith("-")&&(n=g,k++);else if(p==="--workspace"||p==="-w")g&&!g.startsWith("-")&&(r=g,k++);else if(p==="--no-capture")o=!0;else if(p==="--no-memory")s=!0;else if(p==="--resume"||p==="-r")i=!0,g&&!g.startsWith("-")&&(l=g,k++);else if(p==="--pipelines")u=!0;else if(p==="--pipelines-tools")a=!0;else if(p.startsWith("--pipelines-tools="))a=!0,f=p.slice(18)==="restricted"?"restricted":"board";else if(p==="--session-id")g&&!g.startsWith("-")&&(S=g,k++);else if(p==="--model")g&&!g.startsWith("-")&&(y=g,k++);else if(p==="--fda")P=!0;else if(p==="--plan-only")R=!0;else if(p==="--agent")E=x(p,g,C=>!C.startsWith("-")),E!==null&&k++;else if(p==="--prompt-file")h=x(p,g,C=>!C.startsWith("-")),h!==null&&k++;else if(p==="--output-format"){let C=x(p,g,N=>xo.includes(N));C!==null&&(d=C,k++)}else if(p==="--permission-mode"){let C=x(p,g,N=>$o.includes(N));C!==null&&(c=C,k++)}else p==="--max-budget-usd"?(w=x(p,g,C=>Oo.test(C)),w!==null&&k++):p==="--max-turns"?(m=x(p,g,C=>Io.test(C)),m!==null&&k++):p==="--effort"&&g&&Lo.includes(g)&&(b=g,k++)}return{printMode:t,printPrompt:n,workspace:r,noCapture:o,noMemory:s,resume:i,resumeSessionId:l,pipelines:u,pipelinesTools:a,pipelinesToolsMode:f,sessionId:S,model:y,effort:b,fda:P,agent:E,promptFile:h,outputFormat:d,permissionMode:c,planOnly:R,maxBudgetUsd:w,maxTurns:m,invalid:I}}var On={name:"superclawd",version:"0.1.106",description:"Claude Code, supercharged \u2014 your team's standards, every session. The superclawd CLI loads your workspace's skills, agents, commands, workflows, and live directives into Claude Code as a plugin.",author:"SuperClawd <support@superclawd.com>",license:"SEE LICENSE IN LICENSE",homepage:"https://superclawd.com",repository:{type:"git",url:"git+https://github.com/superclawd-ai/superclawd.git"},bugs:{url:"https://github.com/superclawd-ai/superclawd/issues"},keywords:["superclawd","claude-code","claude","plugin","skills","agents","mcp","ai-assistant","coding-standards","model-context-protocol"],engines:{node:">=20"},type:"module",main:"dist/index.js",bin:{superclawd:"dist/index.js"},files:["dist","README.md","LICENSE"],scripts:{build:"node build.mjs",dev:"node build.mjs && tsx src/index.ts",typecheck:"tsc --noEmit",lint:"eslint 'src/**/*.{ts,tsx}'","lint:fix":"eslint 'src/**/*.{ts,tsx}' --fix",format:"prettier --check 'src/**/*.{ts,tsx}'","format:fix":"prettier --write 'src/**/*.{ts,tsx}'",selftest:"tsx test/mcp-selftest.ts","test:guardrails":"tsx test/guardrails-eval.test.ts",test:"node build.mjs && tsx test/mcp-selftest.ts && tsx test/pipelines-tools.test.ts && tsx test/guardrails-eval.test.ts && tsx test/hooks-capture.test.ts && tsx test/translator-teams.test.ts && tsx test/run-args.test.ts && tsx test/pipelines.test.ts && tsx test/update-check.test.ts && tsx test/retrieve.test.ts && tsx test/config-private-memory.test.ts && tsx test/config-choose-workspace.test.ts && tsx test/config.test.ts && tsx test/translator-basics.test.ts && tsx test/hook-helper-guardrails.test.ts && tsx test/capture-prompts.test.ts && tsx test/mcp-backend-real.test.ts && tsx test/catalog.test.ts && tsx test/fda.test.ts && tsx test/models.test.ts",prepublishOnly:"npm run build","publish:npm":"npm publish","version:bump":"npm version patch --no-git-tag-version"},dependencies:{"@modelcontextprotocol/sdk":"^1.7.0",zod:"^3.24.2"},devDependencies:{"@eslint/js":"^9.39.1","@types/node":"^22.10.0","@typescript-eslint/eslint-plugin":"^8.44.1","@typescript-eslint/parser":"^8.44.1",esbuild:"^0.24.0",eslint:"^9.36.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4",prettier:"^3.6.2",tsx:"^4.19.0",typescript:"^5.7.0"}};var Go=Date.now();function te(e){process.env.SUPERCLAWD_TIMING==="1"&&process.stderr.write(`[timing] ${Date.now()-Go} ms ${e}
245
+ `)},note(){},handoff(){},finish(){}}}function xn(e){if(e.quiet)return Ao();let t=process.stdout.isTTY===!0,n=e.version??"";return e.plain||!t||!bo()?Po(e.total,n):Mo(e.total,n)}var xo=["text","json","stream-json"],$o=["auto"],Oo=/^(?:0*[1-9]\d*(?:\.\d+)?|0*\.\d*[1-9]\d*|0+\.\d*[1-9]\d*)$/,Io=/^[1-9]\d*$/,Lo=["low","medium","high","xhigh","max"];function $n(e){let t=!1,n="",r=null,o=!1,s=!1,i=!1,l=null,u=!1,a=!1,f="board",S=null,y=null,b=null,P=!1,E=null,h=null,d=null,c=null,R=!1,w=null,m=null,I=[],x=(k,p,g)=>p!==void 0&&!p.startsWith("--")&&g(p)?p:(I.push(k),null);for(let k=0;k<e.length;k++){let p=e[k],g=e[k+1];if(p==="-p"||p==="--print")t=!0,g&&!g.startsWith("-")&&(n=g,k++);else if(p==="--workspace"||p==="-w")g&&!g.startsWith("-")&&(r=g,k++);else if(p==="--no-capture")o=!0;else if(p==="--no-memory")s=!0;else if(p==="--resume"||p==="-r")i=!0,g&&!g.startsWith("-")&&(l=g,k++);else if(p==="--pipelines")u=!0;else if(p==="--pipelines-tools")a=!0;else if(p.startsWith("--pipelines-tools="))a=!0,f=p.slice(18)==="restricted"?"restricted":"board";else if(p==="--session-id")g&&!g.startsWith("-")&&(S=g,k++);else if(p==="--model")g&&!g.startsWith("-")&&(y=g,k++);else if(p==="--fda")P=!0;else if(p==="--plan-only")R=!0;else if(p==="--agent")E=x(p,g,C=>!C.startsWith("-")),E!==null&&k++;else if(p==="--prompt-file")h=x(p,g,C=>!C.startsWith("-")),h!==null&&k++;else if(p==="--output-format"){let C=x(p,g,N=>xo.includes(N));C!==null&&(d=C,k++)}else if(p==="--permission-mode"){let C=x(p,g,N=>$o.includes(N));C!==null&&(c=C,k++)}else p==="--max-budget-usd"?(w=x(p,g,C=>Oo.test(C)),w!==null&&k++):p==="--max-turns"?(m=x(p,g,C=>Io.test(C)),m!==null&&k++):p==="--effort"&&g&&Lo.includes(g)&&(b=g,k++)}return{printMode:t,printPrompt:n,workspace:r,noCapture:o,noMemory:s,resume:i,resumeSessionId:l,pipelines:u,pipelinesTools:a,pipelinesToolsMode:f,sessionId:S,model:y,effort:b,fda:P,agent:E,promptFile:h,outputFormat:d,permissionMode:c,planOnly:R,maxBudgetUsd:w,maxTurns:m,invalid:I}}var On={name:"superclawd",version:"0.1.108",description:"Claude Code, supercharged \u2014 your team's standards, every session. The superclawd CLI loads your workspace's skills, agents, commands, workflows, and live directives into Claude Code as a plugin.",author:"SuperClawd <support@superclawd.com>",license:"SEE LICENSE IN LICENSE",homepage:"https://superclawd.com",repository:{type:"git",url:"git+https://github.com/superclawd-ai/superclawd.git"},bugs:{url:"https://github.com/superclawd-ai/superclawd/issues"},keywords:["superclawd","claude-code","claude","plugin","skills","agents","mcp","ai-assistant","coding-standards","model-context-protocol"],engines:{node:">=20"},type:"module",main:"dist/index.js",bin:{superclawd:"dist/index.js"},files:["dist","README.md","LICENSE"],scripts:{build:"node build.mjs",dev:"node build.mjs && tsx src/index.ts",typecheck:"tsc --noEmit",lint:"eslint 'src/**/*.{ts,tsx}'","lint:fix":"eslint 'src/**/*.{ts,tsx}' --fix",format:"prettier --check 'src/**/*.{ts,tsx}'","format:fix":"prettier --write 'src/**/*.{ts,tsx}'",selftest:"tsx test/mcp-selftest.ts","test:guardrails":"tsx test/guardrails-eval.test.ts",test:"node build.mjs && tsx test/mcp-selftest.ts && tsx test/pipelines-tools.test.ts && tsx test/guardrails-eval.test.ts && tsx test/hooks-capture.test.ts && tsx test/translator-teams.test.ts && tsx test/run-args.test.ts && tsx test/pipelines.test.ts && tsx test/update-check.test.ts && tsx test/retrieve.test.ts && tsx test/config-private-memory.test.ts && tsx test/config-choose-workspace.test.ts && tsx test/config.test.ts && tsx test/translator-basics.test.ts && tsx test/hook-helper-guardrails.test.ts && tsx test/capture-prompts.test.ts && tsx test/mcp-backend-real.test.ts && tsx test/catalog.test.ts && tsx test/fda.test.ts && tsx test/models.test.ts",prepublishOnly:"npm run build","publish:npm":"npm publish","version:bump":"npm version patch --no-git-tag-version"},dependencies:{"@modelcontextprotocol/sdk":"^1.7.0",zod:"^3.24.2"},devDependencies:{"@eslint/js":"^9.39.1","@types/node":"^22.10.0","@typescript-eslint/eslint-plugin":"^8.44.1","@typescript-eslint/parser":"^8.44.1",esbuild:"^0.24.0",eslint:"^9.36.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4",prettier:"^3.6.2",tsx:"^4.19.0",typescript:"^5.7.0"}};var Go=Date.now();function te(e){process.env.SUPERCLAWD_TIMING==="1"&&process.stderr.write(`[timing] ${Date.now()-Go} ms ${e}
246
246
  `)}var Ce=On.version,Re=process.env.SUPERCLAWD_DRY_RUN==="1"||process.argv.includes("--dry-run");function Yo(){try{let e=Uo("git remote get-url origin",{encoding:"utf8",stdio:["ignore","pipe","ignore"]}).trim();if(e)return e.replace(/\.git$/,"").toLowerCase()}catch{}return`dir:${Fo(process.cwd())}`}function Ko(){if(process.env.SUPERCLAWD_MCP_SERVER_PATH)return process.env.SUPERCLAWD_MCP_SERVER_PATH;let e=In(new URL("./mcp-server.mjs",import.meta.url));return Tn(e)?e:In(new URL("../dist/mcp-server.mjs",import.meta.url))}function Bo(){return`superclawd \u2014 Claude Code, supercharged with your SuperClawd workspace.
247
247
 
248
248
  Usage:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "superclawd",
3
- "version": "0.1.106",
3
+ "version": "0.1.108",
4
4
  "description": "Claude Code, supercharged — your team's standards, every session. The superclawd CLI loads your workspace's skills, agents, commands, workflows, and live directives into Claude Code as a plugin.",
5
5
  "author": "SuperClawd <support@superclawd.com>",
6
6
  "license": "SEE LICENSE IN LICENSE",