MCPcopy Index your code
hub / github.com/ChinaSiro/claude-code-sourcemap / jQ_

Function jQ_

package/cli.js:909–910  ·  view source on GitHub ↗
(q)

Source from the content-addressed store, hash-verified

907 exit 1
908 }
909 `.trim(),{stdout:A}=await zx1("powershell.exe",["-NoProfile","-NonInteractive","-Command",$]);return A.includes("Valid")}else try{return await zx1("openssl",["verify","-purpose","codesigning","-CApath","/etc/ssl/certs",z]),!0}catch($){return!1}}catch(z){return!1}finally{if(_)try{await FU_(_,{recursive:!0,force:!0})}catch{}}}function iU_(q){let K=Zk6(q),{originalContent:_}=mi6(K);$24(q,_)}var NH,A24="MCPB_SIG_V1",O24="MCPB_SIG_END",zx1;var Yx1=y(()=>{NH=O6(z24(),1),zx1=dU_(BU_)});function sv8({silent:q=!1}={}){return{log:(...K)=>{if(!q)console.log(...K)},error:(...K)=>{if(!q)console.error(...K)},warn:(...K)=>{if(!q)console.warn(...K)},info:(...K)=>{if(!q)console.info(...K)},debug:(...K)=>{if(!q)console.debug(...K)}}}import{chmodSync as rU_,existsSync as $x1,mkdirSync as j24,readFileSync as oU_,writeFileSync as aU_}from"fs";import{join as H24,resolve as tv8,sep as sU_}from"path";async function Ax1({mcpbPath:q,outputDir:K,silent:_}){let z=sv8({silent:_}),Y=tv8(q);if(!$x1(Y))return z.error(`ERROR: MCPB file not found: ${q}`),!1;let $=K?tv8(K):process.cwd();if(!$x1($))j24($,{recursive:!0});try{let A=oU_(Y),{originalContent:O}=mi6(A),w=new Map,j=process.platform!=="win32";if(j){let J=O,M=-1;for(let X=J.length-22;X>=0;X--)if(J.readUInt32LE(X)===101010256){M=X;break}if(M!==-1){let X=J.readUInt32LE(M+16),P=J.readUInt16LE(M+8),W=X;for(let D=0;D<P;D++)if(J.readUInt32LE(W)===33639248){let f=J.readUInt32LE(W+38),G=J.readUInt16LE(W+28),Z=J.toString("utf8",W+46,W+46+G),T=f>>16&511;if(T>0)w.set(Z,T);let v=J.readUInt16LE(W+30),V=J.readUInt16LE(W+32);W+=46+G+v+V}else break}}let H=DC1(O);for(let J in H)if(Object.prototype.hasOwnProperty.call(H,J)){let M=H[J],X=H24($,J),P=tv8(X),W=tv8($);if(!P.startsWith(W+sU_)&&P!==W)throw Error(`Path traversal attempt detected: ${J}`);let D=H24(X,"..");if(!$x1(D))j24(D,{recursive:!0});if(aU_(X,M),j&&w.has(J))try{let f=w.get(J);if(f!==void 0)rU_(X,f)}catch(f){}}return z.log(`Extension unpacked successfully to ${$}`),!0}catch(A){if(A instanceof Error)z.error(`ERROR: Failed to unpack extension: ${A.message}`);else z.error("ERROR: An unknown error occurred during unpacking.");return!1}}var Ox1=y(()=>{zi6();Yx1()});var J24,tU_,eU_,qQ_,KQ_,_Q_,zQ_,YQ_,$Q_,AQ_,nlA,M24,ilA;var X24=y(()=>{dA6();J24=HE({command:c7(),args:qJ(c7()).optional(),env:Bx(c7(),c7()).optional()}),tU_=HE({name:c7(),email:c7().email().optional(),url:c7().url().optional()}),eU_=HE({type:c7(),url:c7().url()}),qQ_=J24.partial(),KQ_=J24.extend({platform_overrides:Bx(c7(),qQ_).optional()}),_Q_=HE({type:gx(["python","node","binary"]),entry_point:c7(),mcp_config:KQ_}),zQ_=HE({claude_desktop:c7().optional(),platforms:qJ(gx(["darwin","win32","linux"])).optional(),runtimes:HE({python:c7().optional(),node:c7().optional()}).optional()}).passthrough(),YQ_=HE({name:c7(),description:c7().optional()}),$Q_=HE({name:c7(),description:c7().optional(),arguments:qJ(c7()).optional(),text:c7()}),AQ_=HE({type:gx(["string","number","boolean","directory","file"]),title:c7(),description:c7(),required:vW().optional(),default:v96([c7(),zh(),vW(),qJ(c7())]).optional(),multiple:vW().optional(),sensitive:vW().optional(),min:zh().optional(),max:zh().optional()}),nlA=Bx(c7(),v96([c7(),zh(),vW(),qJ(c7())])),M24=HE({$schema:c7().optional(),dxt_version:c7().optional().describe("@deprecated Use manifest_version instead"),manifest_version:c7().optional(),name:c7(),display_name:c7().optional(),version:c7(),description:c7(),long_description:c7().optional(),author:tU_,repository:eU_.optional(),homepage:c7().url().optional(),documentation:c7().url().optional(),support:c7().url().optional(),icon:c7().optional(),screenshots:qJ(c7()).optional(),server:_Q_,tools:qJ(YQ_).optional(),tools_generated:vW().optional(),prompts:qJ($Q_).optional(),prompts_generated:vW().optional(),keywords:qJ(c7()).optional(),license:c7().optional(),compatibility:zQ_.optional(),user_config:Bx(c7(),AQ_).optional()}).refine((q)=>!!(q.dxt_version||q.manifest_version),{message:"Either 'dxt_version' (deprecated) or 'manifest_version' must be provided"}),ilA=HE({status:gx(["signed","unsigned","self-signed"]),publisher:c7().optional(),issuer:c7().optional(),valid_from:c7().optional(),valid_to:c7().optional(),fingerprint:c7().optional()})});import{existsSync as wx1,readFileSync as OQ_,statSync as P24}from"fs";import*as YN from"fs/promises";import*as D24 from"os";import{join as wQ_,resolve as B76}from"path";function Hx1(q){try{let K=B76(q),_=K;if(wx1(K)&&P24(K).isDirectory())_=wQ_(K,"manifest.json");let z=OQ_(_,"utf-8"),Y=JSON.parse(z),$=rn6.safeParse(Y);if($.success)return console.log("Manifest schema validation passes!"),!0;else return console.log(`ERROR: Manifest validation failed:
910`),$.error.issues.forEach((A)=>{let O=A.path.join(".");console.log(` - ${O?`${O}: `:""}${A.message}`)}),!1}catch(K){if(K instanceof Error)if(K.message.includes("ENOENT")){if(console.error(`ERROR: File not found: ${q}`),wx1(B76(q))&&P24(B76(q)).isDirectory())console.error(" (No manifest.json found in directory)")}else if(K.message.includes("JSON"))console.error(`ERROR: Invalid JSON in manifest file: ${K.message}`);else console.error(`ERROR: Error reading manifest: ${K.message}`);else console.error("ERROR: Unknown error occurred");return!1}}async function jQ_(q){let K=await YN.mkdtemp(B76(D24.tmpdir(),"mcpb-clean-")),_=B76(K,"in.mcpb"),z=B76(K,"out");console.log(" -- Cleaning MCPB...");try{await YN.copyFile(q,_),console.log(" -- Unpacking MCPB..."),await Ax1({mcpbPath:_,silent:!0,outputDir:z});let Y=B76(z,"manifest.json"),$=await YN.readFile(Y,"utf-8"),A=JSON.parse($),O=M24.safeParse(A);if(!O.success)throw Error('Unrecoverable manifest issues, please run "mcpb validate"');if(await YN.writeFile(Y,JSON.stringify(O.data,null,2)),$.trim()!==(await YN.readFile(Y,"utf8")).trim())console.log(" -- Update manifest to be valid per MCPB schema");else console.log(" -- Manifest already valid per MCPB schema");let w=B76(z,"node_modules");if(wx1(w)){console.log(" -- node_modules found, deleting development dependencies");let M=new W24.DestroyerOfModules({rootDirectory:z});try{await M.destroy()}catch(X){if(X instanceof Error&&X.message.includes("Failed to locate module"))console.log(" -- Some modules already removed, skipping remaining cleanup");else throw X}console.log(" -- Removed development dependencies from node_modules")}else console.log(" -- No node_modules, not pruning");let j=await YN.stat(q),{packExtension:H}=await Promise.resolve().then(() => (Mx1(),f24));await H({extensionPath:z,outputPath:q,silent:!0});let J=await YN.stat(q);console.log(`
911Clean Complete:`),console.log("Before:",jx1.default(j.size)),console.log("After:",jx1.default(J.size))}finally{await YN.rm(K,{recursive:!0,force:!0})}}var W24,jx1;var Jx1=y(()=>{Ox1();on6();X24();W24=O6(QA4(),1),jx1=O6(lA4(),1)});var f24={};T8(f24,{packExtension:()=>T24});import{createHash as HQ_}from"crypto";import{existsSync as Z24,mkdirSync as JQ_,readFileSync as MQ_,statSync as XQ_,writeFileSync as PQ_}from"fs";import{basename as WQ_,join as G24,relative as DQ_,resolve as Xx1,sep as fQ_}from"path";function pi6(q){if(q<1024)return`${q}B`;else if(q<1048576)return`${(q/1024).toFixed(1)}kB`;else return`${(q/1048576).toFixed(1)}MB`}function ZQ_(q){return q.toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9-_.]/g,"").replace(/-+/g,"-").replace(/^-+|-+$/g,"").substring(0,100)}async function T24({extensionPath:q,outputPath:K,silent:_}){let z=Xx1(q),Y=sv8({silent:_});if(!Z24(z)||!XQ_(z).isDirectory())return Y.error(`ERROR: Directory not found: ${q}`),!1;let $=G24(z,"manifest.json");if(!Z24($))if(Y.log(`No manifest.json found in ${q}`),await zO({message:"Would you like to create a manifest.json file?",default:!0})){if(!await cS1(q))return Y.error("ERROR: Failed to create manifest"),!1}else return Y.error("ERROR: Cannot pack extension without manifest.json"),!1;if(Y.log("Validating manifest..."),!Hx1($))return Y.error("ERROR: Cannot pack extension with invalid manifest"),!1;let A;try{let J=MQ_($,"utf-8"),M=JSON.parse(J);A=rn6.parse(M)}catch(J){if(Y.error("ERROR: Failed to parse manifest.json"),J instanceof Error)Y.error(` ${J.message}`);return!1}let O=A.manifest_version||A.dxt_version;if(O!==zO6)return Y.error(`ERROR: Manifest version mismatch. Expected "${zO6}", found "${O}"`),Y.error(` Please update the manifest_version in your manifest.json to "${zO6}"`),!1;let w=WQ_(z),j=K?Xx1(K):Xx1(`${w}.mcpb`),H=G24(j,"..");JQ_(H,{recursive:!0});try{let J=TC1(z),{files:M,ignoredCount:X}=aT8(z,z,{},J);Y.log(`
912\uD83D\uDCE6 ${A.name}@${A.version}`),Y.log("Archive Contents");let P=Object.entries(M),W=0;P.sort(([S],[R])=>S.localeCompare(R));let D=new Map,f=[];for(let[S,R]of P){let x=DQ_(z,S),I=R.data,B=typeof I==="string"?Buffer.byteLength(I,"utf8"):I.length;W+=B;let p=x.split(fQ_);if(p.length>3){let C=p.slice(0,3).join("/");if(!D.has(C))D.set(C,{files:[],totalSize:0});let g=D.get(C);g.files.push(x),g.totalSize+=B}else f.push({path:x,size:B})}for(let{path:S,size:R}of f)Y.log(`${pi6(R).padStart(8)} ${S}`);for(let[S,{files:R,totalSize:x}]of D)if(R.length===1){let I=R[0],B=x;Y.log(`${pi6(B).padStart(8)} ${I}`)}else Y.log(`${pi6(x).padStart(8)} ${S}/ [and ${R.length} more files]`);let G={},Z=process.platform!=="win32";for(let[S,R]of Object.entries(M))if(Z)G[S]=[R.data,{os:3,attrs:(R.mode&511)<<16}];else G[S]=R.data;let T=WC1(G,{level:9,mtime:new Date});PQ_(j,T);let v=HQ_("sha1").update(T).digest("hex"),E=`${ZQ_(A.name)}-${A.version}.mcpb`;return Y.log(`
913Archive Details`),Y.log(`name: ${A.name}`),Y.log(`version: ${A.version}`),Y.log(`filename: ${E}`),Y.log(`package size: ${pi6(T.length)}`),Y.log(`unpacked size: ${pi6(W)}`),Y.log(`shasum: ${v}`),Y.log(`total files: ${P.length}`),Y.log(`ignored (.mcpbignore) files: ${X}`),Y.log(`

Callers

nothing calls this directly

Calls 12

Ax1Function · 0.85
HFunction · 0.85
safeParseMethod · 0.80
includesMethod · 0.80
logMethod · 0.45
readFileMethod · 0.45
parseMethod · 0.45
trimMethod · 0.45
destroyMethod · 0.45
thenMethod · 0.45
resolveMethod · 0.45
defaultMethod · 0.45

Tested by

no test coverage detected