registry  /  @kodax-ai/kodax  /  0.7.59

@kodax-ai/kodax@0.7.59

⚠ Under review

KodaX lightweight coding agent - TypeScript implementation with 15 built-in LLM provider aliases, published as a Node-free single-file CLI and SDK

Static Scan Results

scanned 8d ago · by rust-scanner

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

Static reason
High-risk behavior combination matched malicious policy.

Decision evidence

public snapshot
Behavioral surface
Source
ChildProcessCryptoDynamicRequireEnvironmentVarsEvalFilesystemNetwork
Supply chain
HighEntropyStringsMinifiedUrlStrings
ManifestNo manifest risk signals triggered.
scanned 55 file(s), 2.83 MB of source, external domains: 127.0.0.1, api.example.com, evil.com, github.com, www.bing.com
Oversized source lightweight scan
dist/kodax_cli.js2.17 MB file, sampled 256 KB
FilesystemChildProcessEnvironmentVarsDynamicRequireHighEntropyStringsMinified

Source & flagged code

9 flagged · loading source
dist/semantic-worker.jsView file
2var Yn=Object.defineProperty;var a=(O,e)=>Yn(O,"name",{value:e,configurable:!0});var Z=(O,e)=>()=>(O&&(e=O(O=0)),e);var Vn=(O,e)=>{for(var t in e)Yn(O,t,{get:e[t],enumerable:!0})};... L3: `,"utf8"),await is(n,O)}catch(i){throw await be.rm(n,{force:!0}).catch(()=>{}),i}await rs(t,wt.basename(O)).catch(()=>{})}async function rs(O,e){let t=`${e}.`,n=Date.now(),i=await ... L4: `)}let o=0,l=!1,Q=r;for(let c=r;c<O.length;c+=1){let d=O[c]??"";if(o+=oe(d),d.includes("{")&&(l=!0),Q=c,l&&o<=0&&c>r||!l&&c+1>=s)break}let h=l?Q+1:s;return O.slice(r,h).join(`
High
Child Process

Package source references child process execution.

dist/semantic-worker.jsView on unpkg · L2
dist/chunks/chunk-D7RENPQQ.jsView file
119`)}i(ro,"buildSelfKnowledgeRoutingRule");var em=ro();var Hn=["EXECUTION GUIDANCE (match your approach to the kind of work \u2014 judge which fits):","- Respond in the primary natur... L120: `);var $n="[Tool Construction Mode]\nYou may build a new tool at runtime when an existing builtin or extension does not solve the user's task and a thin reusable handler would. Wal... L121: `),"",'Dispatch via dispatch_child_task(subagent_type="<name>").'].join(`
High
Eval

Package source references dynamic code evaluation.

dist/chunks/chunk-D7RENPQQ.jsView on unpkg · L119
dist/chunks/chunk-Z3ZXV3DZ.jsView file
11`)}a(_t,"buildInvestigatorPrompt");function qt(e){let t=Math.max(1,(e.maxAgents??8)-1);return(e.targets&&e.targets.length>0?e.targets:It).slice(0,t).map((o,i)=>({name:`investigate-... L12: ${s.text}`),rubric:t.rubric??$t}))).text,findings:o,degraded:i}}a(Bt,"runParallelInvestigation");var qe={meta:{name:"parallel-investigation",description:"Fan out read-only investig... L13: `,"utf8"),{name:t,path:r,source:"project",execution:"capability-generated"}}a(Zt,"saveGeneratedWorkflow");async function Ve(e,t){await ie(e,`${JSON.stringify(t,null,2)}
Medium
Dynamic Require

Package source references dynamic require/import behavior.

dist/chunks/chunk-Z3ZXV3DZ.jsView on unpkg · L11
dist/chunks/chunk-5GPJ6MB5.jsView file
211`;)d+=1;continue}if(l==="/"&&f==="*"){for(d+=2;d<e.length&&!(e[d]==="*"&&e[d+1]==="/");)d+=1;d+=2;continue}break}if(e[d]==="]"||e[d]==="}"){r+=1;continue}}t+=c,r+=1}return t}o(Hf,"... L212: \u2026[truncated]\u2026`;function Kf(e,t={}){let r=t.maxToolResultBytes??2048,n=t.maxTranscriptBytes??8192,i=[];for(let s of e){let c=Xf(s,r);c!==null&&i.push(c)}return Yf(i,n)}o(K... L213: # Claude Code Code Bash command prefix detection
Critical
Same File Env Network Execution

A single source file combines environment access, network access, and code or shell execution with blocking evidence.

dist/chunks/chunk-5GPJ6MB5.jsView on unpkg · L211
Trigger-reachable chain: manifest.main -> dist/index.js -> dist/chunks/chunk-5GPJ6MB5.js Reachable file contains a blocking source-risk pattern.
Critical
Trigger Reachable Dangerous Capability

A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.

dist/chunks/chunk-5GPJ6MB5.jsView on unpkg
dist/chunks/chunk-PRIBJN5E.jsView file
20L21: `+ll({lineCount:r,byteCount:o,wasLineTruncated:i,wasByteTruncated:a}),lineCount:r,byteCount:o,wasLineTruncated:i,wasByteTruncated:a}}s(ul,"truncateEntrypointContent");function ll(e... L22: `,"utf8"),o}s($l,"createSnapshot");async function Ll(e,t,n,r){let o=Qr(t);await Jt(o,{recursive:!0});let i=await Jr(o);if(!Ii(e,i))throw new Error("skill proposal parent directory ... ... L25: `),{updated:!0,record:o}}s(Ki,"updateSkillTrustLedger");import{readdir as Rf,readFile as Of,stat as $f}from"fs/promises";import{join as Lf}from"path";var Nf=1024*1024,Ff=new Set(["... L26: `).toLowerCase()}s(Xf,"buildCatalogSearchText");function ao(e,t,n={}){let r=t.trim().toLowerCase(),o=Math.max(1,Math.floor(n.limit??10));return e.filter(i=>!n.kind||i.kind===n.kind... L27: \r ... L29: \r L30: `);if(m<0)return;let h=n.subarray(0,m).toString("utf8").match(/Content-Length:\s*(\d+)/i);if(!h?.[1]){n=Buffer.alloc(0),r.onError(new Error("Malformed Content-Length header from MC... L31: `,"utf8"):t.stdin.write(Yf(l),"utf8")},switchFraming(l){o=l,n=Buffer.alloc(0)},async close(){if(n=Buffer.alloc(0),t){let l=t;t=void 0,r=void 0,d.add(l),l.stdout.removeAllListeners(... ... L35: `:"")+u.map(p=>`data:${p} L
High
Command Output Exfiltration

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

dist/chunks/chunk-PRIBJN5E.jsView on unpkg · L20
dist/chunks/chunk-Z23LK3IV.jsView file
1Cross-file remote execution chain: dist/chunks/chunk-Z23LK3IV.js spawns dist/chunks/chunk-SVEJFERZ.js; helper contains network access plus dynamic code execution. L1: // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024. L2: import{$ as cc,A as RS,B as ps,Ba as rm,C as Eu,Ca as Du,D as ES,Da as XS,E as ic,Ea as qS,F as Xp,G as AS,H as qp,I as ni,J as Jp,K as sc,L as Qp,M as Zp,N as _S,O as LS,P as ms,Q... L3: `).length,i={width:n,height:r};return lw.set(e,i),i},"measureText"),pm=vE;import kE from"wrap-ansi";import RE from"cli-truncate";var uw={},EE=o((e,t,n)=>{let r=e+String(t)+String(n... ... L12: `).repeat(N);g&&(O=qu.dim(O));let G=(tr(a.right,f,"foreground")+` L13: `).repeat(N);S&&(G=qu.dim(G));let Y=b?tr((T?a.bottomLeft:"")+a.bottom.repeat(A)+(v?a.bottomRight:""),l,"foreground"):void 0;b&&m&&(Y=qu.dim(Y));let re=w?1:0;D&&r.write(e,t,D,{trans... L14: `.repeat(i)+oM(t,r)}return t},"applyPaddingToText"),Qu=o((e,t={})=>{if(t.sk[redacted]&&e.internal_static||e.yogaNode?.getDisplay()===xo.DISPLAY_NONE)return"";let n="";if(e.no... ... L20: `:"",frame:void 0}}let r=new Es({width:e.yogaNode.getComputedWidth(),height:e.yogaNode.getComputedHeight()});Ew(),Tm(e,r,{…
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/chunks/chunk-Z23LK3IV.jsView on unpkg · L1
dist/kodax_cli.jsView file
path = dist/kodax_cli.js kind = oversized_source_file sizeBytes = 2274821 magicHex = [redacted]
High
Oversized Source File

Package contains source files above the static scanner size ceiling.

dist/kodax_cli.jsView on unpkg
path = dist/kodax_cli.js kind = oversized_cli_entrypoint sizeBytes = 2274821 magicHex = [redacted]
Medium
Oversized Cli Entrypoint

Package contains an oversized executable-looking CLI entrypoint.

dist/kodax_cli.jsView on unpkg

Findings

2 Critical5 High5 Medium4 Low
CriticalSame File Env Network Executiondist/chunks/chunk-5GPJ6MB5.js
CriticalTrigger Reachable Dangerous Capabilitydist/chunks/chunk-5GPJ6MB5.js
HighChild Processdist/semantic-worker.js
HighEvaldist/chunks/chunk-D7RENPQQ.js
HighCommand Output Exfiltrationdist/chunks/chunk-PRIBJN5E.js
HighCross File Remote Execution Contextdist/chunks/chunk-Z23LK3IV.js
HighOversized Source Filedist/kodax_cli.js
MediumDynamic Requiredist/chunks/chunk-Z3ZXV3DZ.js
MediumNetwork
MediumEnvironment Vars
MediumOversized Cli Entrypointdist/kodax_cli.js
MediumStructural Risk Force Deep Review
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings