registry  /  @miomioos/mio-agent  /  0.3.1

@miomioos/mio-agent@0.3.1

⚠ Under review

Mio Agent — background AI worker daemon for MioIsland. Bridges Claude Code sessions to the MioMioOS server.

Static Scan Results

scanned 4d ago · by rust-scanner

Static analysis flagged 15 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
ChildProcessEnvironmentVarsFilesystemNetwork
Supply chain
HighEntropyStringsMinifiedUrlStrings
Manifest
NoLicense
scanned 1 file(s), 309 KB of source, external domains: 127.0.0.1, github.com, mio.wdao.chat, www.apple.com

Source & flagged code

6 flagged · loading source
dist/cli/index.jsView file
1#!/usr/bin/env node L2: import{createRequire as ___cr}from'module';import{fileURLToPath as ___fu}from'url';import{dirname as ___dn}from'path';const require=___cr(import.meta.url);const __filename=___fu(im... L3: var Yu=Object.create;var gs=Object.defineProperty;var Vu=Object.getOwnPropertyDescriptor;var Ku=Object.getOwnPropertyNames;var zu=Object.getPrototypeOf,Xu=Object.prototype.hasOwnPr... L4: `),1;let o=process.env.MIO_AGENT_PROXY_TOKEN_FILE;if(!o)return r.write(JSON.stringify({ok:!1,code:"MISSING_PROXY_TOKEN",message:"MIO_AGENT_PROXY_TOKEN_FILE is not set"})+` ... L98: `)}}async function Nf(n,e,t,r,s,i){switch(n){case"upload":return Mf(e,t,r,s,i);case"view":return Lf(e,t,r,s,i);default:return i.write(JSON.stringify({ok:!1,code:"UNKNOWN_COMMAND",m... L99: `),1}}async function ys(n,e,t,r){let s=nf(n).toLowerCase(),i=oo[s];if(!i){let u=Object.keys(oo).join(", ");return{ok:!1,error:{ok:!1,code:"UNSUPPORTED_FILE_TYPE",message:`Cannot de... L100: `),1;let o=U(n,"--target");if(!o)return s.write(JSON.stringify({ok:!1,code:"MISSING_ARG",message:"--target <#name> is required for attachment upload"})+` ... L120: `),t.avatar!==void 0){let a=Buffer.byteLength(t.avatar,"utf8");e.write(`
Critical
Credential Exfiltration

Source appears to send environment or credential material to an external endpoint.

dist/cli/index.jsView on unpkg · L1
1Trigger-reachable chain: manifest.main -> dist/cli/index.js L1: #!/usr/bin/env node L2: import{createRequire as ___cr}from'module';import{fileURLToPath as ___fu}from'url';import{dirname as ___dn}from'path';const require=___cr(import.meta.url);const __filename=___fu(im... L3: var Yu=Object.create;var gs=Object.defineProperty;var Vu=Object.getOwnPropertyDescriptor;var Ku=Object.getOwnPropertyNames;var zu=Object.getPrototypeOf,Xu=Object.prototype.hasOwnPr... L4: `),1;let o=process.env.MIO_AGENT_PROXY_TOKEN_FILE;if(!o)return r.write(JSON.stringify({ok:!1,code:"MISSING_PROXY_TOKEN",message:"MIO_AGENT_PROXY_TOKEN_FILE is not set"})+` ... L98: `)}}async function Nf(n,e,t,r,s,i){switch(n){case"upload":return Mf(e,t,r,s,i);case"view":return Lf(e,t,r,s,i);default:return i.write(JSON.stringify({ok:!1,code:"UNKNOWN_COMMAND",m... L99: `),1}}async function ys(n,e,t,r){let s=nf(n).toLowerCase(),i=oo[s];if(!i){let u=Object.keys(oo).join(", ");return{ok:!1,error:{ok:!1,code:"UNSUPPORTED_FILE_TYPE",message:`Cannot de... L100: `),1;let o=U(n,"--target");if(!o)return s.write(JSON.stringify({ok:!1,code:"MISSING_ARG",message:"--target <#name> is required for attachment upload"})+` ... L120: `),t.avatar…
Critical
Trigger Reachable Dangerous Capability

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

