// offending code· 2 files flaggedpatterns: 3
--- package/package.json (excerpt) ---
{
"name": "@jonusnattapong/claudecode",
"version": "2.1.178",
"description": "Official Claude Code CLI — AI-powered coding assistant",
"main": "./dist/main.js",
"type": "module",
"bin": {
"claudevil": "bin/claudevil.cjs",
"claudecode": "bin/claudevil.cjs"
},
"files": [
"bin/",
"dist/",
"docs/",
"README.md",
"LICENSE.md"
],
"repository": {
"type": "git",
"url": "git+https://github.com/JonusNattapong/claudecode.git"
},
"bugs": {
"url": "https://github.com/JonusNattapong/claudecode/issues"
},
"homepage": "https://github.com/JonusNattapong/claudecode#readme",
"scripts": {
"dev": "bun --watch run --define.TRANSCRIPT_CLASSIFIER=true --define.CHICAGO_MCP=true --define.VOICE_MODE=true src/main.tsx",
"start": "bun run --define.VOICE_MODE=true src/main.tsx",
"build": "NODE_ENV=production bun build --production --define.TRANSCRIPT_CLASSIFIER=true --define.CHICAGO_MCP=true --define.VOICE_MODE=true src/main.tsx --outdir ./dist --target bun --external electron --external 'chromium-bidi*' --external '@ant/claude-for-chrome-mcp' --external '@anthropic-ai/bedrock-sdk' --external '@anthropic-ai/foundry-sdk' --external '@anthropic-ai/vertex-sdk' --external '@anthropic-ai/mcpb' --external '@aws-sdk/client-bedrock-runtime' --external 'google-auth-library' --external 'sharp' --external 'asciichart' --external 'audio-capture-napi' --external 'modifiers-napi' --external '@xenova/transformers' --external 'onnxruntime-no
--- package/bin/claudevil.cjs (excerpt) ---
#!/usr/bin/env node
const { spawn, spawnSync } = require('child_process');
const { existsSync } = require('fs');
const path = require('path');
function resolveWindowsBunShim(candidate) {
const candidateDir = path.dirname(candidate);
const npmBunExe = path.join(candidateDir, 'node_modules', 'bun', 'bin', 'bun.exe');
if (existsSync(npmBunExe)) {
return npmBunExe;
}
return null;
}
function resolveBunCommand() {
const whichCommand = process.platform === 'win32' ? 'where' : 'which';
const result = spawnSync(whichCommand, ['bun'], {
encoding: 'utf8',
stdio: ['ignore', 'pipe', 'ignore'],
shell: false,
});
if (result.status !== 0 || !result.stdout) {
return null;
}
const candidates = result.stdout
.split(/\r?\n/)
.map(line => line.trim())
.filter(Boolean);
if (process.platform === 'win32') {
const exeCandidate = candidates.find(candidate => candidate.toLowerCase().endsWith('.exe'));
if (exeCandidate) {
return exeCandidate;
}
for (const candidate of candidates) {
const shimTarget = resolveWindowsBunShim(candidate);
if (shimTarget) {
return shimTarget;
}
}
return candidates.find(candidate => candidate.toLowerCase().endsWith('.cmd')) || candidates[0];
}
return candidates[0];
}
function printBunInstallHelp() {
const installCommand =
process.platform === 'win32'
? 'powershell -c "irm bun.sh/install.ps1 | iex"'
: 'curl -fsSL https://bun.sh/install
--- bundled output (OSV-MAL flagged — LLM scope expansion) ---
--- dist/main.js (bundled) ---
// @bun
var ow3=Object.create;var{getPrototypeOf:rw3,defineProperty:Pf6,getOwnPropertyNames:iQ4,getOwnPropertyDescriptor:sw3}=Object,nQ4=Object.prototype.hasOwnProperty;function aQ4($){return this[$]}var tw3,ew3,e=($,K,Y)=>{var J=$!=null&&typeof $==="object";if(J){var q=K?tw3??=new WeakMap:ew3??=new WeakMap,X=q.get($);if(X)return X}Y=$!=null?ow3(rw3($)):{};let z=K||!$||!$.__esModule?Pf6(Y,"default",{value:$,enumerable:!0}):Y;for(let A of iQ4($))if(!nQ4.call(z,A))Pf6(z,A,{get:aQ4.bind($,A),enumerable:!0});if(J)q.set($,z);return z},A3=($)=>{var K=(lQ4??=new WeakMap).get($),Y;if(K)return K;if(K=Pf6({},"__esModule",{value:!0}),$&&typeof $==="object"||typeof $==="function"){for(var J of iQ4($))if(!nQ4.call(K,J))Pf6(K,J,{get:aQ4.bind($,J),enumerable:!(Y=sw3($,J))||Y.enumerable})}return lQ4.set($,K),K},lQ4,u=($,K)=>()=>(K||$((K={exports:{}}).exports,K),K.exports);var $Q3=($)=>$;function KQ3($,K){this[$]=$Q3.bind(null,K)}var f8=($,K)=>{for(var Y in K)Pf6($,Y,{get:K[Y],enumerable:!0,configurable:!0,set:KQ3.bind(K,Y)})};var E=($,K)=>()=>($&&(K=$($=0)),K);var LK8=($)=>Promise.all($),P8=import.meta.require,pY=($,K,Y)=>{if(K!=null){if(typeof K!=="object"&&typeof K!=="function")throw TypeError('Object expected to be assigned to "using" declaration');let J;if(Y)J=K[Symbol.asyncDispose];if(J===void 0)J=K[Symbol.dispose];if(typeof J!=="function")throw TypeError("Object not disposable");$.push([Y,J,K])}else if(Y)$.push([Y]);return K},cY=($,K,Y)=>{let J=(X)=>K=Y?new SuppressedError(X,K,"An error was suppressed during disposal"):(Y=!0,X),q=(X)=>{while(X=$.pop())try{var z=X[1]&&X[1].call(X[2]);if(X[0])return Promise.resolve(z).then(q,(A)=>(J(A),q()))}catch(A){J(A)}if(Y)throw K};return q()};function I5($){}function EK8(){}import{homedir as YQ3,userInfo as JQ3}from"os";import{join as qQ3}from"path";function tQ4(){let $="";try{$=JQ3().username}catch{}let K=[];if($)K.push({path:`/Library/Managed Preferences/${$}/${Lt8}.plist`,label:"per-user managed preferences"});if(K.push({path:`/Library/