registry  /  qlogicagent  /  2.17.8

qlogicagent@2.17.8

XiaozhiClaw Agent CLI — subprocess architecture (JSON-RPC over stdio)

Static Scan Results

scanned 2d ago · by rust-scanner

Static analysis flagged 19 finding(s) at 72.0% confidence. This version is warn-only unless an AI or security-team review confirms malicious behavior.

Static reason
One or more suspicious static signals were detected.

Decision evidence

public snapshot
Behavioral surface
Source
ChildProcessDynamicRequireEnvironmentVarsFilesystemNativeBindingsNetworkShell
Supply chain
HighEntropyStringsMinifiedObfuscatedUrlStrings
Manifest
NoLicense
scanned 10 file(s), 3.92 MB of source, external domains: cursor.com, docs.github.com, docs.qoder.com, github.com, json-schema.org, kiro.dev, opencode.ai, pypi.tuna.tsinghua.edu.cn, registry.npmmirror.com, www.pinecone.io, xiaozhi.qlogicagent.com

Source & flagged code

10 flagged · loading source
dist/index.jsView file
618`)}function Pre(){return bb(new ms(iS),new ei(20,Cs),new ka(Cs))}function nO(t,e){let n=kb(new ms(iS),new ei(20,Cs),new wl({protectedHeadExchanges:1,protectedTailMessages:8,summari... L619: `),error:P.details?.error}}catch(S){return{result:"",error:S instanceof Error?S.message:String(S)}}}},createAgentRunner:Po,tools:this.toolCatalog.getToolManifest(),taskStore:this.t... L620: `)}var ja=t=>(e,n,r,o)=>{let i=r?{...r,async:!1}:{async:!1},s=e._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw new vr;if(s.issues.length){let a=new(o?.Err??t)(s.issu...
High
Child Process

Package source references child process execution.

dist/index.jsView on unpkg · L618
417L418: ${f}`}))}if(c.length===0)return t;let d=[...t],p=-1;for(let m=0;m<d.length;m++)d[m].role==="system"&&(p=m);return d.splice(p+1,0,...c),d}function xb(t,e,n=wb){if(e.size===0)return{... L419: `);function oD(t){Tk.lastIndex=0;let e=null;for(let r=Tk.exec(t);r;r=Tk.exec(t))e=r;if(!e)return null;let n={start:e.index,end:e.index+e[0].length};try{let r=JSON.parse(e[1]);if(!r...
High
Shell

Package source references shell execution.

dist/index.jsView on unpkg · L417
417L418: ${f}`}))}if(c.length===0)return t;let d=[...t],p=-1;for(let m=0;m<d.length;m++)d[m].role==="system"&&(p=m);return d.splice(p+1,0,...c),d}function xb(t,e,n=wb){if(e.size===0)return{... L419: `);function oD(t){Tk.lastIndex=0;let e=null;for(let r=Tk.exec(t);r;r=Tk.exec(t))e=r;if(!e)return null;let n={start:e.index,end:e.index+e[0].length};try{let r=JSON.parse(e[1]);if(!r...
High
Same File Env Network Execution

A single source file combines environment access, network access, and code or shell execution; review context before blocking.

dist/index.jsView on unpkg · L417
680L681: `)}f.write("payload.value = newResult;"),f.write("return payload;");let v=f.compile();return(k,S)=>v(m,k,S)},i,s=Ds,a=!Ms.jitless,l=a&&fS.value,d=e.catchall,p;t._zod.parse=(m,f)=>{... L682: L683: Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let s of t.seen.entries()){let a=s[1];if(e===s[0]){i(s);continue}if(t.external){let l=t.exter... L684: `);a=m.pop()||"";for(let f of m){let g=f.trim();if(g)try{let h=JSON.parse(g);s.enqueue(h)}catch(h){console.error("Failed to parse JSON message:",g,h)}}}let l=a.trim();if(l)try{let ... L685: `,c=t.getWriter();try{await c.write(n.encode(a))}finally{c.releaseLock()}}});return{readable:o,writable:i}}function Ai(t){return t??{}}function dF(t){let e=Promise.reject(t);return... L686: ${t?.data?.details??""}`;return/\b(auth(?:entication|orization)?|login|log in|api key|apikey|token|credential|provider|configured|configuration|setup|sign in)\b/i.test(e)}function ... L687: `),n=e.match(/^---\n[\s\S]*?^version:\s*(\S+)/m),r=e.match(/^---\n[\s\S]*?^description:\s*(.+)/m),o=e.match(/^---\n[\s\S]*?^category:\s*(.+)/m),i=e.match(/^---\n[\s\S]*?^author:\s*...
High
Command Output Exfiltration

Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.

dist/index.jsView on unpkg · L680
1var $X=Object.defineProperty;var wM=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u"... L2: `),l=null;for(let p=0;p<Math.min(c.length,er.HEADER_LINES);p++){let m=c[p].trim();if(!(!m||m.startsWith("#")||m.startsWith("---"))){l=m.slice(0,150);break}}let d=Pee(o);return{file... ... L11: L12: `)}var er,O0=je(()=>{"use strict";er={MAX_SCAN_FILES:100,MAX_SELECTED:5,MAX_FILE_BYTES:4096,MAX_TOTAL_BYTES:20*1024,MIN_SCORE:.2,HEADER_LINES:10,RECENCY_DAYS:7,RECENCY_BOOST:.15}})... L13: ... L29: Respond ONLY with a JSON array (or empty array [] if nothing worth extracting): L30: [{"text": "...", "category": "personal_fact|preference|event|lesson", "importance": 0.5-0.9, "eventDate": "YYYY-MM-DD or null"}]`});function tr(){return{surfacedPaths:new Set,sessi... L31: CREATE TABLE IF NOT EXISTS memories ( ... L187: LIMIT ? L188: `).all(o,n,r).map(s=>({id:s.id,text:s.text,score:Math.min(1,s.fts_score*.1+s.importance*.5),category:s.category,importance:s.importance,metadata:{tags:JSON.parse(s.tags||"[]"),crea... L189: SELECT id, text, category, importance, tags, created_at, access_count, embedding ...
High
Obfuscated Payload Loader

Source contains an obfuscator-style string-array loader that reconstructs and executes hidden code.

dist/index.jsView on unpkg · L1
1var $X=Object.defineProperty;var wM=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u"... L2: `),l=null;for(let p=0;p<Math.min(c.length,er.HEADER_LINES);p++){let m=c[p].trim();if(!(!m||m.startsWith("#")||m.startsWith("---"))){l=m.slice(0,150);break}}let d=Pee(o);return{file... ... L29: Respond ONLY with a JSON array (or empty array [] if nothing worth extracting): L30: [{"text": "...", "category": "personal_fact|preference|event|lesson", "importance": 0.5-0.9, "eventDate": "YYYY-MM-DD or null"}]`});function tr(){return{surfacedPaths:new Set,sessi... L31: CREATE TABLE IF NOT EXISTS memories ( ... L417: L418: ${f}`}))}if(c.length===0)return t;let d=[...t],p=-1;for(let m=0;m<d.length;m++)d[m].role==="system"&&(p=m);return d.splice(p+1,0,...c),d}function xb(t,e,n=wb){if(e.size===0)return{... L419: `);function oD(t){Tk.lastIndex=0;let e=null;for(let r=Tk.exec(t);r;r=Tk.exec(t))e=r;if(!e)return null;let n={start:e.index,end:e.index+e[0].length};try{let r=JSON.parse(e[1]);if(!r... ... L618: `)}function Pre(){return bb(new ms(iS),new ei(20,Cs),new ka(Cs))}function nO(t,e){let n=kb(new ms(iS),
High
Remote Agent Bridge

Source exposes local file and command tools to a remote model endpoint.

dist/index.jsView on unpkg · L1
1Cross-file remote execution chain: dist/index.js spawns dist/cli.js; helper contains network access plus dynamic code execution. L1: var $X=Object.defineProperty;var wM=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u"... L2: `),l=null;for(let p=0;p<Math.min(c.length,er.HEADER_LINES);p++){let m=c[p].trim();if(!(!m||m.startsWith("#")||m.startsWith("---"))){l=m.slice(0,150);break}}let d=Pee(o);return{file... ... L11: L12: `)}var er,O0=je(()=>{"use strict";er={MAX_SCAN_FILES:100,MAX_SELECTED:5,MAX_FILE_BYTES:4096,MAX_TOTAL_BYTES:20*1024,MIN_SCORE:.2,HEADER_LINES:10,RECENCY_DAYS:7,RECENCY_BOOST:.15}})... L13: ... L29: Respond ONLY with a JSON array (or empty array [] if nothing worth extracting): L30: [{"text": "...", "category": "personal_fact|preference|event|lesson", "importance": 0.5-0.9, "eventDate": "YYYY-MM-DD or null"}]`});function tr(){return{surfacedPaths:new Set,sessi... L31: CREATE TABLE IF NOT EXISTS memories ( ... L187: LIMIT ? L188: `).all(o,n,r).map(s=>({id:s.id,text:s.text,score:Math.min(1,s.fts_score*.1+s.importance*.5),category:s.category,importance:s.importance,metadata…
High
Cross File Remote Execution Context

Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.

dist/index.jsView on unpkg · L1
599L600: Return a brief summary of what you consolidated, updated, or pruned. If nothing changed (memories are already tight), say so.`}var DN=0;async function qne(t,e={}){let n={...NN,...e... L601: `+S.join(`
Medium
Dynamic Require

Package source references dynamic require/import behavior.

dist/index.jsView on unpkg · L599
1var $X=Object.defineProperty;var wM=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u"... L2: `),l=null;for(let p=0;p<Math.min(c.length,er.HEADER_LINES);p++){let m=c[p].trim();if(!(!m||m.startsWith("#")||m.startsWith("---"))){l=m.slice(0,150);break}}let d=Pee(o);return{file... ... L11: L12: `)}var er,O0=je(()=>{"use strict";er={MAX_SCAN_FILES:100,MAX_SELECTED:5,MAX_FILE_BYTES:4096,MAX_TOTAL_BYTES:20*1024,MIN_SCORE:.2,HEADER_LINES:10,RECENCY_DAYS:7,RECENCY_BOOST:.15}})... L13: ... L29: Respond ONLY with a JSON array (or empty array [] if nothing worth extracting): L30: [{"text": "...", "category": "personal_fact|preference|event|lesson", "importance": 0.5-0.9, "eventDate": "YYYY-MM-DD or null"}]`});function tr(){return{surfacedPaths:new Set,sessi... L31: CREATE TABLE IF NOT EXISTS memories ( ... L187: LIMIT ? L188: `).all(o,n,r).map(s=>({id:s.id,text:s.text,score:Math.min(1,s.fts_score*.1+s.importance*.5),category:s.category,importance:s.importance,metadata:{tags:JSON.parse(s.tags||"[]"),crea... L189: SELECT id, text, category, importance, tags, created_at, access_count, embedding ...
Medium
Install Persistence

Source writes installer persistence such as shell profile or service configuration.

dist/index.jsView on unpkg · L1
dist/qlogicagent.cmdView file
path = dist/qlogicagent.cmd kind = build_helper sizeBytes = 34 magicHex = [redacted]
Medium
Ships Build Helper

Package ships non-JavaScript build or shell helper files.

dist/qlogicagent.cmdView on unpkg

Findings

7 High6 Medium6 Low
HighChild Processdist/index.js
HighShelldist/index.js
HighSame File Env Network Executiondist/index.js
HighCommand Output Exfiltrationdist/index.js
HighObfuscated Payload Loaderdist/index.js
HighRemote Agent Bridgedist/index.js
HighCross File Remote Execution Contextdist/index.js
MediumDynamic Requiredist/index.js
MediumNetwork
MediumEnvironment Vars
MediumInstall Persistencedist/index.js
MediumShips Build Helperdist/qlogicagent.cmd
MediumStructural Risk Force Deep Review
LowScripts Present
LowFilesystem
LowObfuscated
LowHigh Entropy Strings
LowUrl Strings
LowNo License