dist/cli/index.jsView on unpkg · L1
185(and others from agentProxy.ts / the server) L186: `});var po={};Me(po,{runAgentcliCommand:()=>Hf});async function Hf(){return lo(process.argv.slice(3),{stdin:process.stdin,stdout:process.stdout,stderr:process.stderr})}var mo=O(()=... L187: `;for(var f=0;f<a;f+=2){s+=d.WHITE_ALL;for(var g=0;g<a;g++)c[f][g]===o&&c[f+1][g]===o?s+=d.WHITE_ALL:c[f][g]===o&&c[f+1][g]===i?s+=d.WHITE_BLACK:c[f][g]===i&&c[f+1][g]===o?s+=d.BLA...
High
Child Process

Package source references child process execution.

dist/cli/index.jsView on unpkg · L185
185(and others from agentProxy.ts / the server) L186: `});var po={};Me(po,{runAgentcliCommand:()=>Hf});async function Hf(){return lo(process.argv.slice(3),{stdin:process.stdin,stdout:process.stdout,stderr:process.stderr})}var mo=O(()=... L187: `;for(var f=0;f<a;f+=2){s+=d.WHITE_ALL;for(var g=0;g<a;g++)c[f][g]===o&&c[f+1][g]===o?s+=d.WHITE_ALL:c[f][g]===o&&c[f+1][g]===i?s+=d.WHITE_BLACK:c[f][g]===i&&c[f+1][g]===o?s+=d.BLA... ... L197: --help Show this message L198: `)}async function nh(n){let e;try{({values:e}=zf({args:n,options:{server:{type:"string",default:xs},"device-name":{type:"string",default:vn.hostname()},help:{type:"boolean",default... L199: `);let s=e?["-n",String(t),"-F",...r]:["-n",String(t),...r],i=sh("tail",s,{stdio:"inherit"});return await new Promise(o=>{i.on("exit",c=>o(c??0)),i.on("error",c=>{console.error(`Fa... L200: `);return w.substr(0,w.length-2)},this.getRequestHeader=function(w){return typeof w=="string"&&l[w]?l[w]:""},this.send=function(w){if(this.readyState!=this.OPENED)throw new Error("... L201: `).join(`
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/cli/index.jsView on unpkg · L185
185(and others from agentProxy.ts / the server) L186: `});var po={};Me(po,{runAgentcliCommand:()=>Hf});async function Hf(){return lo(process.argv.slice(3),{stdin:process.stdin,stdout:process.stdout,stderr:process.stderr})}var mo=O(()=... L187: `;for(var f=0;f<a;f+=2){s+=d.WHITE_ALL;for(var g=0;g<a;g++)c[f][g]===o&&c[f+1][g]===o?s+=d.WHITE_ALL:c[f][g]===o&&c[f+1][g]===i?s+=d.WHITE_BLACK:c[f][g]===i&&c[f+1][g]===o?s+=d.BLA... ... L197: --help Show this message L198: `)}async function nh(n){let e;try{({values:e}=zf({args:n,options:{server:{type:"string",default:xs},"device-name":{type:"string",default:vn.hostname()},help:{type:"boolean",default... L199: `);let s=e?["-n",String(t),"-F",...r]:["-n",String(t),...r],i=sh("tail",s,{stdio:"inherit"});return await new Promise(o=>{i.on("exit",c=>o(c??0)),i.on("error",c=>{console.error(`Fa...
High
Command Output Exfiltration

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

dist/cli/index.jsView on unpkg · L185
1#!/usr/bin/env node L2: import{createRequire as ___cr}from'module';import{fileURLToPath as ___fu}from'url';import{dirname as ___dn}from'path';const require=___cr(import.meta.url);const __filename=___fu(im... L3: var Yu=Object.create;var gs=Object.defineProperty;var Vu=Object.getOwnPropertyDescriptor;var Ku=Object.getOwnPropertyNames;var zu=Object.getPrototypeOf,Xu=Object.prototype.hasOwnPr... L4: `),1;let o=process.env.MIO_AGENT_PROXY_TOKEN_FILE;if(!o)return r.write(JSON.stringify({ok:!1,code:"MISSING_PROXY_TOKEN",message:"MIO_AGENT_PROXY_TOKEN_FILE is not set"})+` ... L98: `)}}async function Nf(n,e,t,r,s,i){switch(n){case"upload":return Mf(e,t,r,s,i);case"view":return Lf(e,t,r,s,i);default:return i.write(JSON.stringify({ok:!1,code:"UNKNOWN_COMMAND",m... L99: `),1}}async function ys(n,e,t,r){let s=nf(n).toLowerCase(),i=oo[s];if(!i){let u=Object.keys(oo).join(", ");return{ok:!1,error:{ok:!1,code:"UNSUPPORTED_FILE_TYPE",message:`Cannot de... L100: `),1;let o=U(n,"--target");if(!o)return s.write(JSON.stringify({ok:!1,code:"MISSING_ARG",message:"--target <#name> is required for attachment upload"})+` ... L120: `),t.avatar!==void 0){let a=Buffer.byteLength(t.avatar,"utf8");e.write(`
Medium
Install Persistence

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

dist/cli/index.jsView on unpkg · L1

Findings

2 Critical3 High4 Medium6 Low
CriticalCredential Exfiltrationdist/cli/index.js
CriticalTrigger Reachable Dangerous Capabilitydist/cli/index.js
HighChild Processdist/cli/index.js
HighSame File Env Network Executiondist/cli/index.js
HighCommand Output Exfiltrationdist/cli/index.js
MediumNetwork
MediumEnvironment Vars
MediumInstall Persistencedist/cli/index.js
MediumStructural Risk Force Deep Review
LowNon Install Lifecycle Scripts
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings
LowNo License